RE: plural vs singular properties (a proposal)

My two pence... 


I would like to distinguish RDF from triple stores (skip to summary if
skimming)...

A *triple store* is already a perfectly good, general purpose relational
model. The key is the whole triple. It represents entities which can
have multiple properties each with multiple attributes. All triple
stores are valid relational models.  

However, in a specific domain it may be that a particular entity has a
unique value for a certain property. In these cases, more specific
relational model can be constructed which encapsulates these
constraints. Eg an entity with unique values for all its properties can
be represented by a single relation with one row per entity and one
attribute per property. The semantics of these models are lost in
translation to triple stores, because the uniqueness constraints are
lost. 

*RDF* on the other hand has additional semantics for specific
properties, rdf:type, rdf:subPropertyOf etc, which are not part of the
relational model. 

However, it is still the case that RDF cannot capture the relational
model - there is no way in RDF to specify that a property has a unique
value. 


Summary
======== 
- Every triple store is a relational model. However, more specific
relational models may capture additional information in particular cases
(eg uniqueness of property values). 

- Every relational model can be represented as a triple store. However,
some    semantics is lost (eg uniqueness of property values). 

- the semantics of RDF (as distinct from triple stores) cannot be
captured in the relational model (eg rdf:subPropertyOf). 

The semantics of the relational model cannot be captured in RDF (eg
uniqueness of property values). 

Tim. 

 

 

-----Original Message-----
From: semantic-web-request@w3.org [mailto:semantic-web-request@w3.org]
On Behalf Of Garret Wilson
Sent: 06 January 2008 04:09
To: Andrew Newman
Cc: Frank Manola; SWIG
Subject: Re: plural vs singular properties (a proposal)


Andrew,

Andrew Newman wrote:
> Predicates need not be repeated in order to store multiple values - 
> the idea of multiple values is rather arbitrary.
...

But do you agree that, if we consider relation attributes to model RDF
predicates, that relations do not allow predicates to be repeated?

RDF, on the other hand, allows predicates to be repeated. That contrast
is what I was trying to communicate, and about which I was trying to
learn if there is any reason to be alarmed.

> Attributes can also be of type relations (Chapter 6 of Intro to 
> Database Systems and Chapter 12.6 has some notes on it).
>
> In your example you want to store to subjects for a book.  The 
> attribute type then becomes a set of strings (or whatever type your 
> want to choose for subjects of books).
>   

Yes, I understand that. Date is quite happy with his revelation
(apparently he didn't believe this was possible in earlier editions of
the book) that an attribute can be of a relation type and its value can
itself be a relation. But that doesn't mean I'm putting multiple values
in a tuple for that column---I'm putting one value, which is itself a
relation.

Similarly, if I want multiple dc:subject predicates, I can make the
value of type rdf:List. That doesn't mean I'm giving the predicate
dc:subject multiple values---it just means that its single value holds
multiple resources.

But (unlike the relational model, I think) in RDF I also have the option
to repeat the predicate if I want another dc:subject value! Isn't this
in direct contrast to the relational model? I can't just put "repeat the
predicate" to add another value on a relation, can I!

Bijan (both on this list and off-line) tells me that I can just add
another tuple in the relation with the additional dc:subject value (I
guess Frank said that as well), and that this is semantically equivalent
to "repeating the predicate" in RDF (I hope I didn't misstate you,
Bijan).

And it is at this point my expertise in the relational model breaks
down; as I told Bijan, I think the best thing for to do at this point is
to suspend my participation in the discussion while I dive back into
Date and make my relational foundation a little more solid. So I'll try
to not say much more here for a bit, until after I've studied more.

(Yes, Frank, my discussion on nulls is on hold as well; your suggestion,
which you may now rue ;) , that I study the relational model concerning
nulls is what brought me to this question in the first place.)

Best,

Garret

Received on Monday, 7 January 2008 10:48:51 UTC