Skip to content

Commit 3ba4bc2

Browse files
kaseigkellogg
authored andcommitted
Add tests for xsd:boolean casting function.
1 parent 425b2a6 commit 3ba4bc2

File tree

4 files changed

+186
-0
lines changed

4 files changed

+186
-0
lines changed
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
PREFIX : <http://example.org/>
2+
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
3+
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
4+
SELECT
5+
?a
6+
?v
7+
(xsd:boolean(?v) AS ?boolean)
8+
WHERE {
9+
?a :p ?v .
10+
}
11+
ORDER BY ?s
Lines changed: 126 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,126 @@
1+
<?xml version="1.0"?>
2+
<sparql
3+
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
4+
xmlns:xs="http://www.w3.org/2001/XMLSchema#"
5+
xmlns="http://www.w3.org/2005/sparql-results#" >
6+
<head>
7+
<variable name="a"/>
8+
<variable name="v"/>
9+
<variable name="boolean"/>
10+
</head>
11+
<results>
12+
<result>
13+
<binding name="a"><uri>http://example.org/s01</uri></binding>
14+
<binding name="v"><uri>http://example.org/z</uri></binding>
15+
</result>
16+
<result>
17+
<binding name="a"><uri>http://example.org/s02</uri></binding>
18+
<binding name="v"><literal>string</literal></binding>
19+
</result>
20+
<result>
21+
<binding name="a"><uri>http://example.org/s03</uri></binding>
22+
<binding name="v"><literal>-10.2E3</literal></binding>
23+
</result>
24+
<result>
25+
<binding name="a"><uri>http://example.org/s04</uri></binding>
26+
<binding name="v"><literal>+33.3300</literal></binding>
27+
</result>
28+
<result>
29+
<binding name="a"><uri>http://example.org/s05</uri></binding>
30+
<binding name="v"><literal>0.0</literal></binding>
31+
</result>
32+
<result>
33+
<binding name="a"><uri>http://example.org/s06</uri></binding>
34+
<binding name="v"><literal>0</literal></binding>
35+
<binding name="boolean"><literal datatype="http://www.w3.org/2001/XMLSchema#boolean">false</literal></binding>
36+
</result>
37+
<result>
38+
<binding name="a"><uri>http://example.org/s07</uri></binding>
39+
<binding name="v"><literal>0E1</literal></binding>
40+
</result>
41+
<result>
42+
<binding name="a"><uri>http://example.org/s08</uri></binding>
43+
<binding name="v"><literal>1.0</literal></binding>
44+
</result>
45+
<result>
46+
<binding name="a"><uri>http://example.org/s09</uri></binding>
47+
<binding name="v"><literal>1</literal></binding>
48+
<binding name="boolean"><literal datatype="http://www.w3.org/2001/XMLSchema#boolean">true</literal></binding>
49+
</result>
50+
<result>
51+
<binding name="a"><uri>http://example.org/s10</uri></binding>
52+
<binding name="v"><literal>1E0</literal></binding>
53+
</result>
54+
<result>
55+
<binding name="a"><uri>http://example.org/s11</uri></binding>
56+
<binding name="v"><literal>13</literal></binding>
57+
</result>
58+
<result>
59+
<binding name="a"><uri>http://example.org/s12</uri></binding>
60+
<binding name="v"><literal>2002-10-10T17:00:00Z</literal></binding>
61+
</result>
62+
<result>
63+
<binding name="a"><uri>http://example.org/s13</uri></binding>
64+
<binding name="v"><literal>false</literal></binding>
65+
<binding name="boolean"><literal datatype="http://www.w3.org/2001/XMLSchema#boolean">false</literal></binding>
66+
</result>
67+
<result>
68+
<binding name="a"><uri>http://example.org/s14</uri></binding>
69+
<binding name="v"><literal>true</literal></binding>
70+
<binding name="boolean"><literal datatype="http://www.w3.org/2001/XMLSchema#boolean">true</literal></binding>
71+
</result>
72+
73+
74+
<result>
75+
<binding name="a"><uri>http://example.org/n01</uri></binding>
76+
<binding name="v"><literal datatype="http://www.w3.org/2001/XMLSchema#integer">0</literal></binding>
77+
<binding name="boolean"><literal datatype="http://www.w3.org/2001/XMLSchema#boolean">false</literal></binding>
78+
</result>
79+
<result>
80+
<binding name="a"><uri>http://example.org/n02</uri></binding>
81+
<binding name="v"><literal datatype="http://www.w3.org/2001/XMLSchema#integer">1</literal></binding>
82+
<binding name="boolean"><literal datatype="http://www.w3.org/2001/XMLSchema#boolean">true</literal></binding>
83+
</result>
84+
<result>
85+
<binding name="a"><uri>http://example.org/n03</uri></binding>
86+
<binding name="v"><literal datatype="http://www.w3.org/2001/XMLSchema#integer">-1</literal></binding>
87+
<binding name="boolean"><literal datatype="http://www.w3.org/2001/XMLSchema#boolean">true</literal></binding>
88+
</result>
89+
<result>
90+
<binding name="a"><uri>http://example.org/n04</uri></binding>
91+
<binding name="v"><literal datatype="http://www.w3.org/2001/XMLSchema#decimal">0.0</literal></binding>
92+
<binding name="boolean"><literal datatype="http://www.w3.org/2001/XMLSchema#boolean">false</literal></binding>
93+
</result>
94+
<result>
95+
<binding name="a"><uri>http://example.org/n05</uri></binding>
96+
<binding name="v"><literal datatype="http://www.w3.org/2001/XMLSchema#decimal">1.0</literal></binding>
97+
<binding name="boolean"><literal datatype="http://www.w3.org/2001/XMLSchema#boolean">true</literal></binding>
98+
</result>
99+
<result>
100+
<binding name="a"><uri>http://example.org/n06</uri></binding>
101+
<binding name="v"><literal datatype="http://www.w3.org/2001/XMLSchema#decimal">-1.0</literal></binding>
102+
<binding name="boolean"><literal datatype="http://www.w3.org/2001/XMLSchema#boolean">true</literal></binding>
103+
</result>
104+
<result>
105+
<binding name="a"><uri>http://example.org/n07</uri></binding>
106+
<binding name="v"><literal datatype="http://www.w3.org/2001/XMLSchema#double">0E1</literal></binding>
107+
<binding name="boolean"><literal datatype="http://www.w3.org/2001/XMLSchema#boolean">false</literal></binding>
108+
</result>
109+
<result>
110+
<binding name="a"><uri>http://example.org/n08</uri></binding>
111+
<binding name="v"><literal datatype="http://www.w3.org/2001/XMLSchema#double">1E0</literal></binding>
112+
<binding name="boolean"><literal datatype="http://www.w3.org/2001/XMLSchema#boolean">true</literal></binding>
113+
</result>
114+
<result>
115+
<binding name="a"><uri>http://example.org/n09</uri></binding>
116+
<binding name="v"><literal datatype="http://www.w3.org/2001/XMLSchema#float">0E1</literal></binding>
117+
<binding name="boolean"><literal datatype="http://www.w3.org/2001/XMLSchema#boolean">false</literal></binding>
118+
</result>
119+
<result>
120+
<binding name="a"><uri>http://example.org/n10</uri></binding>
121+
<binding name="v"><literal datatype="http://www.w3.org/2001/XMLSchema#float">1E0</literal></binding>
122+
<binding name="boolean"><literal datatype="http://www.w3.org/2001/XMLSchema#boolean">true</literal></binding>
123+
</result>
124+
</results>
125+
</sparql>
126+

sparql11/data-sparql11/cast/data.ttl

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
@prefix : <http://example.org/> .
2+
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
3+
4+
:s01 :p :z .
5+
:s02 :p "string" .
6+
:s03 :p "-10.2E3" .
7+
:s04 :p "+33.3300" .
8+
:s05 :p "0.0" .
9+
:s06 :p "0" .
10+
:s07 :p "0E1" .
11+
:s08 :p "1.0" .
12+
:s09 :p "1" .
13+
:s10 :p "1E0" .
14+
:s11 :p "13" .
15+
:s12 :p "2002-10-10T17:00:00Z" .
16+
:s13 :p "false" .
17+
:s14 :p "true" .
18+
19+
:n01 :p 0 .
20+
:n02 :p 1 .
21+
:n03 :p -1 .
22+
:n04 :p 0.0 .
23+
:n05 :p 1.0 .
24+
:n06 :p -1.0 .
25+
:n07 :p 0E1 .
26+
:n08 :p 1E0 .
27+
:n09 :p "0E1"^^xsd:float .
28+
:n10 :p "1E0"^^xsd:float .
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
2+
@prefix : <http://www.w3.org/2009/sparql/docs/tests/data-sparql11/bind/manifest#> .
3+
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
4+
@prefix mf: <http://www.w3.org/2001/sw/DataAccess/tests/test-manifest#> .
5+
@prefix qt: <http://www.w3.org/2001/sw/DataAccess/tests/test-query#> .
6+
@prefix dawgt: <http://www.w3.org/2001/sw/DataAccess/tests/test-dawg#> .
7+
8+
<> rdf:type mf:Manifest ;
9+
rdfs:label "Casting" ;
10+
mf:entries
11+
(
12+
:cast-bool
13+
) .
14+
15+
:cast-bool rdf:type mf:QueryEvaluationTest ;
16+
mf:name "xsd:boolean cast" ;
17+
dawgt:approval dawgt:Proposed ;
18+
mf:action
19+
[ qt:query <cast-bool.rq> ;
20+
qt:data <data.ttl> ] ;
21+
mf:result <cast-bool.srx> .

0 commit comments

Comments
 (0)