- From: Danny Ayers <danny@panlanka.net>
- Date: Sun, 20 May 2001 00:19:57 +0600
- To: "Ziv Hellman" <ziv@unicorn.com>, <www-rdf-logic@w3.org>
- Message-ID: <EBEPLGMHCDOJJJPCFHEFCEJIDHAA.danny@panlanka.net>
RE: Why Triples? (was Re: What do the ontologists want)Nice to see something real-world for a change. However, you only go as far as to discuss representing or encoding (correct word?) the the data in triples. There's no denying that the structure would be a bit tangled, but look at what we might want to do with it - communicate & reason. Ok, we could pass on 4-ary relations, as long as the receiver was prepared to accept 4-ary structures. How might it be transferred? Same with reasoning - how would you go about querying this alongside e.g. a list of Director, Age Restriction, Country of origin, Duration + another 4 sets I can't think of... I also suspect that there is something happening at a psychological level in these arguments - it's far easier for a human to relate to information in a structure like that below - but is this necessarily the case for machines? --- Danny Ayers http://www.isacat.net -----Original Message----- From: www-rdf-logic-request@w3.org [mailto:www-rdf-logic-request@w3.org]On Behalf Of Ziv Hellman Sent: 19 May 2001 23:18 To: Sandro Hawke Cc: www-rdf-logic@w3.org Subject: RE: Why Triples? (was Re: What do the ontologists want) > There's no reason a set of triples like > > <a, color, red> > <a, size, big> > <a, flavor, sweet> > <b, color, green> > <b, size, small> > <b, flavor, bitter> > > can't be presented to users as > > object color size flavor > ====== ===== ==== ===== > a red big sweet > b green small bitter > This is a nice example, but if you examine it closely you will notice that it does not represent a true multi-ary relation, but rather a serialization of natural binary relations: an object has a colour, it has a size, it has a flavour, and each of these is an attribute of the object. In this case, the table can be directly reduced to the triples, and vice-versa. Add price to the list later, and you have just tacked on yet another binary predicate. But consider the following more complicated table that one might encounter in real life and want to make available on a semantic web: month city cinema theatre film ------- ---------- ----------- ------------ -- ------- April Tel Aviv Globus 1 Pokemon 2 April Tel Aviv Globus 1 Gladiator April Tel Aviv Globus 2 Miss Congeniality April Tel Aviv Peer 1 Miss Congeniality April Tel Aviv Peer 2 Cast Away April Jerusalem Gil 1 Pokemon 2 April Jerusalem Gil 2 Proof of Life April Jerusalem Globus 1 15 Minutes April Jerusalem Globus 2 102 Dalmatians May Tel Aviv Globus 1 Pokemon 2 May Tel Aviv Globus 1 Billy Elliot May Tel Aviv Globus 2 The Mummy May Tel Aviv Peer 1 The Mummy May Tel Aviv Peer 2 Exit Wounds May Jerusalem Gil 1 Pokemon 2 May Jerusalem Gil 2 The Mummy May Jerusalem Globus 1 A Hard Day's Night May Jerusalem Globus 2 15 Minutes Unfortunately, no matter how one views this, there is no way to reduce the information content here to binary attributes. In order to encode it as ground atom triples, one would probably artificially have to create 18 objects, each of which would then be associated in a binary relation to each basic item in the table. The resulting data construct would look so baroque and/or contain so much redundancy that I would guess someone somewhere will eventually notice that RDF has containers and decide to ship the table more straightforwardly as a list of lists and by-pass the triples altogether. > The best reasons I've heard for triples: > > We don't want to grant any particular properties or relations > special status. > > If we later want to add a property (column) "price" or even "price at > Whole Foods Market in Newtonville on 2001-05-18" we can do that > without breaking anything. In the cinemas example above, it is not immediately clear that adding new triples somewhere deep in a complicated triple encoding of the data is easier -- or less likely to break anything -- than tacking on a new value at the end of each list in a list of lists encoding. Cheers, Ziv
Received on Saturday, 19 May 2001 14:25:17 UTC