Re: Can't RDF describe collection resources?

On 1 Mar 2012, at 10:25, Ruben Verborgh wrote:

>>>> Note that the :hasComment property is redundant in the sense of RDB: its content is equal exactly to the composition of :hasComments and :memberOf. As a matter of fact, the precise and correct way is to use owl property chains as metadata relating :hasComments and :hasComment via :memberOf.
>>> 
>>> That’s true—but it fails if there are no comments to the blog post. Then the comments resource exists (it’s just an empty list), but you cannot refer to it because the chaining won’t work.
>> 
>> No. Think to it relationally: you have a table ":hasComments" which would relate a post to its comments, and a table ":memberOf" relating each set of comments to each specific comment in it. I can have a tuple from a post to its comments, but I do not necessarily have any tuple from such comments to elements. In this case, the derived composed table :hasComment would not have a tuple for that blog post.
> 
> Oh, of course, I see it now.
> The issue is that RDF in practice always works the other way round: it tends to describe individuals instead of collections.

I don't get this. Remember that with this modelling you would have at your disposal both :hasComments and :hasComment, being them redundantly constrained by the property chain axiom. You can use any of the two interchangeably. In aprticular, you can use just :hasComment and ignore systematically :hasComments in your application (but when you need to create the comments resource once forever for a newly created blog) and everything would be fine. To be more precise, you need also to state that the :hasComments property is functional, so that you could add (or refer to) a comment as a :hasComment without bothering mentioning the comments resource.

> Plus, I would indeed need to make the relation between plural and singular explicit for each property with OWL property chains. (But at least, it’s possible.)

I don't get this: you just need one property chain axiom, saying that :hasComment is the composition of :hasComments (as a functional property) with :hasMember.

cheers
--e.

Received on Thursday, 1 March 2012 09:36:16 UTC