RDF reification is syntax was RE: one line RDF abstract syntax.

Graham Klyne wrote:

>
>
> At 04:32 PM 6/22/01 -0400, Jonathan Borden wrote:
> >It is evident that there is no clear understanding about what the current
> >specification says or means, so I am totally unsure about what
> the current
> >'ground rules' are intended to be.
>
> Barring some exotic edge cases I think the syntax/structure of RDF, per
> RDFM&S, is fairly clear, to the extent that most RDF folks have a pretty
> good idea what is and what isn't valid RDF.

Hmmm... are you suggesting that either:

a) the current RDF W3C WG need not address syntactic issues because there
are none
or
b) the problems with the RDF 1.0 syntax are so well known and universally
agreed upon that no further discussion need ensue.

perusing the RDF issues list would suggest that neither a) nor b) are true.

>
> Less clear, I think, is what some of the constructs mean, and how the
> language may be extended with new constructs and new semantics.

this would be less than unclear, then :-)

>
> >  The effort to find some common
> >understanding, I submit, is made my rational discussion of the issues and
> >alternatives.
>
> I suspect we may be pursuing the same goal by different (reasonable)
> means.  My approach is to treat syntax mostly as a secondary
> issue:  I feel
> that for the purposes of defining semantics, the current RDF graph syntax
> is applicable as any other one might define, even if it is less than
> pleasing to use for many practical problems.  Once the semantics are
> understood, I think defining a suitable syntax is technically a doddle.
>
> I really don't think that anything I am trying to do invalidates the work
> you are doing to explore alternative abstract syntaxes, or vice versa.
>

First, why would one assume that the work I am doing is to explore an
alternative abstract syntax ... as nowhere in RDF 1.0 is any mention of an
abstract syntax made?

In any case, you've asked for feedback on the abstract syntax _and_
semantics you've proposed:

Firstly, one of the problems with RDF 1.0 is that it muddles abstract syntax
and semantics together in ways that make sorting out and agreeing upon the
issues difficult. RDF would be helped by a proper definition of an abstract
syntax, upon which a proper semantics can be laden, rather than muddling
concepts like reification with syntax, which brings me to my main issue,
namely:

Secondly and most importantly, "reification" as discussed in RDF 1.0 M&S is
an entirely syntactic issue. I see no need to bring such surface syntax into
the RDF abstract syntax, and certainly not into the semantics. Let me expand
on this.

"reification" as used in RDF 1.0 is a purely syntactic device for attaching
an ID to a statement. Since an RDF 1.0 statement (triple) has identity and
hence is a resource there is absolutely no reason why a statement cannot be
the direct subject or object of another statement. Suppose the statement,
first in RDF 1.0 syntax and then in triple form:

<rdf:Description rdf:about="http://example.org/foo"
	xmlns:ex="http://example.org/">
	<ex:bar rdf:resource="http://example.org/baz"/>
</rdf:Description>

->

[ex:bar ex:foo ex:baz]

and now the RDF reification:

<rdf:Statement rdf:ID="foo">
	<rdf:predicate rdf:resource="http://example.org/bar"/>
	<rdf:subject rdf:resource="http://example.org/foo"/>
	<rdf:object rdf:resource="http://example.org/baz"/>
</rdf:Statement>

this mechanism for attaching the "foo" ID to the RDF 'reified' statement
could just as easily be accomplished by allowing both rdf:ID and
rdf:resource attribute on a "propertyElt" element, as has been discussed in
the RDF WG issues list -- and as a purely syntactic issue.

Even in the absence of this minor change to the RDF 1.0 surface syntax,
every statement surely is an "anonymous resource", don't you agree? So what
is the purpose of reification, other than as a syntactic device? Indeed the
<rdf:Statement> element matches the typedNode production hence is legal RDF
for this reason alone. Particularly I see no need to accord this device a
special place in the RDF _abstract_ syntax let alone the semantics.

So, my reaction to your proposal is that it would be greatly simplified and
loose no capabilities if all mention of RDF reification where totally
elimitated.

-Jonathan

Received on Saturday, 23 June 2001 22:22:58 UTC