RE: Dataypes, literals, syntax

> -----Original Message-----
> From: ext pat hayes [mailto:phayes@ai.uwf.edu]
> Sent: 07 August, 2002 18:52
> To: Drew McDermott
> Cc: www-rdf-logic@w3.org
> Subject: Re: Dataypes, literals, syntax
> 
> 
> 
> >    [Pat Hayes]
> >    But I don't see the real utility of the suggestion [to write,
> >    e.g., the literal 10 as xsd:integer"10"] in this case. 
> It provides
> >    no extra expressive ability; at best it saves a triple here or
> >    there; but on the other hand it complicated the syntax. 
> So this is
> >    a syntactic trade-off, and I guess I think that on 
> balance its not
> >    worth the trouble. We can get the same effect by using a 
> bnode and
> >    an extra triple, in effect writing the typed literal as a triple:
> >
> >    Jenny age _:x .
> >    _:x xsd:integer "10" .
> >
> >Isn't this what was earlier called "Idiom 1"?  I take it no one
> >disagrees with the use of Idiom 1; the problem is that people like
> >Idiom 2
> >
> >     <age>10</age>
> >
> >or perhaps 2b   <.... age="10"   />
> >
> >(I express these in XML style just to savor their rich ambiguity.)
> >
> >So the problem is to fix Idiom 2.  Saying "You can always use Idiom
> >1" does not answer the question, unless you really mean, "Abandon
> >Idiom 2."
> 
> We are going in circles. I was responding to a proposal by Peter to 
> incorporate datatyping information into the literal itself. That 
> proposal involves extending the notion of 'literal' in RDF, so it's 
> not either of the idioms. 

Well, I would consider the proposed datatyped literal node
as something other than a literal -- a URLref like entity
which globally and unambiguously denotes a specific datatype
value. 

I.e., having something like (xsd:integer)"10" as a node in the
graph introduces a fourth atomic component into the graph
syntax.

Unless one is saying that the structured literal is really
now a four-tuple, consisting of parseType bit, lexical
string, xml:lang, and datatype. But that's making literals
rather "heavy" objects. Better to get all that information out
into the graph explicitly.

> My point was only that one can achieve 
> essentially the same effect by using idiom 1, without changing RDF 
> syntax, and keeping the datatyping information as an explicit 
> assertion in the RDF graph.

Exactly.

And since we're strongly constrained by the charter to make
as few changes as possible, this is the path we likely
should choose.

> I agree that none of this has any direct bearing on idiom 2, but that 
> was not the point under discussion. My own current preference for 
> idiom 2 is to allow it, but insist that what it says (in your 
> example) is that age is a string.

Two comments to that:

1. This precludes any real interaction between RDF range constraints
   and datatyping, since any rdfs:range assertion will preclude use
   of the inline idiom. If the rdfs:range of ex:age is xsd:integer,
   then one can't say { Jenny ex:age "10" . }. And since most folks
   use, and want to use the inline idiom, I'd consider that a rather
   hard sell... (but hey, we've been over this many, many times)

2. XML Schema employs untidy semantics for datatyping. C.f.
   http://lists.w3.org/Archives/Public/w3c-rdfcore-wg/2002Aug/0073.html
   So folks who expect RDF datatyping to correspond at least at
   the conceptual level with XML Schema will likely prefer untidy literals
   and a literal in the inline idiom denoting a datatype value.

Patrick


--
               
Patrick Stickler              Phone: +358 50 483 9453
Senior Research Scientist     Fax:   +358 7180 35409
Nokia Research Center         Email: patrick.stickler@nokia.com
 

Received on Friday, 9 August 2002 07:15:44 UTC