sparql 3.2.5 → 3.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +8 -8
- data/VERSION +1 -1
- data/lib/sparql/algebra/operator/group.rb +3 -3
- data/lib/sparql/grammar/parser11.rb +2 -2
- metadata +42 -54
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ead530e69a39c8dc1e436580c1e77360f5fdf141a9eaf8c07f8ca55be17c9ca2
|
4
|
+
data.tar.gz: d4b59bb569ea2baffb9be7196208f727ad21befe4cd3274a8347703f92d1aa0d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ce81b4e2b4cf51d605feea78a09f31c923a5dc0ac7ca2d59fbff9274f1912c847e05d6dbd8b77f1d21f7e05acfaf3cd83372bf77c33ffd04559ef213629182fb
|
7
|
+
data.tar.gz: fd507ab24315f5c637cee2dc88ff7729264c1d26f6557214ab861065e0fef5ec3728121bb8ddbc0f608e5f6c62781fb32e0dae1c5367bf9690c29c1cf36afc9d
|
data/README.md
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
An implementation of [SPARQL][] for [RDF.rb][].
|
4
4
|
|
5
|
-
[![Gem Version](https://badge.fury.io/rb/sparql.
|
5
|
+
[![Gem Version](https://badge.fury.io/rb/sparql.svg)](https://badge.fury.io/rb/sparql)
|
6
6
|
[![Build Status](https://github.com/ruby-rdf/sparql/workflows/CI/badge.svg?branch=develop)](https://github.com/ruby-rdf/sparql/actions?query=workflow%3ACI)
|
7
7
|
[![Coverage Status](https://coveralls.io/repos/ruby-rdf/sparql/badge.svg?branch=develop)](https://coveralls.io/r/ruby-rdf/sparql?branch=develop)
|
8
8
|
[![Gitter chat](https://badges.gitter.im/ruby-rdf/rdf.png)](https://gitter.im/ruby-rdf/rdf)
|
@@ -308,7 +308,7 @@ a full set of RDF formats.
|
|
308
308
|
### Command line processing
|
309
309
|
|
310
310
|
sparql execute --dataset etc/doap.ttl etc/from_default.rq
|
311
|
-
sparql execute -e "SELECT * FROM <etc/doap.ttl> WHERE { ?s ?p ?o }"
|
311
|
+
sparql execute --dataset etc/doap.ttl -e "SELECT * FROM <etc/doap.ttl> WHERE { ?s ?p ?o }"
|
312
312
|
|
313
313
|
# Generate SPARQL Algebra Expression (SSE) format
|
314
314
|
sparql parse etc/input.rq
|
@@ -316,7 +316,7 @@ a full set of RDF formats.
|
|
316
316
|
|
317
317
|
# Generate SPARQL Query from SSE
|
318
318
|
sparql parse --sse etc/input.sse --format sparql
|
319
|
-
sparql parse --sse --format sparql -e "(dataset (<
|
319
|
+
sparql parse --sse --format sparql -e "(dataset (<etc/doap.ttl>) (bgp (triple ?s ?p ?o))))"
|
320
320
|
|
321
321
|
# Run query using SSE input
|
322
322
|
sparql execute --dataset etc/doap.ttl --sse etc/input.sse
|
@@ -397,14 +397,14 @@ Full documentation available on [Rubydoc.info][SPARQL doc]
|
|
397
397
|
|
398
398
|
## Dependencies
|
399
399
|
|
400
|
-
* [Ruby](https://ruby-lang.org/) (>=
|
401
|
-
* [RDF.rb](https://rubygems.org/gems/rdf) (~> 3.
|
402
|
-
* [SPARQL::Client](https://rubygems.org/gems/sparql-client) (~> 3.
|
400
|
+
* [Ruby](https://ruby-lang.org/) (>= 3.0)
|
401
|
+
* [RDF.rb](https://rubygems.org/gems/rdf) (~> 3.3)
|
402
|
+
* [SPARQL::Client](https://rubygems.org/gems/sparql-client) (~> 3.3)
|
403
403
|
* [SXP](https://rubygems.org/gems/sxp) (~> 1.2)
|
404
404
|
* [Builder](https://rubygems.org/gems/builder) (~> 3.2)
|
405
405
|
* [JSON](https://rubygems.org/gems/json) (~> 2.6)
|
406
|
-
* Soft dependency on [Linked Data][] (>= 3.
|
407
|
-
* Soft dependency on [Nokogiri](https://rubygems.org/gems/nokogiri) (~> 1.
|
406
|
+
* Soft dependency on [Linked Data][] (>= 3.3)
|
407
|
+
* Soft dependency on [Nokogiri](https://rubygems.org/gems/nokogiri) (~> 1.15)
|
408
408
|
Falls back to REXML for XML parsing Builder for XML serializing. Nokogiri is much more efficient
|
409
409
|
* Soft dependency on [Equivalent XML](https://rubygems.org/gems/equivalent-xml) (>= 0.6)
|
410
410
|
Equivalent XML performs more efficient comparisons of XML Literals when Nokogiri is included
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
3.
|
1
|
+
3.3.0
|
@@ -35,10 +35,10 @@ module SPARQL; module Algebra
|
|
35
35
|
# @example SSE (HAVING aggregate)
|
36
36
|
# (prefix ((: <http://www.example.org/>))
|
37
37
|
# (project (?s ?avg)
|
38
|
-
# (filter (<= ??.
|
38
|
+
# (filter (<= ??.1 2.0)
|
39
39
|
# (extend ((?avg ??.0))
|
40
|
-
# (group (?s) ((??.0 (avg ?o)))
|
41
|
-
# (bgp (triple ?s ?p ?o))))))
|
40
|
+
# (group (?s) ((??.0 (avg ?o)) (??.1 (avg ?o)))
|
41
|
+
# (bgp (triple ?s ?p ?o)))))))
|
42
42
|
#
|
43
43
|
# @example SPARQL Grammar (non-trivial filters)
|
44
44
|
# PREFIX : <http://example.com/data/#>
|
@@ -1610,7 +1610,7 @@ module SPARQL::Grammar
|
|
1610
1610
|
if data[:_Compare_Numeric]
|
1611
1611
|
add_prod_datum(:Expression, SPARQL::Algebra::Expression.for(data[:_Compare_Numeric].insert(1, *data[:Expression])))
|
1612
1612
|
elsif data[:in]
|
1613
|
-
expr = (data[:Expression] + data[:in]).reject {|v| v.
|
1613
|
+
expr = (data[:Expression] + data[:in]).reject {|v| v.eql?(RDF.nil)}
|
1614
1614
|
add_prod_datum(:Expression, SPARQL::Algebra::Expression.for(expr.unshift(:in)))
|
1615
1615
|
elsif data[:notin]
|
1616
1616
|
expr = (data[:Expression] + data[:notin]).reject {|v| v.equal?(RDF.nil)}
|
@@ -2452,7 +2452,7 @@ module SPARQL::Grammar
|
|
2452
2452
|
|
2453
2453
|
# Replace aggregates in expr as above
|
2454
2454
|
expr.replace_aggregate! do |function|
|
2455
|
-
if avf = aggregates.detect {|(_, f)| f
|
2455
|
+
if avf = aggregates.detect {|(_, f)| f.equal?(function)}
|
2456
2456
|
avf.first
|
2457
2457
|
else
|
2458
2458
|
# Allocate a temporary variable for this function, and retain the mapping for outside the group
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sparql
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.
|
4
|
+
version: 3.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Gregg Kellogg
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2023-
|
12
|
+
date: 2023-08-26 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rdf
|
@@ -17,54 +17,42 @@ dependencies:
|
|
17
17
|
requirements:
|
18
18
|
- - "~>"
|
19
19
|
- !ruby/object:Gem::Version
|
20
|
-
version: '3.
|
21
|
-
- - ">="
|
22
|
-
- !ruby/object:Gem::Version
|
23
|
-
version: 3.2.8
|
20
|
+
version: '3.3'
|
24
21
|
type: :runtime
|
25
22
|
prerelease: false
|
26
23
|
version_requirements: !ruby/object:Gem::Requirement
|
27
24
|
requirements:
|
28
25
|
- - "~>"
|
29
26
|
- !ruby/object:Gem::Version
|
30
|
-
version: '3.
|
31
|
-
- - ">="
|
32
|
-
- !ruby/object:Gem::Version
|
33
|
-
version: 3.2.8
|
27
|
+
version: '3.3'
|
34
28
|
- !ruby/object:Gem::Dependency
|
35
29
|
name: rdf-aggregate-repo
|
36
30
|
requirement: !ruby/object:Gem::Requirement
|
37
31
|
requirements:
|
38
32
|
- - "~>"
|
39
33
|
- !ruby/object:Gem::Version
|
40
|
-
version: '3.
|
34
|
+
version: '3.3'
|
41
35
|
type: :runtime
|
42
36
|
prerelease: false
|
43
37
|
version_requirements: !ruby/object:Gem::Requirement
|
44
38
|
requirements:
|
45
39
|
- - "~>"
|
46
40
|
- !ruby/object:Gem::Version
|
47
|
-
version: '3.
|
41
|
+
version: '3.3'
|
48
42
|
- !ruby/object:Gem::Dependency
|
49
43
|
name: ebnf
|
50
44
|
requirement: !ruby/object:Gem::Requirement
|
51
45
|
requirements:
|
52
46
|
- - "~>"
|
53
47
|
- !ruby/object:Gem::Version
|
54
|
-
version: '2.
|
55
|
-
- - ">="
|
56
|
-
- !ruby/object:Gem::Version
|
57
|
-
version: 2.3.1
|
48
|
+
version: '2.4'
|
58
49
|
type: :runtime
|
59
50
|
prerelease: false
|
60
51
|
version_requirements: !ruby/object:Gem::Requirement
|
61
52
|
requirements:
|
62
53
|
- - "~>"
|
63
54
|
- !ruby/object:Gem::Version
|
64
|
-
version: '2.
|
65
|
-
- - ">="
|
66
|
-
- !ruby/object:Gem::Version
|
67
|
-
version: 2.3.1
|
55
|
+
version: '2.4'
|
68
56
|
- !ruby/object:Gem::Dependency
|
69
57
|
name: builder
|
70
58
|
requirement: !ruby/object:Gem::Requirement
|
@@ -72,6 +60,9 @@ dependencies:
|
|
72
60
|
- - "~>"
|
73
61
|
- !ruby/object:Gem::Version
|
74
62
|
version: '3.2'
|
63
|
+
- - ">="
|
64
|
+
- !ruby/object:Gem::Version
|
65
|
+
version: 3.2.4
|
75
66
|
type: :runtime
|
76
67
|
prerelease: false
|
77
68
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -79,6 +70,9 @@ dependencies:
|
|
79
70
|
- - "~>"
|
80
71
|
- !ruby/object:Gem::Version
|
81
72
|
version: '3.2'
|
73
|
+
- - ">="
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: 3.2.4
|
82
76
|
- !ruby/object:Gem::Dependency
|
83
77
|
name: logger
|
84
78
|
requirement: !ruby/object:Gem::Requirement
|
@@ -99,138 +93,132 @@ dependencies:
|
|
99
93
|
requirements:
|
100
94
|
- - "~>"
|
101
95
|
- !ruby/object:Gem::Version
|
102
|
-
version: '1.
|
103
|
-
- - ">="
|
104
|
-
- !ruby/object:Gem::Version
|
105
|
-
version: 1.2.2
|
96
|
+
version: '1.3'
|
106
97
|
type: :runtime
|
107
98
|
prerelease: false
|
108
99
|
version_requirements: !ruby/object:Gem::Requirement
|
109
100
|
requirements:
|
110
101
|
- - "~>"
|
111
102
|
- !ruby/object:Gem::Version
|
112
|
-
version: '1.
|
113
|
-
- - ">="
|
114
|
-
- !ruby/object:Gem::Version
|
115
|
-
version: 1.2.2
|
103
|
+
version: '1.3'
|
116
104
|
- !ruby/object:Gem::Dependency
|
117
105
|
name: sparql-client
|
118
106
|
requirement: !ruby/object:Gem::Requirement
|
119
107
|
requirements:
|
120
108
|
- - "~>"
|
121
109
|
- !ruby/object:Gem::Version
|
122
|
-
version: '3.
|
123
|
-
- - ">="
|
124
|
-
- !ruby/object:Gem::Version
|
125
|
-
version: 3.2.1
|
110
|
+
version: '3.3'
|
126
111
|
type: :runtime
|
127
112
|
prerelease: false
|
128
113
|
version_requirements: !ruby/object:Gem::Requirement
|
129
114
|
requirements:
|
130
115
|
- - "~>"
|
131
116
|
- !ruby/object:Gem::Version
|
132
|
-
version: '3.
|
133
|
-
- - ">="
|
134
|
-
- !ruby/object:Gem::Version
|
135
|
-
version: 3.2.1
|
117
|
+
version: '3.3'
|
136
118
|
- !ruby/object:Gem::Dependency
|
137
119
|
name: rdf-xsd
|
138
120
|
requirement: !ruby/object:Gem::Requirement
|
139
121
|
requirements:
|
140
122
|
- - "~>"
|
141
123
|
- !ruby/object:Gem::Version
|
142
|
-
version: '3.
|
124
|
+
version: '3.3'
|
143
125
|
type: :runtime
|
144
126
|
prerelease: false
|
145
127
|
version_requirements: !ruby/object:Gem::Requirement
|
146
128
|
requirements:
|
147
129
|
- - "~>"
|
148
130
|
- !ruby/object:Gem::Version
|
149
|
-
version: '3.
|
131
|
+
version: '3.3'
|
150
132
|
- !ruby/object:Gem::Dependency
|
151
133
|
name: sinatra
|
152
134
|
requirement: !ruby/object:Gem::Requirement
|
153
135
|
requirements:
|
154
136
|
- - "~>"
|
155
137
|
- !ruby/object:Gem::Version
|
156
|
-
version: '
|
138
|
+
version: '3.1'
|
157
139
|
type: :development
|
158
140
|
prerelease: false
|
159
141
|
version_requirements: !ruby/object:Gem::Requirement
|
160
142
|
requirements:
|
161
143
|
- - "~>"
|
162
144
|
- !ruby/object:Gem::Version
|
163
|
-
version: '
|
145
|
+
version: '3.1'
|
164
146
|
- !ruby/object:Gem::Dependency
|
165
147
|
name: rack
|
166
148
|
requirement: !ruby/object:Gem::Requirement
|
167
149
|
requirements:
|
168
|
-
- - "
|
150
|
+
- - ">="
|
169
151
|
- !ruby/object:Gem::Version
|
170
152
|
version: '2.2'
|
153
|
+
- - "<"
|
154
|
+
- !ruby/object:Gem::Version
|
155
|
+
version: '4'
|
171
156
|
type: :development
|
172
157
|
prerelease: false
|
173
158
|
version_requirements: !ruby/object:Gem::Requirement
|
174
159
|
requirements:
|
175
|
-
- - "
|
160
|
+
- - ">="
|
176
161
|
- !ruby/object:Gem::Version
|
177
162
|
version: '2.2'
|
163
|
+
- - "<"
|
164
|
+
- !ruby/object:Gem::Version
|
165
|
+
version: '4'
|
178
166
|
- !ruby/object:Gem::Dependency
|
179
167
|
name: rack-test
|
180
168
|
requirement: !ruby/object:Gem::Requirement
|
181
169
|
requirements:
|
182
170
|
- - "~>"
|
183
171
|
- !ruby/object:Gem::Version
|
184
|
-
version: '
|
172
|
+
version: '2.1'
|
185
173
|
type: :development
|
186
174
|
prerelease: false
|
187
175
|
version_requirements: !ruby/object:Gem::Requirement
|
188
176
|
requirements:
|
189
177
|
- - "~>"
|
190
178
|
- !ruby/object:Gem::Version
|
191
|
-
version: '
|
179
|
+
version: '2.1'
|
192
180
|
- !ruby/object:Gem::Dependency
|
193
181
|
name: rdf-spec
|
194
182
|
requirement: !ruby/object:Gem::Requirement
|
195
183
|
requirements:
|
196
184
|
- - "~>"
|
197
185
|
- !ruby/object:Gem::Version
|
198
|
-
version: '3.
|
186
|
+
version: '3.3'
|
199
187
|
type: :development
|
200
188
|
prerelease: false
|
201
189
|
version_requirements: !ruby/object:Gem::Requirement
|
202
190
|
requirements:
|
203
191
|
- - "~>"
|
204
192
|
- !ruby/object:Gem::Version
|
205
|
-
version: '3.
|
193
|
+
version: '3.3'
|
206
194
|
- !ruby/object:Gem::Dependency
|
207
195
|
name: linkeddata
|
208
196
|
requirement: !ruby/object:Gem::Requirement
|
209
197
|
requirements:
|
210
|
-
- - "
|
198
|
+
- - ">="
|
211
199
|
- !ruby/object:Gem::Version
|
212
|
-
version: '
|
200
|
+
version: '0'
|
213
201
|
type: :development
|
214
202
|
prerelease: false
|
215
203
|
version_requirements: !ruby/object:Gem::Requirement
|
216
204
|
requirements:
|
217
|
-
- - "
|
205
|
+
- - ">="
|
218
206
|
- !ruby/object:Gem::Version
|
219
|
-
version: '
|
207
|
+
version: '0'
|
220
208
|
- !ruby/object:Gem::Dependency
|
221
209
|
name: rspec
|
222
210
|
requirement: !ruby/object:Gem::Requirement
|
223
211
|
requirements:
|
224
212
|
- - "~>"
|
225
213
|
- !ruby/object:Gem::Version
|
226
|
-
version: '3.
|
214
|
+
version: '3.12'
|
227
215
|
type: :development
|
228
216
|
prerelease: false
|
229
217
|
version_requirements: !ruby/object:Gem::Requirement
|
230
218
|
requirements:
|
231
219
|
- - "~>"
|
232
220
|
- !ruby/object:Gem::Version
|
233
|
-
version: '3.
|
221
|
+
version: '3.12'
|
234
222
|
- !ruby/object:Gem::Dependency
|
235
223
|
name: rspec-its
|
236
224
|
requirement: !ruby/object:Gem::Requirement
|
@@ -448,14 +436,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
448
436
|
requirements:
|
449
437
|
- - ">="
|
450
438
|
- !ruby/object:Gem::Version
|
451
|
-
version: '
|
439
|
+
version: '3.0'
|
452
440
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
453
441
|
requirements:
|
454
442
|
- - ">="
|
455
443
|
- !ruby/object:Gem::Version
|
456
444
|
version: '0'
|
457
445
|
requirements: []
|
458
|
-
rubygems_version: 3.
|
446
|
+
rubygems_version: 3.2.33
|
459
447
|
signing_key:
|
460
448
|
specification_version: 4
|
461
449
|
summary: SPARQL Query and Update library for Ruby.
|