OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help



   Re: [xml-dev] RDF == the "binary relational model"?

[ Lists Home | Date Index | Thread Index ]

Michael Champion wrote: 

> I've wondered for years about the analogy between RDF and the 
> binary-relational model (cf 
> http://www.dbdebunk.com/page/page/1147347.htm) in which everything is 
> modeled as two entities with a relationship between them  There's also 
> variants such as the Associative Model of Data 
> http://www.lazysoft.com/resources_downloads.htm

This is true, but realize that one can represent n-ary relationships 
given a set of binary relationships. The "other" KR standard: KIF uses 
an n-ary model. It turns out that Pay Hayes who is the editor of the RDF 
Semantics REC, has also been involved in the KIF work. Pat is a fairly 
knowlegable guy -- card carrying logician wizard, and it turns out that 
the new RDF has adopted the list syntax from DAML+OIL, e.g. rdf:first, 
rdf:rest and rdf:nil ... so that one can construct lists from RDF triples.

> As Dare implies, there has got to be some sort of mapping between the 
> abstraction of triples / binary relations and actual application 
> data.  Of course that's true with raw XML or the n-ary relational 
> model, but triples seem to be a pretty abstract abstraction, and it 
> sounds like this is one reason why the binary relational approach 
> hasn't taken off.

Again, triples are merely the basic syntax of RDF. One can write entire 
languages (e.g. OWL) based upon the triple syntax. The 
"rdf:parseType='Collection'" is a shorthand way to convert something like

<owl:oneOf rdf:parseType="Collection">
    <owl:Thing rdf:ID="A"/>
    <owl:Thing rdf:ID="B"/>
    <owl:Thing rdf:ID="C"/>

into a list which has the triples:

_:1 rdf:first <#A>
_:1 rdf:rest _:2
_:2 rdf:first <#B>
_:2 rdf:rest _:3
_:3 rdf:first <#C>
_:3 rdf:rest rdf:nil

> I just wonder whether RDF advocates are aware of these other 
> triples-like approaches, what they think they've learned from them, or 
> whether they think the analogy is misleading?

Oh yeah (they are aware). They have learned that among other things, 
triples can be used to construct arbitrarily complex structures. The 
"analogy" between triples and binary relationships is not merely an 
analogy, there is an actual mathematical equivalence between the two 
which is well known and understood.

For one (now somewhat old) example of how triples can be used to 
construct n-ary relations see: 
http://www.openhealth.org/RDF/RDFAbstractSyntax.html -- note that this 
was pre "new RDF"

I guess the bottom line is that there are many people who consider 
"triples" as almost too trivial to consider at face value -- the 
rdf:List, rdf:first, rdf:next, rdf:nil vocabulary was considered 
essential by the WebOnt WG in order to create the OWL language out of 
RDF triples much as we consider Unicode characters as essential to 
creating XML. That said, it is possible to use triples (and binary 
relations) in this fashion, thereby getting beyond the *well known* 
limitations of binary relations themselves. The price is having a bunch 
of triples that make no sense on their own (i.e. outside the context of 
their containing graph).



News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS