[Zope3-dev] Re: RDFLib and Zope 3
Gary Poster
gary at zope.com
Mon Aug 29 23:24:08 EDT 2005
On Aug 26, 2005, at 3:03 AM, Daniel Krech wrote:
> On Aug 25, 2005, at 3:10 PM, Michel Pelletier wrote:
>> On Thu, 2005-08-25 at 14:32 -0400, Gary Poster wrote:
>>>> see what he thinks. I wonder how "lite" the component kernel
>>>> can go.
>>>
>>> The only thing I have in mind is the interface package, which is
>>> what
>>> Twisted uses. That's all we would need. zope.component needs
>>> zope.interface, zope.testing, and zope.exceptions, according to its
>>> DEPENDENCIES.cfg.
>>
>> Right. Well in this case we would provide just a very simple
>> interface
>> facade that had no effect when run in an environment with no
>> zope.interface (ie, catch the ImportError, null-out the facade) or
>> hook
>> into zope.interface if it is available. This way rdflib can be
>> still be
>> used with or without zope.interface.
>
> Sounds good.
OK, cool.
>>>> In the mean time the adapters can live inside Zemantic, which is an
>>>> rdflib to zope bridge anyway. Let me know if you want to send
>>>> patches,
>>>> otherwise I'll probably get around to adding functionality like
>>>> this
>>>> soon.
>>>
>>> I'm actually interested in trying to hook this up, but have very
>>> limited time. I might play with it just within RDFLib alone during
>>> some hobby time tonight, but otherwise may need to toss this off to
>>> you if you'll catch it.
>>>
>>> I also kind of want to hear Dan's reaction before I spend too
>>> much time.
>>
>> #redfoot on freenode is a good place to catch him, and me.
>
> Yep, feel free to stop by anytime.
OK, cool, I plan to again. :-)
>>> I thought I read that an RDF triad was itself something that
>>> could be
>>> a node in another RDF triad, but I can't find that anywhere now.
>>> Can
>>> you confirm or deny? :-)
>>
>> Yes, it's called reification, making a statement about a statement.
>>
>> http://www.w3.org/TR/rdf-primer/#reification
>>
>> http://en.wikipedia.org/wiki/
>> Resource_Description_Framework#Statement_reification_and_context
>>
>> http://www.w3.org/TR/rdf-mt/#Reif
>
> Reification is probably best avoided. I'd recommend seeing if you
> can make use of a context or quoted graph instead.
I have read that 'context' actually is still a word looking for a
firm definition in RDF, but I like the interpretation that it is the
source of the assertion. That's not a general answer for the sorts
of things that reification can provide, though.
The quoted graph does seem interesting: I said before that it seems
very similar to reification, and it does, but I guess it subsumes the
data structure that reification can provide...I also said that I
wonder about efficient indexing, and I still do.
On the plus side for context, you've implemented it. ;-)
I'm interested in contemplating RDF as a full catalog solution for
Zope, at least as a thought experiment. The SPARQL work seems
interesting, in regards to some of the recent discussion on the Zope
3 list; and the ability to seamlessly and simultaneously query both
relationship information between objects and more traditional catalog
data seems compelling.
It seems to me that allowing a back end to index particular
relationships--and joins, particularly through blank nodes--would be
a big step in letting RDF actually be a front end to a full catalog.
Another step would be having a front end that honored rdfs range and
domain constraints.
I plan to get on IRC and bother you all again as soon as I have time
to do so. :-)
Gary
More information about the Zope3-dev
mailing list