Re: [Tracker] tracker RDF data
- From: Eyal Oren <eyal oren deri org>
- To: Jamie McCracken <jamiemcc blueyonder co uk>
- Cc: tracker-list gnome org
- Subject: Re: [Tracker] tracker RDF data
- Date: Sat, 22 Jul 2006 13:50:47 +0100
On 07/19/06/07/06 15:54 +0100, Jamie McCracken wrote:
Eyal Oren wrote:
tracker is not designed for use as a web service but as a desktop service
(hence dbus is used).
I know, that's good. RDF is definitely not only for the web.
Its also not an RDF style application it merely uses RDFQ (xml based
version) as a means to query stuff. We dont implement all of RDFQ but a
subset with extensions. We also only uses the <rdfq:Condition> parts in
the query so its not a full blown RDF thingy. (you can see rdf query
examples in the tarball in the rdf-query-examples folder)
ok. but your datamodel is exactly like RDF: desktop-object has-property
with-value, e.g. (file-abc creation-date 2006/01/01), or (contact hasName
'jamie') seems exactly the same as the RDF model (subject has-predicate
with-value), which is not so strange, because RDF was designed to be a
simple and generic datamodel and directed graphs are then a natural
solution.
I don't mean to say that you should internally use RDF, since e.g. MySQL is
certainly more developed than current RDF databases. But what would be
useful is to align terminology, as you do in the 'shared file metadata
spec'. As you state there, the only requirement is that metadata names are
unique and not overloaded:
If I say 'file-abc is-owned-by EyalOren' and you say 'file-abc has-owner
EyalOren' then we have a problem merging and combining those two pieces of
metadata, and that's why you want to standardise the naming of these
metadata indicators (called properties in RDF).
The thing is that in RDF a lot of work has been done into standardising
exactly such vocubalaries. Such schemas could possibly contain indications
on domain/range of those properties, e.g. has-creator usually relates files
to persons. See for example schemaweb [1] for some existing schemas (the
PIMO schema [2] used by gnowsis is very relevant, but the document is very
long and winded.
If you are interested, I would certainly be interested to figure out how we
can better align the existing schemas in the RDF world with your 'shared
file metadata specification'.
Of course, if you're not interested in that, I can easily do the
tracker-terminology-to-rdf-schema-vocabulary translation myself, in the
adapter (as we did for evolution data: we mapped it to FOAF [3] and some
other RDF schemas).
The dbus stuff will need Ruby bindings (if they exist?). Queries are
returned via dbus as a native dict/Hashtable with the URI as the key and
an array/list of values as the contents. I expect if you were going to
make use of it you could serialise this into ntriples yourself.
Yes, the triples are no problem, but the ruby dbus bindings are very old
and seem to be deserted. I don't really know how to get that working, I
don't know anything about dbus myself, so I don't see myself writing those
bindings.
Im not sure if the above helps or not but it sounds like it would need
some mods on your part to make use of it.
Yes definitely. If I can get the dbus stuff to work somehow, I can easily
do the rest.
What kind of queries can I send to org.freedesktop.Tracker.Search.Query?
Which subset of RDFQ do you support exactly?
-eyal
[1] http://www.schemaweb.info
[2]
http://www.dfki.uni-kl.de/~sauermann/2006/01-pimo-report/pimOntologyLanguageReport.html
[3] http://www.foaf-project.org/
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]