Re: RDF Reification

Hi,

Thank you all for your help.

I am beginning to think that, at least technically, reification isn't really
a bad practice. From your replies i can list three possible solutions: using
a class (e.g. Friendship), reification or named graphs.

Reification is not suitable for quoting but I see no reason not to use it to
> specify qualities of an asserted friendship relationship. Having a class
> :Friendship would be the more explicit approach, your trust property would
> have domain :Friendship rather than rdf:Statement making the ontology easier
> to understand. However having a friendship relationship expressed with a
> single statement, not only makes some sparql queries simpler but also
> potentially (if the individuals have lots of friend) much more performant,
> if the triple store has optimization for reification also accessing the
> additional properties of the friendship is faster than with the
> Friendship-class approach.
>

I am using Jena which comes with a reification API, so it seems reification
might be faster than the Friendship class approach. On the other hand, i
don't know if named graphs (e.g. using the NG4J API) will provide better
performance than reification. I believe there would have to be a named graph
for each friendship relation between two persons.

Also, i think one of the advantages of both reification and named graphs is
that i would be able to use foaf:knows.

Received on Monday, 10 May 2010 22:43:03 UTC