"2"^^xsd:integer = "II"^^roman:numeral

We seem to be stopped on the issue that
  "2"^^xsd:integer != "II"^^roman:numeral
will test true in a SPARQL implementation and false in an extended
SPARQL implementation. This comes from the overloaded = operator:
  numeric = numeric
  RDF term = RDF term
If the right side of the test is not recognized to be a numeric, the
test is whether they are the same RDF term (clearly not). Adding
roman:numeral support allows the right side to be numeric, and the
value is the same left side.

PROPOSE: change
  RDF term = RDF term
to
  sameTermAs(RDF term, RDF term)
strike
  RDF term != RDF term
and strike
[[
When selecting the operator definition for a given set of parameters,
the definition with the most specific parameters applies. For
instance, when evaluating xsd:integer = xsd:signedInt, the definition
for = with two numeric parameters applies, rather than the one with
two RDF terms. The table is arranged so that upper-most viable
candiate is the most specific.
]]
-- 
-eric

office: +81.466.49.1170 W3C, Keio Research Institute at SFC,
                        Shonan Fujisawa Campus, Keio University,
                        5322 Endo, Fujisawa, Kanagawa 252-8520
                        JAPAN
        +1.617.258.5741 NE43-344, MIT, Cambridge, MA 02144 USA
cell:   +81.90.6533.3882

(eric@w3.org)
Feel free to forward this message to any list for any purpose other than
email address distribution.

Received on Monday, 19 December 2005 14:50:40 UTC