RDF relations in CPS
We've been using IOBTree graphs to handle relations between documents, using their docid in the repository as unique identifiers. Now we can also handle RDF relations, provided by the rdflib Python library and the Redland framework.
We have tested Redland graphs to index and serialize CPS content, and query relations created in the graph. The mechanism is rather simple:
- add a Redland graph with an appropriate supported backend in the portal_relations tool.
- define a serializer for each kind of content to get the triples to add to the graph, or define triples manually.
- use the portal_relations API to add/delete relations and query the graph created.
- use the portal_serializer API to serialize as RDF/XML files the graph,
or results of a query.
The product's SVN repository is here: http://svn.nuxeo.org/trac/pub/browser/CPSRelation/trunk/
And can be downloaded using
svn co http://svn.nuxeo.org/pub/CPSRelation/trunk CPSRelation
Additional information:
- rdflib homepage: http://rdflib.net
- Redland homepage: http://librdf.org/