Skip to content

Commit b812723

Browse files
authored
SPARQL 1.0: cover all "main" numerical datatypes with base + - * / operators (#261)
1 parent baa9827 commit b812723

15 files changed

Lines changed: 1071 additions & 0 deletions
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
@prefix : <http://example.org/> .
2+
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
3+
4+
:integer :p "3"^^xsd:integer .
5+
:decimal :p "3"^^xsd:decimal .
6+
:float :p "3"^^xsd:float .
7+
:fdouble :p "3"^^xsd:double .

sparql/sparql10/expr-ops/index.html

Lines changed: 150 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -368,6 +368,156 @@ <h2>
368368
</dd>
369369
</dl>
370370
</dd>
371+
<dt id='add-numbers-cast'>
372+
<a class='testlink' href='#add-numbers-cast'>
373+
add-numbers-cast:
374+
</a>
375+
<span about='http://www.w3.org/2001/sw/DataAccess/tests/data-r2/expr-ops/manifest#add-numbers-cast' property='mf:name'>+ operator on number mixed datatypes</span>
376+
</dt>
377+
<dd inlist='true' property='mf:entry' resource='http://www.w3.org/2001/sw/DataAccess/tests/data-r2/expr-ops/manifest#add-numbers-cast' typeof='mf:QueryEvaluationTest'>
378+
<div property='rdfs:comment'>
379+
</div>
380+
<dl class='test-detail'>
381+
<dt>type</dt>
382+
<dd>mf:QueryEvaluationTest</dd>
383+
<dt>approval</dt>
384+
<dd property='mf:approval' resource=''></dd>
385+
<dt>action</dt>
386+
<dd>
387+
<dl class='test-detail'>
388+
</dl>
389+
</dd>
390+
<dt>result</dt>
391+
<dd>
392+
<a href='result-add-numbers-cast.srx' property='mf:result'>result-add-numbers-cast.srx</a>
393+
</dd>
394+
</dl>
395+
</dd>
396+
<dt id='subtract-numbers-cast'>
397+
<a class='testlink' href='#subtract-numbers-cast'>
398+
subtract-numbers-cast:
399+
</a>
400+
<span about='http://www.w3.org/2001/sw/DataAccess/tests/data-r2/expr-ops/manifest#subtract-numbers-cast' property='mf:name'>- operator on number mixed datatypes</span>
401+
</dt>
402+
<dd inlist='true' property='mf:entry' resource='http://www.w3.org/2001/sw/DataAccess/tests/data-r2/expr-ops/manifest#subtract-numbers-cast' typeof='mf:QueryEvaluationTest'>
403+
<div property='rdfs:comment'>
404+
</div>
405+
<dl class='test-detail'>
406+
<dt>type</dt>
407+
<dd>mf:QueryEvaluationTest</dd>
408+
<dt>approval</dt>
409+
<dd property='mf:approval' resource=''></dd>
410+
<dt>action</dt>
411+
<dd>
412+
<dl class='test-detail'>
413+
</dl>
414+
</dd>
415+
<dt>result</dt>
416+
<dd>
417+
<a href='result-subtract-numbers-cast.srx' property='mf:result'>result-subtract-numbers-cast.srx</a>
418+
</dd>
419+
</dl>
420+
</dd>
421+
<dt id='multiply-numbers-cast'>
422+
<a class='testlink' href='#multiply-numbers-cast'>
423+
multiply-numbers-cast:
424+
</a>
425+
<span about='http://www.w3.org/2001/sw/DataAccess/tests/data-r2/expr-ops/manifest#multiply-numbers-cast' property='mf:name'>* operator on number mixed datatypes</span>
426+
</dt>
427+
<dd inlist='true' property='mf:entry' resource='http://www.w3.org/2001/sw/DataAccess/tests/data-r2/expr-ops/manifest#multiply-numbers-cast' typeof='mf:QueryEvaluationTest'>
428+
<div property='rdfs:comment'>
429+
</div>
430+
<dl class='test-detail'>
431+
<dt>type</dt>
432+
<dd>mf:QueryEvaluationTest</dd>
433+
<dt>approval</dt>
434+
<dd property='mf:approval' resource=''></dd>
435+
<dt>action</dt>
436+
<dd>
437+
<dl class='test-detail'>
438+
</dl>
439+
</dd>
440+
<dt>result</dt>
441+
<dd>
442+
<a href='result-multiply-numbers-cast.srx' property='mf:result'>result-multiply-numbers-cast.srx</a>
443+
</dd>
444+
</dl>
445+
</dd>
446+
<dt id='divide-numbers-cast'>
447+
<a class='testlink' href='#divide-numbers-cast'>
448+
divide-numbers-cast:
449+
</a>
450+
<span about='http://www.w3.org/2001/sw/DataAccess/tests/data-r2/expr-ops/manifest#divide-numbers-cast' property='mf:name'>/ operator on number mixed datatypes</span>
451+
</dt>
452+
<dd inlist='true' property='mf:entry' resource='http://www.w3.org/2001/sw/DataAccess/tests/data-r2/expr-ops/manifest#divide-numbers-cast' typeof='mf:QueryEvaluationTest'>
453+
<div property='rdfs:comment'>
454+
</div>
455+
<dl class='test-detail'>
456+
<dt>type</dt>
457+
<dd>mf:QueryEvaluationTest</dd>
458+
<dt>approval</dt>
459+
<dd property='mf:approval' resource=''></dd>
460+
<dt>action</dt>
461+
<dd>
462+
<dl class='test-detail'>
463+
</dl>
464+
</dd>
465+
<dt>result</dt>
466+
<dd>
467+
<a href='result-divide-numbers-cast.srx' property='mf:result'>result-divide-numbers-cast.srx</a>
468+
</dd>
469+
</dl>
470+
</dd>
471+
<dt id='unplus-2'>
472+
<a class='testlink' href='#unplus-2'>
473+
unplus-2:
474+
</a>
475+
<span about='http://www.w3.org/2001/sw/DataAccess/tests/data-r2/expr-ops/manifest#unplus-2' property='mf:name'>Unary Plus with various datatype</span>
476+
</dt>
477+
<dd inlist='true' property='mf:entry' resource='http://www.w3.org/2001/sw/DataAccess/tests/data-r2/expr-ops/manifest#unplus-2' typeof='mf:QueryEvaluationTest'>
478+
<div property='rdfs:comment'>
479+
</div>
480+
<dl class='test-detail'>
481+
<dt>type</dt>
482+
<dd>mf:QueryEvaluationTest</dd>
483+
<dt>approval</dt>
484+
<dd property='mf:approval' resource=''></dd>
485+
<dt>action</dt>
486+
<dd>
487+
<dl class='test-detail'>
488+
</dl>
489+
</dd>
490+
<dt>result</dt>
491+
<dd>
492+
<a href='result-unplus-2.srx' property='mf:result'>result-unplus-2.srx</a>
493+
</dd>
494+
</dl>
495+
</dd>
496+
<dt id='unminus-2'>
497+
<a class='testlink' href='#unminus-2'>
498+
unminus-2:
499+
</a>
500+
<span about='http://www.w3.org/2001/sw/DataAccess/tests/data-r2/expr-ops/manifest#unminus-2' property='mf:name'>Unary Minus with various datatype</span>
501+
</dt>
502+
<dd inlist='true' property='mf:entry' resource='http://www.w3.org/2001/sw/DataAccess/tests/data-r2/expr-ops/manifest#unminus-2' typeof='mf:QueryEvaluationTest'>
503+
<div property='rdfs:comment'>
504+
</div>
505+
<dl class='test-detail'>
506+
<dt>type</dt>
507+
<dd>mf:QueryEvaluationTest</dd>
508+
<dt>approval</dt>
509+
<dd property='mf:approval' resource=''></dd>
510+
<dt>action</dt>
511+
<dd>
512+
<dl class='test-detail'>
513+
</dl>
514+
</dd>
515+
<dt>result</dt>
516+
<dd>
517+
<a href='result-unminus-2.srx' property='mf:result'>result-unminus-2.srx</a>
518+
</dd>
519+
</dl>
520+
</dd>
371521
</dl>
372522
</div>
373523
<footer>

sparql/sparql10/expr-ops/manifest.ttl

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,12 @@
1515
:dateTime-ge-2
1616
:dateTime-lt-2
1717
:dateTime-gt-2
18+
:add-numbers-cast
19+
:subtract-numbers-cast
20+
:multiply-numbers-cast
21+
:divide-numbers-cast
22+
:unplus-2
23+
:unminus-2
1824
).
1925

2026

@@ -126,3 +132,51 @@
126132
qt:data <data-dateTime.ttl> ] ;
127133
mf:result <result-dateTime-gt-2.srx>
128134
.
135+
136+
:add-numbers-cast a mf:QueryEvaluationTest ;
137+
mf:name "+ operator on number mixed datatypes" ;
138+
mf:action
139+
[ qt:query <query-add-numbers-cast.rq> ;
140+
qt:data <data-numbers.ttl> ] ;
141+
mf:result <result-add-numbers-cast.srx>
142+
.
143+
144+
:subtract-numbers-cast a mf:QueryEvaluationTest ;
145+
mf:name "- operator on number mixed datatypes" ;
146+
mf:action
147+
[ qt:query <query-subtract-numbers-cast.rq> ;
148+
qt:data <data-numbers.ttl> ] ;
149+
mf:result <result-subtract-numbers-cast.srx>
150+
.
151+
152+
:multiply-numbers-cast a mf:QueryEvaluationTest ;
153+
mf:name "* operator on number mixed datatypes" ;
154+
mf:action
155+
[ qt:query <query-multiply-numbers-cast.rq> ;
156+
qt:data <data-numbers.ttl> ] ;
157+
mf:result <result-multiply-numbers-cast.srx>
158+
.
159+
160+
:divide-numbers-cast a mf:QueryEvaluationTest ;
161+
mf:name "/ operator on number mixed datatypes" ;
162+
mf:action
163+
[ qt:query <query-divide-numbers-cast.rq> ;
164+
qt:data <data-numbers.ttl> ] ;
165+
mf:result <result-divide-numbers-cast.srx>
166+
.
167+
168+
:unplus-2 a mf:QueryEvaluationTest ;
169+
mf:name "Unary Plus with various datatype" ;
170+
mf:action
171+
[ qt:query <query-unplus-2.rq> ;
172+
qt:data <data-numbers.ttl> ] ;
173+
mf:result <result-unplus-2.srx>
174+
.
175+
176+
:unminus-2 a mf:QueryEvaluationTest ;
177+
mf:name "Unary Minus with various datatype" ;
178+
mf:action
179+
[ qt:query <query-unminus-2.rq> ;
180+
qt:data <data-numbers.ttl> ] ;
181+
mf:result <result-unminus-2.srx>
182+
.
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
PREFIX : <http://example.org/>
2+
SELECT ?left ?right (?left + ?right AS ?result) WHERE {
3+
_:l :p ?left .
4+
_:r :p ?right .
5+
}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
PREFIX : <http://example.org/>
2+
SELECT ?left ?right (?left / ?right AS ?result) WHERE {
3+
_:l :p ?left .
4+
_:r :p ?right .
5+
}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
PREFIX : <http://example.org/>
2+
SELECT ?left ?right (?left * ?right AS ?result) WHERE {
3+
_:l :p ?left .
4+
_:r :p ?right .
5+
}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
PREFIX : <http://example.org/>
2+
SELECT ?left ?right (?left - ?right AS ?result) WHERE {
3+
_:l :p ?left .
4+
_:r :p ?right .
5+
}
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
PREFIX : <http://example.org/>
2+
SELECT ?v (-?v as ?result) WHERE {
3+
_:l :p ?v .
4+
}
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
PREFIX : <http://example.org/>
2+
SELECT ?v (+?v as ?result) WHERE {
3+
_:l :p ?v .
4+
}

0 commit comments

Comments
 (0)