W3C home > Mailing lists > Public > w3c-rdfcore-wg@w3.org > October 2001

Re: 2001-09-07#5 Literals

From: Tim Berners-Lee <timbl@w3.org>
Date: Thu, 18 Oct 2001 12:07:30 -0400
Message-ID: <014701c157ee$fd7327e0$6801a8c0@CREST>
To: <w3c-rdfcore-wg@w3.org>
Short version: "SHOULD" in literal equality considered dangerous.

Long version:


 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
give me the creeps.  A weakness at the bottom of the foundation tends to
bad things for the rest.  I agent A's assertion that  x=y  can be translated
a belief by agent B that x may or not equal y depending on how agent A's
read the spec, then I find it difficult to see how we would build anything
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
and the string, so that rules can be written which ignore the tag if
After all, 99.9% of the string processing going on in all the various
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
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

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 20:24:05 UTC