datatype literals and lang codes

Thinking in the bath about this issue and what might be bothering DanC with 
the proposal we thought we agreed on Friday.  I came up with the following 
test case, which may or may not reflect what he had in mind:

Does:

  <a> <b> "chat"<xsd:string>-"en" .

datatype entail:

  <a> <b> "chat"<xsd:string>-"fr" .

In the case where the literal denotes just the string "chat", then they 
do.  In the case where it denotes a pair, then they do not.

I personally find it hard to reconcile the datatype entailment:

   <a> <b> "foo"<dt1>
entails
   <a> <b> "bar"<dt2>

whenever dt1.value("foo") = dt2.value("bar")

with the notion that datatype literals have lang codes.  The datatype 
entailment follows from the intuition that datatype literals denote a value 
from from the value space of a literal.  For values to have lang codes, 
that the French integer "10" is different to the English integer "10" seems 
to me likely to cause considerable user confusion.

Thus if the datatype entailment holds, then it seems that the entailment I 
started with:

  <a> <b> "chat"<xsd:string>-"en" .
datatype entail:
  <a> <b> "chat"<xsd:string>-"fr" .

must also hold and I wonder if this rather undermines Patrick's intent.  At 
the very least I suggest it will lead to both user confusion and 
interoperability problems.

Jeremy has the task of resolving this issue.  I am drawing his attention to 
these "bath thoughts" and copying the list so that folks can comment on the 
analysis.

Brian

Received on Monday, 21 October 2002 03:01:08 UTC