Re: I guess it's a stupid questions.

I agree with you -- context is crucial.
That is a fundamental design issue for my
MKR language (http://rhm.cdepot.net/).
Every statement has a named context.
In addition, MKR has n-ary relations,
questions and commands.

Dick McCullough
knowledge := man do identify od existent done;
knowledge haspart proposition list;
http://rhm.cdepot.net/
  ----- Original Message ----- 
  From: Tanel Tammet 
  To: Sandro Hawke 
  Cc: info@oilit.com ; 'Ivan Herman' ; 'Petko Petkov' ; www-rdf-interest@w3.org 
  Sent: Sunday, November 14, 2004 3:46 AM
  Subject: 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 17:06:17 UTC