W3C home > Mailing lists > Public > public-rdf-dawg-comments@w3.org > August 2018

Bug: SPARQL 1.1 Query Language / RDFterm-equal

From: Hans-Juergen Rennau <hrennau@yahoo.de>
Date: Tue, 28 Aug 2018 22:51:28 +0000 (UTC)
To: "public-rdf-dawg-comments@w3.org" <public-rdf-dawg-comments@w3.org>
Message-ID: <957538762.6285356.1535496688920@mail.yahoo.com>
The section specifies RDFterm-equal in an inconsistent way.
term1 and term2 are the same if any of the following is true:...term1 and term2 are equivalent literals as defined in 6.5.1 Literal Equality of [CONCEPTS]....

Following the link to "6.5.1 Literal Equality" one finds:

6.5.1 Literal Equality
Two literals are equal if and only if all of the following hold:
   - The strings of the two lexical forms compare equal, character by character.
   - Either both or neither have language tags.
   - The language tags, if any, compare equal.
   - Either both or neither have datatype URIs.
   - The two datatype URIs, if any, compare equal, character by character.

Note that the text does not define "equivalent literals", but literal equality, and this equality is described as syntactic equality.
However, the section includes an example in which RDFterm-equal returns true in the case of value equality without literal equality:"2004-12-31T19:00:00-05:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> xsd:dateTime("2005-01-01T00:00:00Z")A footnote following the example confirms the use of value equality, opposed to syntactic equality:"Invoking RDFterm-equal on two typed literals tests for equivalent values."
Conclusion: the specification of RDFterm-equal is inconsistent, describing it in one place to mean literal equality and in another place to mean value equality.
Additional problem: the sentence from the beginning of the section:
"produces a type error if the arguments are both literal but are not the same RDF term *;"
is quite confusing - 
(a) what is the meaning of the hyphen preceding the semicolon?(b) why should two literals which are not the same RDF term produce a type error, if a boolean assessment of equality is expected(c) the statement is contradicted by both examples where arguments which are literals without equality do not produce a type error. 

Hans-Juergen Rennau
Received on Tuesday, 28 August 2018 22:52:13 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 28 August 2018 22:52:14 UTC