> Are there any plans to provide a module that would facilitate the use
> of rdflib with a web framework like, say Django? And I see that the
> django-rdf code is no longer active.
Are you interested in the same design direction, putting an rdf/sparql
layer on top of existing Django models?
Personally, I would like to see something like RDFAlchemy combined with
support for N3 queries inside genshi templates, but that's quite a bit
different framework.
Joel
On Thu, Sep 17, 2009 at 6:00 PM, Joel Bender <jj...@cornell.edu> wrote:
>
> Personally, I would like to see something like RDFAlchemy combined with
> support for N3 queries inside genshi templates, but that's quite a bit
> different framework.
You have (at least) two options for this. Either:
* RDFAlchemy <http://www.openvest.com/trac/wiki/RDFAlchemy>
* Oort <http://oort.to/>
You can find the OortPub-tutorial at
<http://oort.to/OortPub/tutorial.html>, which describes how to build a
read-only app with OortPub, using Oort for object views of data in an
rdflib Graph, and Paste and Genshi for the views.
I'm behind Oort. I must first warn that I have thought a bit about a
revamp of the stuff there, but nothing has emerged as a final design
yet. For instance, I've thought a lot about using a more Django:ish
webapp layer, with a thin integration possibly based on
<http://code.google.com/p/oort/wiki/SparqlTree> against any kind of
SPARQL-enabled triplestore.
.. And also to manage a "depot" (I've begun an OortDepot project with
no releases as of yet), which is basically viewing a tree of folders
and files as a coherent set of contexts ("entries"), which is supposed
to take care of timestamping and provenance, as well as proving
something resource-centric (somewhat Atom/AtomPub inspired) for
management (CRUD) of all content. The triplestore will be much more of
an optimization than primary storage in this scenario.
== Elaboration ==
My experiments with triplestores have showed that e.g. timestamp
sorting of large datasets isn't very feasible with many of today's
implementations unfortunately (my intent is in part to get someting
"GData"-like as an API for consumers who want something flatter and
simpler than the full power of SPARQL..).
(The "entries" here function as a context which represents a set of
statements related to one primary resource, but with it's own
timestamp, representation(s) and possibly related files such as images
etc. For the sake of management, and syndication of the repo. (I'm
thinking of modelling these as instances of either AtomOwl Entry or
SIOC Item.)).
If I find the time, I'll also look into pushing rdf as json into e.g.
CouchDB or MongoDB for these things (that json being either similar in
structure to the output of SparqlTrees, or something between that and
the crude triple form I've seen as rdf/json here and there) ..
(If you're interested in discussing this "depot" design, and ways to
implement it, I think it's out of scope for this list and I'd be happy
to continue discussions on e.g.
<http://groups.google.com/group/oort>.)
== Finally ==
One option is to build something "close to the metal" with Django, and
working on Atom feeds plus RDF representations out of the models
defined there. I'm very interested in Kochief that Gabriel mentioned
(as I've also noticed django-rdf seems inactive -- albeit perhaps we
could perhaps join efforts to invigorate that as well..). I'd also
like to mention the utility
<http://code.google.com/p/rdflib/source/browse/trunk/rdflib_tools/describer.py>
in current "rdflib_tools" which is a convenient way of creating RDF
from more "raw" data (e.g. converting django model instances to RDF).
Best regards,
Niklas