PeriPeri

From W3C Wiki


PeriPeri is a prototype SemanticWiki, an attempt to create a more natural approach to the problem than creating vastly complicated edit forms or editing XML.

PeriPeri is a spike of the MeatBall:FacetWiki project.

The interface

To start with, meta-data is added to the top of a page like an e-mail header. All the standard DublinCore elements are accepted, with abstract and subject being currently the most commonly-used. An example, taken from the page PeriPeri:DublinCore:


 Abstract: A small set of widely applicable meta-data
 Subject: PeriMechanics
 Subject: PeriPeriBasics
 Is-Part-Of: PeriPeri:RdfForWikis
 Requires: MetadataSyntax


The PeriPeri engine will display this nicely in HTML, but it will also automatically provide an RDF/XML feed for it. (I plan to add TriX support.)

Implications are also provided. The above header will, for example, cause the Dublin'Core page to be listed, along with its abstract, on the Rdf'For'Wikis page under Has Part'.

The internals

Internally, PeriPeri stores all its pages in individual plain-text files. For performance, it caches RDF in a MySQL database, and this is where all implications are stored.

To handle the ever-changing pages of a Wiki, PeriPeri's RDF engine has the (I believe) unique feature of a fully-functional garbage collector, ensuring implications are always correct.