You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jena.apache.org by "Richard Cyganiak (JIRA)" <ji...@apache.org> on 2019/03/11 12:31:00 UTC

[jira] [Created] (JENA-1679) Effective boolean value for "NaN"^^xsd:float/xsd:double should be false

Richard Cyganiak created JENA-1679:
--------------------------------------

             Summary: Effective boolean value for "NaN"^^xsd:float/xsd:double should be false
                 Key: JENA-1679
                 URL: https://issues.apache.org/jira/browse/JENA-1679
             Project: Apache Jena
          Issue Type: Bug
         Environment: Tested on Jena 3.9
            Reporter: Richard Cyganiak


SPARQL 1.1 defines the [effective boolean value|https://www.w3.org/TR/sparql11-query/#ebv
] (EBV) of the special numeric value NaN as follows:

{quote}
If the argument is a numeric type or a typed literal with a datatype derived from a numeric type, and it has a valid lexical form, the EBV is false if the operand value is NaN or is numerically equal to zero; otherwise the EBV is true.
{quote}

Jena however treats it as {{true}}. The following queries both return {{true}} but should return {{false}} (using {{!(!expr))}} to get the EBV):

{noformat}
SELECT (!(!"NaN"^^<http://www.w3.org/2001/XMLSchema#double>) AS ?x) WHERE {}
SELECT (!(!"NaN"^^<http://www.w3.org/2001/XMLSchema#float>) AS ?x) WHERE {}
{noformat}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)