Re: Interpretation of RDF reification

Dan Brickley wrote:
> I was also thinking that, if their language allows n-ary rather than 
> binary relations, folk will doubtless start using it to decorate 
> plain RDF assertions with extra bits. "Charlie loves Mary"; but how
> much? eg:sincerity='very'; and how long eg:since='tuesday', ...

What happens if I label it with eg:sincerity="insincere"?  Is it still
true that Charlie loves Mary?  If the decoration does anything but
strengthen the original statement, it yields a contradiction.

> Going back to my example, who is screwing up?
> . . .
> If I had to apportion blame, it would be on the last step. The query
> isn't a good query to ask. But it leaves me asking - what would be good 
> queries to ask?

Well, I think the SPARQL query you had was a legitimate query that one
would want to make, in other circumstances.  It answers the question
"Who has knowledge about Charlie's marriages?" or "What do you know
about Charlie's marriages"?  When you don't care what URIs people used
-- and especially when you want to abstract over that -- it makes lots
of sense.

Here's another perspective on the reification business.  Every statement
that we assert as

(1)  charlie loves mary .

could (in principle) equivalently be expressed as

(2)  [] rdf:type loves ;
        ex:subject charlie ; ex:object mary .

And when people want quads akin to

  loves(charlie, mary, 'on March 24')

we can readily translate this into

  [] rdf:type loves ;
     ex:subject charlie ; ex:object mary ;
     ex:startingAt 'March 24'.

(Some have blogged that this is like the noun form of loves, like the
state of loving.  Formally it's just a matter of perspective.)

If we let ourselves freely switch between the (1) and (2) methods of
assertion, RDF already provides what we need to decorate assertions,
even if RDF/XML or other serialization syntaxes require a lot of typing
to do it.

Really, there are no expressive limits to RDF -- given the right
vocabularies.  The only question is how complex a model do you need in
RDF, and whether it's worth using a more complex framework (e.g.
something with n-ary predicates) in order to simplify the particular
model in question.

- Joshua Tauberer

"Unfortunately, we're having this discussion. It's too bad,
because guess who listens to the discussion: the enemy."

Received on Friday, 24 March 2006 16:31:29 UTC