What the #@&*$(!@ is going on here?! (was RE: N-Triples for proposed xsi:type [was Re: xsi:type test case ]

> -----Original Message-----
> From: ext Dave Beckett [mailto:dave.beckett@bristol.ac.uk]
> Sent: 07 August, 2002 12:46
> To: w3c-rdfcore-wg
> Cc: Stickler Patrick (NRC/Tampere); Graham.Klyne; jjc
> Subject: N-Triples for proposed xsi:type [was Re: xsi:type test case ]
> 
> 
> >>>Patrick.Stickler@nokia.com said:
> > > -----Original Message-----
> > > From: ext Graham Klyne [mailto:Graham.Klyne@MIMEsweeper.com]
> > > Sent: 06 August, 2002 19:49
> > > To: Jeremy Carroll
> > > Cc: w3c-rdfcore-wg@w3.org
> > > Subject: Re: xsi:type test case
> > > 
> > > 
> > > 
> > > At 05:38 PM 8/2/02 +0200, Jeremy Carroll wrote:
> > > 
> > > >Are the two documents descriptions of the same graph?
> > > >
> > > ><rdf:RDF>
> > > >   <rdf:Description>
> > > >     <eg:prop xsi:type="xsd:decimal">2.0</eg:prop>
> > > >   </rdf:Description>
> > > ></rdf:RDF>
> > > >
> > > >
> > > >
> > > ><rdf:RDF>
> > > >   <rdf:Description>
> > > >     <eg:prop xsi:type="xsd:decimal">2.00</eg:prop>
> > > >   </rdf:Description>
> > > ></rdf:RDF>
> > > >
> > > >I think I heard yes.
> > > 
> > > If the literal is intended to be a number, then I think yes.
> > 
> > A few questions:
> > 
> > 1. What triples are generated from the above?
> 
> 
> I am still waiting to see this.
> 
> The above is half a test case.  There is no triples output.
> 
> Don't expect any RDF/XML syntax for this anytime soon without any
> description of what the output is proposed.
> 
> Maybe I have to invent some new proposed N-triples for these, unless
> we are going to quads?  So how about as answers to the above
> (assuming xmlns:eg="http://example.org/" added) in order:
> 
> _:a <http://example.org/prop> xsd:decimal"2.0" .
> 
> _:a <http://example.org/prop> xsd:decimal"2.00" .

As far as I'm concerned, there is little difference between
'xsd:decimal"2.0"' and a URI -- and also, are we then making
qnames part of NTriples?

Should it not rather be

   <http://www.w3.org/2001/XMLSchema#decimal>"2.0"

since it is in fact the URI that denotes the datatype, not
the qname?!

And if so, why not just

   <val:(http://www.w3.org/2001/XMLSchema%23decimal)2.0>

and avoid having to change the graph syntax?! (yes, I know
*some* folks have an aversion to new URI schemes... but
that's IMO a pretty weak, and non-technical argument)

I am *very* bothered by these recent proposals based on xsi:type.
I fear they are coming too fast, too late, and are blurring
the distinction between XML and RDF, the serialization and the graph.
 
They also do not take into consideration, from what I can see,
how they relate to RDF typing (a'la rdf:type) and range semantics.

And of course, the don't even begin to address global/implicit
typing and the inline idiom.

The WG reached IMO full concensus on a local/explicit datatyping
idiom, as well as its associated semantics. Why then are we now
considering another local idiom -- especially one which requires
changes to the graph syntax and essentially duplicates the 
globally unambiguous and tidy nature of URIs?!

I feel that there is a point of order to be addressed here. I did
not see in any minutes that the concensus agreed to in Bristol has 
now been discarded, and the xsi:type proposal is not compatable with
the WG concensus at the f2f in Bristol.

Could someone please point me to such. If no'one can, then could
someone explain to me why it is acceptable for such a radical proposal
to be considered at such a late stage in the process, particularly
since it seeks to replace mechanisms for which we already had
WG concensus?!

> and then please argue about what such things are and if they are the
> same.  Don't do it at the RDF/XML level.

I agree. We've long asserted (with what I thought was complete
concensus) that it is the graph that matters, not the XML syntax
(the latter being just a means to get to the former).

   ***  SHOW ME THE TRIPLES!  ***

(and I'm surprised that hasn't been shouted by several WG members
long before now...)

> I may change the above syntax since I have no idea yet what is
> expected to go into the model - datatyped literals as above.
> 
> (Or Typed Data Literals as Patrick put it ;) although the latter
> used rdf:value and rdf:type rather than creating a new literal,
> if I recall correctly.)

Well, TDLs were simply pairings of datatype URIs and literals
which could be expressed by various idioms, and which identified
a specific datatype value. rdf:value and rdf:type were merely
components of some of the proposed idioms, but not of the TDLs
themselves.

Thus, both of the following idioms communicate the same TDL

   Jenny age "10" .
   age rdfs:range xsd:integer .

   Bob age _:x .
   _:x xsd:integer "10" .

[in the original TDL proposal, the local idiom was
 expressed as

   Bob age _:x .
   _:x rdf:type xsd:integer .   
   _:x rdf:value "10" . ]

which all correspond to the TDL pairing (xsd:integer, "10")
which, given the semantics of xsd:integer, identifies the
integer value ten.

All that is being proposed with the use of xsi:type, that 
I can see, is making the conceptual structure of a TDL
an atomic component of the graph syntax.

When the first WD for datatypes utilized TDLs as a mechanism
for understanding how datatypes worked, I got grilled because
they didn't exist in the model. Well, I guess that's what
is being suggested now -- that TDL's be in the MT, eh?

Well, if we do that, then we can provide for global typing by
a closure rule:

IF
   :s :p "LLL" .
   :p rdfs:range <DDD> .
   <DDD> rdf:type rdfs:Datatype .
THEN
   :s :p <DDD>"LLL" .

Though of course, you still have the problem of what the
literal "LLL" denotes. Is it the same as <DDD>"LLL" or
just the lexical form (string)? If the latter, then
that conflicts with rdfs:range, etc. etc.

I.e., the present xsi:type proposal doesn't solve *anything*
that we've been working through over the past few months!
It's just yet another syntactic representation for local
typing, which is something we pretty much all agree about
anyway, insofar as the semantics are concerned,  but further
introduces more complexity into the graph syntax and opens
up all kinds of questions about the relation between the
TDL/typed literals and URIs. 

With all due respect, what the &*($@!#(% is going on here?!

Patrick

Received on Wednesday, 7 August 2002 07:02:26 UTC