File: README

package info (click to toggle)
samizdat 0.6.1-3lenny1
  • links: PTS
  • area: main
  • in suites: lenny
  • size: 1,208 kB
  • ctags: 962
  • sloc: ruby: 6,685; xml: 636; sql: 478; sh: 131; makefile: 62
file content (131 lines) | stat: -rw-r--r-- 4,616 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
Samizdat: Co-op Engine
======================

Mission Statement
-----------------

Samizdat is a generic RDF-based engine for building collaboration and
open publishing web sites. Samizdat provides users with means to
cooperate and coordinate on all kinds of activities, including media
activism, resource sharing, education and research, advocacy, and so on.
Samizdat intends to promote values of freedom, openness, equality, and
cooperation.

Samizdat users can publish, view, comment, edit, and aggregate text and
multimedia resources, vote on site structure and resource
classifications, filter resources by flexible sets of criteria (see
Features below, and Design Goals document). 

Samizdat builds its underlying data model on RDF (Resource Description
Framework), and defines a schema of resource classes and properties for
core concepts of a Samizdat site: member, message, thread, focus,
proposition, vote, version, part, and so on (see Concepts document).
Open nature of RDF allows to add new metadata and new uses of site
resources without effort, and to transparently interoperate with diverse
set of applications supporting this standard.

Samizdat project was inspired by Matthew Arnison's Open Publishing
initiative and Active engine used by the IndyMedia.org project, and by
rusty's Scoop engine used by Kuro5hin.org and other sites (see
References document). Unlike other open editing systems, it uses RDF
model from the ground up and targets other domains beyond publishing,
such as cooperation, education, and resource sharing.

Samizdat library includes four stand-alone modules that can be used
outside the Samizdat engine: Cache (thread-safe time-limited object
cache with flexible replacement policy), Storage (RDF storage over a
relational database), Sanitize (whitelist XSS filter based on HTMLTidy
and REXML), and Antispam (simple wiki spam filter).

Samizdat is free software and is built using free software, such as Ruby
programming language and PostgreSQL relational database management
system. All Samizdat source code and documentation can be redistributed
and/or modified under the terms of the GNU General Public License as
published by Free Software Foundation; either version 2 of the license,
or (at your option) any later version.


Features
--------

Open Publishing
- open publishing wire
- threaded comments
- multimedia upload
- format messages as text, verbatim plain text, HTML, and Textile
- integrated message translations
- short description linked from a separate message

Open Editing
- vote on site structure
- vote on dynamic front page
- any message can be voted to become a focus
- moderation interface
- configurable access control to publishing, voting, and moderation

Wiki
- publish new versions
- author-only or open-for-all editing
- history of changes with colored difference tables

Blogging and Syndication
- export of RSS 1.0 feeds for front page, focuses, and Squish RDF queries
- import of RSS feeds into the front page
- personal blog space (in progress)

Semantic Web
- site structure follows RDF model
- search with RDF queries, publish queries as messages
- Dublin Core metadata
- built-in relational storage for RDF

Security
- all user input is tainted and HTML-sanitized
- CSRF protection
- wiki spam filter
- per-resource moderation logs
- moderation request tracker

Implementation
- Ruby, PostgreSQL (or SQLite3, MySQL), Apache (or Lighttpd)
- full Unicode (UTF-8)
- XHTML 1.0 markup with switchable CSS themes
- GetText l10n framework (UI available in 11 languages)
- in-memory object cache, database cache of rendered and sanitized messages
- built-in MVC mini-framework


More Information
----------------

Documentation

   install.txt:         Installation
   design-goals.txt:    Design Goals
   concepts.txt:        Concepts
   rdf-impl-report.txt: RDF Implementation Report
   rdf-storage.txt:     RDF Storage
   storage-impl.txt:    Storage Implementation
   translations.txt:    Translations
   references.txt:      References

Papers

   collreif.tex: Model for Collaborative Decision Making Based on RDF
                 Reification, April 2004
   rel-rdf.tex:  Accessing Relational Data with RDF Queries and
                 Assertions, April 2004

Presentations

   oscom3_samizdat.xml: OSCOM3, May 2003, Cambridge, MA
   euruko2003_samizdat.xml: EuRuKo 2003, June 2003, Karlsruhe, DE

Links

   http://samizdat.nongnu.org/
   http://savannah.nongnu.org/projects/samizdat/
   http://raa.ruby-lang.org/list.rhtml?name=samizdat
   http://freshmeat.net/projects/samizdat/
   http://docs.indymedia.org/view/Devel/SamizdatEngine