W3C home > Mailing lists > Public > w3c-rdfcore-wg@w3.org > February 2003

Re: response to issue pfps-07

From: Peter F. Patel-Schneider <pfps@research.bell-labs.com>
Date: Wed, 05 Feb 2003 11:55:29 -0500 (EST)
Message-Id: <20030205.115529.13657826.pfps@research.bell-labs.com>
To: phayes@ai.uwf.edu
Cc: w3c-rdfcore-wg@w3.org

From: pat hayes <phayes@ai.uwf.edu>
Subject: Re: response to issue pfps-07
Date: Wed, 5 Feb 2003 10:50:12 -0600

> >From: pat hayes <phayes@ai.uwf.edu>
> >Subject: response to issue pfps-07
> >Date: Mon, 3 Feb 2003 17:53:22 -0600
> >
> >>  The rules for typed literals are incomplete.  They do not give a
> >>  meaning for "a"@t^^dt:foo, for dt:foo a datatype and t a language tag.
> >>
> >>  -----
> >>  True, and this was a pure editorial slip-up on my part, which others
> >>  also noted. This will be fixed.
> >>
> >>  The proposed form of the datatype semantic conditions are now:
> >  > 1.
> >>  For any typed literal "sss"[@ttt]^^ddd in G, if I(ddd) is in D and
> >>  'sss' is a valid lexical form for I(ddd) then IL("sss"[@ttt]^^ddd) =
> >>  L2V(I(ddd))(sss)
> >>  2.
> >>  For any typed literal "sss"[@ttt]^^ddd in G, if I(ddd) is in D and
> >>  'sss' is not a valid lexical form for I(ddd) then
> >>  IL("sss"[@ttt]^^ddd) is not in LV
> >  >
> >>  where the [square brackets] indicate that this part of the literal
> >>  syntax is optional.
> >
> >This change means that the language tag is significant for typed literals.
> 
> Can you elaborate on your response? In what way does this make the 
> language tag 'significant'?
> 
> I fail to see how it does. It explicitly and directly ignores the 
> language tag, by treating any typed literal with a language tag in 
> exactly the same way as the similar literal without the language tag.
> 
> Maybe we have failed to communicate somewhere?

Under the above semantic constraints "a"@fr^xsd:integer and
"a"@en^xsd:integer do not necessarily denote the same element of the domain
of discourse.  Therefore the language tag is significant for typed
literals.

> Perhaps the following way of expressing the conditions would be clearer(?):
> 
> 1.
>   For any typed literal "sss"[@ttt]^^ddd in G, if I(ddd) is in D and
>   'sss' is a valid lexical form for I(ddd) then
> IL("sss"@ttt^^ddd) = IL("sss"^^ddd) = L2V(I(ddd))(sss)
> 
>   2.
>   For any typed literal "sss"[@ttt]^^ddd in G, if I(ddd) is in D and
>   'sss' is not a valid lexical form for I(ddd) then
> IL("sss"@ttt^^ddd)  is not in LV and IL("sss"^^ddd) is not in LV.

This has the same ``feature''.


> >>  There is a corresponding (new) inference rule described by the
> >>  following proposed text added to section 4.3:
> >>
> >>  ------
> >>  Since language tags play no role in the meaning of a typed literal,
> >>  they can in practice be ignored, and any literal of the form
> >>  "sss"@ttt^^ddd, where ddd is not rdf:XMLLiteral, treated as identical
> >>  to the same literal without the language tag, "sss"@ddd.
> >
> >Incorrect.
> 
> Well, they clearly have the same denotation, so why is this incorrect?

They do not, see above.

> >>  We can
> >>  capture this convention by special rules which allow language tags to
> >>  be inserted or removed:
> >>
> >>  rdfD 0a
> >>
> >>  aaa ppp "sss"@ttt^^ddd .
> >>  =>
> >>  aaa ppp "sss"^^ddd .
> >>
> >>  rdfD 0b
> >>
> >>  aaa ppp "sss"^^ddd .
> >>  =>
> >>  aaa ppp "sss"@uuu^^ddd .
> >>
> >>  Here, ttt and uuu are any legal language tags and ddd is anything
> >>  other than 'rdf:XMLLiteral'. Clearly, these rules together can
> >>  replace any language tag by any other.
> >
> >These rules are not valid with the above semantic change.
> 
> Er...yes they are.

Nope, see above.

> >>  BTW, for XML literals the conditions (on RDF-interpretations) are:
> >>
> >>  if sss is a unicode string which can be parsed into a well-formed XML
> >>  document, then
> >>
> >>  IL("sss"^^rdf:XMLLiteral) is the XML canonical form of the XML
> >>  document obtained by parsing sss as XML
> >>
> >>  and if ttt is a language identifier then
> >
> >What is a language identifier.  XML defines only language tags.
> 
> The term 'identifier' was taken from the Concepts document, where it 
> refers to RFC-3066

Then Concepts has it wrong.

> >>  IL("sss"@ttt^^rdf:XMLLiteral) is the XML canonical form of the XML document
> >  > <rdf lang="ttt">sss</rdf>
> >
> >This does not correspond with the treatment in RDF Concepts.
> 
> Well, I copied it from there. But I see that I was referring to an 
> older draft, sorry. That should be <rdf-wrapper 
> lang="ttt">sss</rdf-wrapper>.  Also, if I follow the text of the 
> Concepts document correctly then the case without the language tag 
> also needs to be rewritten.
> 
> What I should do, obviously, is simply refer to the Concepts doc and 
> use the terminology there. Then the statement of the condition would 
> be as follows:
> 
> if sss is well-balanced, self-contained XML element content and ttt 
> is a language identifier [RFC-3066] then 
> IL("sss"[@ttt]^^rdf:XMLLiteral) is the canonical form of the XML 
> document corresponding to the pair <sss, ttt>, as defined in [RDF 
> Concepts]; and otherwise,  IL("sss"[@ttt]^^rdf:XMLLiteral) is not in 
> LV.

This is now consistent with RDF Concepts.  However, the treatment in RDF
Concepts is ridiculous.  Why in the world should the meaning of an RDF XML
Literal include this wrapper junk?   

> I'll give the full translation in the Lbase table, though, with all 
> the distinct cases written out in full (that is, six distinct cases 
> for RDF literals).
> 
> Pat
> 
> >
> >>  and otherwise IL("sss"[@ttt]^^rdf:XMLLiteral) is not in LV
> >>  ---
> >>
> >>  Pat
> >
> >peter

peter
Received on Wednesday, 5 February 2003 11:55:49 EST

This archive was generated by hypermail pre-2.1.9 : Wednesday, 3 September 2003 09:55:48 EDT