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)