Re: ACTION: task force unasserted triples

[...]

>The situation can be summed up as follows. The WebOnt language is
>obliged by the layering requirements to treat its own syntactic
>constructions as assertions of the existence of a class corresponding
>to the syntactic construct(and in fact of a great deal else as well,
>eg lists). This is because the RDF meaning of the RDF encoding of
>every piece of the WebOnt language amounts to an assertion of the
>existence of that class. And, as Peter has shown, such a requirement
>is very dangerous, since it can rapidly lead to paradoxes or
>contradictions of various well-known kinds when the language is
>reasonably expressive. (It may be worth emphasizing that the kind of
>problems that Peter is talking about have been well-known now for
>close to a century, are widely studied, and that there is no easy or
>cute way to hack around them. Some very smart people (Hilbert,
>Russell, Church, Turing, Goedel, Quine, Kripke, Montague) have
>wrestled with these problems, and the consensus seems to be that
>there isn't any way to avoid them. Certainly they cannot be avoided
>by appeals to other kinds of logic, such as multi-valued logics or
>abandoning the law of excluded middle. They have the same kind of
>status in foundations of mathematics as, say, the conservation of
>energy has in physics. A blithe confidence that some way will be
>found to hack around them should be treated rather like a patent
>application for a perpetual-motion machine: its really not worth
>getting into the details of what is wrong with it.)

[i really more than hate the idea of perpetual-motion machines]

Some further thoughts...
Suppose we want to say
  :John a [ owl:intersectionOf ( :Student :Employee ) ] .

which is in triples

  :John a _:a0 .
  _:a0 owl:intersectionOf _:a1 .
  _:a1 owl:first :Student .
  _:a1 owl:rest _:a2 .
  _:a2 owl:first :Employee .
  _:a2 owl:rest owl:nil .

Now suppose I'm so clumsy to create http://www.agfa.com/w3c/n3/ta.n3

  :John rdf:type _:a0 .
  _:a0 owl:intersectionOf <http://www.agfa.com/w3c/n3/ti.n3> .

and http://www.agfa.com/w3c/n3/ti.n3

  _:a1 owl:first :Student .
  _:a1 owl:rest _:a2 .
  _:a2 owl:first :Employee .
  _:a2 owl:rest owl:nil .

This is not to say that we should do it in that way,
just to say that it could be thought in that way.
I'm now asserting ta.n3 but what happens while
asserting the owl:intersectionOf statement?
Because we have to have a list of classes it's
quite obvious that we have to dereference our uri
to get that (functional) term in our engines.
Does that mean that we also have to *assert* the
statements in ti.n3? Not at all I think.
We are not ``talking'' about _:a1, but ``using'' it.

--
Jos

Received on Wednesday, 24 April 2002 05:42:47 UTC