- From: Andy Seaborne <andy.seaborne@topquadrant.com>
- Date: Mon, 25 Mar 2019 18:12:17 +0000
- To: Håvard Ottestad <hmottestad@gmail.com>
- Cc: public-shacl@w3.org
- Message-ID: <CAONNdY+Jod+EnpzecOh1Cct_zsxqYskfAx_svKvLNUhMcKyKqg@mail.gmail.com>
On Mon, 25 Mar 2019 at 16:56, Håvard Ottestad <hmottestad@gmail.com> wrote: > Hi, > > I came across this little bugger in the test-suite and I would like to > propose to have it removed. > > I’m talking about the uniqueLang-002 test which contains: sh:uniqueLang "1"^^xsd:boolean > . > > The W3C RDF Turtle 1.1 spec mentions that there are only two legal values > for booleans (true or false): https://www.w3.org/TR/turtle/#booleans > That is referring to the short forms true and false in syntax. The Turtle spec ought really to say which RDF term it is short for; the canonical form being the obvious choice. (It is supposed to be the same as SPARQL sec 4.1.2 - seems the text didn't get copied over.) > It links to the XML Schema definition of xsd:boolean where there are four > legal syntax values for boolean: true, false, 1, 0 > > It furthermore states that there are only two canonical values for > boolean: true, false > > https://www.w3.org/TR/xmlschema-2/#boolean > > The definition in the SHACL spec is as follows: > ########### > If $uniqueLang is true then for each non-empty language tag that is used > by at least two value nodes, there is a validation result. > ########### > > My argument is that, unless the SHACL spec specifies the syntactical > representation of the boolean, then it is moot to have a test that checks > the syntax rather than the semantics. > I agree that "true"^^xsd:boolean or true should be used in line with the end of sec 1.2 Andy > Regards, > Håvard M. Ottestad > (developer of the RDF4J incremental SHACL engine) >
Received on Monday, 25 March 2019 18:12:51 UTC