Re: 2001-09-07#5 Literals

Short version: "SHOULD" in literal equality considered dangerous.

Long version:

From
http://lists.w3.org/Archives/Public/w3c-rdfcore-wg/2001Sep/att-0341/01-liter
als.txt
in
http://lists.w3.org/Archives/Public/w3c-rdfcore-wg/2001Sep/0341.html

 [4]
 When comparing two RDF Literals, their Unicode strings MUST be
 equal for the RDF Literals to compare as equal. If both Literals
 have language tags, these tags MUST be equal for the Literals to
 be considered equal. If two Literals are found with equal Unicode
 strings but only one has a language tag, the Literals SHOULD NOT
 be considered equal.


The idea of any "SHOULD" in the definition of equality for literals for any
language
give me the creeps.  A weakness at the bottom of the foundation tends to
imply
bad things for the rest.  I agent A's assertion that  x=y  can be translated
into
a belief by agent B that x may or not equal y depending on how agent A's
author
read the spec, then I find it difficult to see how we would build anything
else
on top of it.  I would suggest to the group come clean one way or the
other - if language tags are in, make their comparison mandatory.

For example, I could see this becoming a security hole in anything built
on top of RDF.  Silly example: I give my name (labeled as French) to pay for
something - the merchant checks it against my card, ignoring the
language tag difference, but later I can't be made to pay the bill
as the debt was by someone whose name was not my name.
[Insert more realistic example here].

For all <span xml:lang="gr">x</span> there exists y such that y > x.

I am nervous about the effects of langauge tags, I must say.
I can see that we will instantly need Properties for dismantling  the
language
and the string, so that rules can be written which ignore the tag if
necessary.
After all, 99.9% of the string processing going on in all the various
languages,
strings is strings, with no tags attached (and vice versa). I can see the
hidden tag creeping up and bringing systems down - and I don't think
SHOULD is an answer.

I am wondering about all the strings I have written and whether they
are really in English.  (What about language tags, for example?  :-)

Presumably the alternative choices would have been to deprecate the
language tags on RDF literals, in favor of either using XML
with parsetype literal, <d:name rdf:parseType="literal"><span
xml:lang="fr">chat</></>
or RDF itself

d:name    [ lang:french "chat" ];

The latter I of course find by far the most manageable.
But I am sure you have all been all around the options.

-- Tim BL, as random member of RDF-IG

Received on Thursday, 18 October 2001 12:07:29 UTC