Add SIOC RDF export functionality
For general information see SIOC.
Semantically-Interlinked Online Communities (SIOC) initiative defines a vocabulary/ontology for expressing information about social media sites in a machine-readable format (RDF). While FOAF allows to describe information about people and their social networks, SIOC describes structure of social media sites and the user-generated content on them.
A list of existing applications that generate or use SIOC data:
What RDF is good for is its flexibility: once information is described in RDF, you can easily enrich this information with additional annotations or define relations between information described on different pages.
see also: When should I use RDF and when should I use XML? (Semantic Web FAQ)
Someone could come up with advanced scenarios for adding SIOC and RDF functionality to MoinMoin, but let us start with the basics:
- create a metadata exporter which exports RDF/XML data with some basic information about a wiki page using the SIOC ontology.
can take an example from SIOC data about a blog post, e.g., http://tinyurl.com/sem-micro-sioc
Basic information to export:
- page creation and last update date
- rendered in XHTML
- raw wiki format
Once this is done, the next iteration would be to look:
- if there are any wiki-specific concepts other than wiki pages which need to be described in RDF
- what other information about wiki pages needs to be described
SIOC exporter for MediaWiki (which can act as an example) can be found here:
Started implementing RDF export of wiki pages by creating a formatter plugin for RDF/XML MIME type based on one of existing formatters (xml_rdf.py). It is not fully functional at this point, but is enough to show the idea / approach taken.
A problem with this approach is that more flexibility in what and how gets exported is needed. I got stuck trying to figure how to get different serializations of the content (using different properties in RDF) exported within the same document. A formatter plugin is focused on transforming a page into one particular serialisation. A more procedural approach that allows to say "output some RDF here", "insert HTML rendering here", "insert creation data here", "insert raw wiki markup here" would help. -- CaptSolo
P.S. We can start with exporting just HTML or plain text serialisation for starter but sooner or later we will get into the question how to export multiple serialisations.
Things to try:
- use an Action instead of a Formatter plugin
SIOC community can be a good resource to consult if someone is implementing this.
Mailing list: http://groups.google.com/group/sioc-dev/
- IRC: #sioc @ irc.freenode.net