W3C home > Mailing lists > Public > www-rdf-logic@w3.org > December 2000

Re: I have a trouble with The RDF Model [Long]

From: Pierre-Antoine CHAMPIN <champin@bat710.univ-lyon1.fr>
Date: Sat, 02 Dec 2000 12:03:46 +0100
Message-ID: <3A28D712.127294E3@bat710.univ-lyon1.fr>
To: pat hayes <phayes@ai.uwf.edu>
CC: RDF-Logic <www-rdf-logic@w3.org>

I wrote :
> >The first level syntax is the XML-syntax proposed by the RDF
> >recomendation. It is interpreted as a direct graph, whose nodes and
> >arcs are labelled by URIs (or Literals for some nodes).
> >The semantic is (intended to be) quite trivial, and the syntax could
> >very well be replaced by another one, as mentionned by Seth.
> >
> >The second level syntax IS the direct labelled graph, and the RDF
> >recomendation does not give any predefined semantics to it (that
> >semantics depends on yet-to-describe schemas/ontologies).

And you answered :
> Oh, but wait: if the basic language has no semantics, then it is
> (literally) impossible to specify an ontology in it. Meaning cannot
> be achieved just by rearranging symbols. Ontologies mean what they do
> by virtue of the semantics of the language they are expressed in, and
> if that semantics is missing then they don't mean anything.

That's right...
But defining ontologies is note the aim of RDF itself,
rather the aim of efforts like RDF-Schema or DAML-ONT.

As I understand it, the only construct in RDF (namely, the triple)
has no predefined semantics -- its semantics depends on the Predicate being used.
>From a logical point of view, that makes RDF a proto-language rather than a language.

> Im not sure what you mean by 'second-level' here. I presume you don't
> mean second-order (?)

see above : I called 'second level' the "abstract syntax", and 'first level' the XML syntax. Nothing to do with 'second degree' :)

About reification, you wrote:
> To illustrate some possible answers. One might say that an RDF triple
> asserts that a relation holds between two things (or that a property
> has a value when applied to something), but that the reification of
> that triple doesnt make that claim, but only says that the triple
> 'exists', without actually asserting it. 


> That would be a
> 'meta-language' view of reification, and would amount to the
> observation that RDF was capable of describing its own (abstract)
> syntax.

You got it all right.

(1) [Bush, won, Election]

states that "Bush won the election".
It also *implies* the 4 triples below :

(2) [id1, rdf:subject, Bush]
(3) [id1, rdf:predicate, won]
(4) [id1, rdf:object, Election]
(5) [id1, rdf:type, Statement]

where id1 is a URI for statement (1).
Those 4 triples (2-5) are supposed to have a well defined semantics,
but actually there is a subtil difference of interpretation between RDFers (see below).

The standard example is something like

(6) [someone, told, id1]

Asserting (2-6) would mean "Someone told me that Bush won the Election"
while (1-6) would mean "Bush did won the Election: someone told me"

Another use of reificarion is to allow more complex langauge constructs to be built above the simple constructs of RDF. See:

> What would be the meaning of an incomplete specification of a
> reification? for example, suppose someone just says
>   {[id2,type,statement]
> [id2,predicate,wonThe]
> and nothing else; would this be legal RDF, and what would it mean?

Good question...
The fact that one can specify only a part of a reified triple bother much people. But why not... You can assert facts about an object you do not perfectly know...
You will just make less inferences about it.
("I read that somebody won something, yesterday, but what was it ???")

> Again, suppose one asserts an 'RDF-ish' property of a thing but also
> asserts some property that isn't applicable to triples, such as:
> {[id3,predicate,wonThe]
> [id3,wonThe,Election]
> }
> what, if anything, would that mean? Or would it be syntactically
> illegal in RDF?

Not illegal ! But probably inconsistent...
The "applyability" of a predicate depends on its semantics, hence of the schema/ontology defining it.

Your example above would mean :
"There is a statement -- I don't know at all what it is about --
 and that statement won the Election."

Syntactically correct :)

Note that this should not happen with an *asserted* triple, since all the triples of the reification are implied by the statement assertion.

> What happens if I reify a reification? For example, consider:
> {[id5,type,statement]
> [id5, subject, id5]
> [id5, predicate, type]
> [id5, value, statement]}
> Is this a description of itself? Or of nothing? (Or should there be
> some kind of literal- or string-quoting in a more careful writing of
> triples, so that the last one should be written [id5, value,
> "statement"] )

Interesting paradox :)
This is legal, and the 4 triples reify the 1st one.
That is, id5 is a triple about itself.

> >There is actually a very hot debate on the RDF-interest mailing list,
> >which, as I am writing, I could formulate as :
> >
> >"Do reified statements denote
> > - the *interpretation* of a statement
> >   i.e. a semantic entity, which is unique and abstract,
> >or
> > - the *expression* of a statement
> >   i.e. a syntactical entity, which could have many instances ?"

Maybe that was not such a good idea expressing that in term of semantics/syntax...

> (Added later: I think I see what you mean. The syntactic entities may
> have several identical tokens of the same type, so that the 'same'
> triple may occur more than once, right? That is what linguists call
> the type/token distinction rather than the generalisation/instance
> distinction. That would explain the RDF interest in 'bags' of
> triples.)

You got it ! :)

> >Sure, it makes it difficult to make a model theory of RDF,
> >but that is what will make RDF suited to the web, open as it is :
> >people will not only be able to annotate resources, but also
> >annotated their annotations, to explain/justify/comment them.
> Yes, point taken (and I agree). However, annotation does not require
> self-description;

But annotation *of* annotation does...

> and in any case, in order to be of effective use in
> the web or anywhere else, any language needs a clear semantics.

Does it really ?
I'm very interested in semantic issues of RDF, and efforts like DAML-ONT to add make a formal semantics available.
But there must *aslo* be ways of doing things without a formal definitive semantics -- natural language in everyday life works fine that way.
Our team is currently investigating that subject.



Sometimes I think the surest sign that intelligent life exists elsewhere in the
universe is that none of it has tried to contact us.
(Bill Watterson -- Calvin & Hobbes)
Received on Saturday, 2 December 2000 07:39:26 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 22:45:35 UTC