Re: I guess it's a stupid questions.

Sandro Hawke wrote:

>>Why has the triple come to have such importance?
>>
>>What is magic about the number 3?
>>    
>>
>
>To get wildly philosophical about it, it's because two isn't powerful
>enough.  Three is as simple as possible without being too simple.
>
>What can you build out of toys which snap together only at 2 points on
>each item?  You can build a line -- maybe a bent line.  What can you
>build out of toys that snap together at three points?  The Eiffel tower,
>etc.
>  
>
A lot of people claim that the triple thing is an oversimplification, and
we'd be better off with quads. I used to doubt that, but finally understood
the reasoning.

The crucial issue, of course, is the context. While it is true that
we can encode sentences like "John has age 32", "The cat is on the mat",
etc, as triples, these triples themselves make very little sense.

In order to give "meaning" to sentences, we need to add a large
number of rules to the sentences/triples, defining the relations
between things and concepts.

Now, these rules have to specify the context of triples. You simply
cannot give any sensible meaning to the sentences like
"John has age 32", "The cat is on the mat", etc. You have to know
who said these sentences, when and why.

When we look at XML or RDF, then the sentences there _are_
in the context: namely, the file they are located in, the URL
and the creation date of the file, etc. That is why we are typically
happy with just triples: the file gives the context.

Now, let us start adding rules. Rules typically do not "know" the
files where the sentences were located (consider typical taxonomy
rules in rdfs, for example). Sentences are pulled from the
context. For rules the context is suddenly lost!

Why was the quad thing dismissed and triples thought to
be sufficient? My guess is that the xml people were used
to considering the document to be a context, while they
were _not_ used to actually writing or using any rules.
Hence they never really understood that once you start
adding rules, the "document as context" goes out of
the window and you are standing there without any
context left. The rdf people talked about rules,
but really thought about rdf as a triple-based way to
encode xml trees in a relational database.

What we need is a simple way to put context explicitly
into the sentences and rules. Adding the fourth column
(context) is exactly the way to go. It is important to observe
that:

  -  We could, in fact, give context information even with
     just three columns: rdf contains the reification mechanism
     specially for that. However, this mechanism is hugely
     inconvenient. Using reification means that the simplicity
     of rdf is immediately lost. The simple understanding of
      striped xml as rdf disappears. We'd be better off with
     other languages than rdf once reification is required
     at every step.
   
  - One column suffices for context, since you'd normally put
    the context identifier (for example, the url of the document)
    into that column. You will then give the specific aspects
    of the context (author, date, etc) separately as rdf triples or quads.

Tanel Tammet

Received on Sunday, 14 November 2004 11:45:50 UTC