shex 0.6.0 → 0.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/AUTHORS +1 -1
- data/LICENSE +1 -1
- data/README.md +25 -25
- data/VERSION +1 -1
- data/etc/doap.ttl +14 -14
- data/lib/shex.rb +3 -3
- data/lib/shex/algebra.rb +1 -1
- data/lib/shex/algebra/operator.rb +6 -7
- data/lib/shex/algebra/schema.rb +2 -2
- data/lib/shex/algebra/semact.rb +8 -8
- data/lib/shex/extensions/test.rb +18 -16
- data/lib/shex/format.rb +0 -2
- data/lib/shex/parser.rb +4 -4
- metadata +6 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e10c5d06f3b45a96dc3f2437680bde6eb406fad42c44efce5102d2d763da3281
|
4
|
+
data.tar.gz: 70afaf45c7d88efb782e85d3de232ec48484d2d69683070920ab1b905e94d790
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c5b825dd6fe24fc3ceaee231942756eecb30883650dfb67aa8ae590e5a089a795211b51afac134f8e8ed62161b6a2de13dd2e787da810fd05c771bd29af77481
|
7
|
+
data.tar.gz: 1f6c4189937468a6c0e7505a16f7e8f432beb8f308645c6ef96609f9e570eef30504fd5eac969f156bfd9f5cd95b814f51940b514dc4e024e32d084228e6a28d
|
data/AUTHORS
CHANGED
@@ -1 +1 @@
|
|
1
|
-
* Gregg Kellogg <gregg@
|
1
|
+
* Gregg Kellogg <gregg@greggkellogg.net>
|
data/LICENSE
CHANGED
@@ -21,4 +21,4 @@ OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
|
|
21
21
|
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
22
22
|
OTHER DEALINGS IN THE SOFTWARE.
|
23
23
|
|
24
|
-
For more information, please refer to <
|
24
|
+
For more information, please refer to <https://unlicense.org>
|
data/README.md
CHANGED
@@ -2,10 +2,10 @@
|
|
2
2
|
|
3
3
|
This is a pure-Ruby library for working with the [Shape Expressions Language][ShExSpec] to validate the shape of [RDF][] graphs.
|
4
4
|
|
5
|
-
<
|
5
|
+
<https://ruby-rdf.github.com/shex>
|
6
6
|
|
7
|
-
[](
|
8
|
-
[](
|
7
|
+
[](https://badge.fury.io/rb/shex)
|
8
|
+
[](https://travis-ci.org/ruby-rdf/shex)
|
9
9
|
[](https://coveralls.io/r/ruby-rdf/shex)
|
10
10
|
[](https://gitter.im/ruby-rdf/rdf?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
11
11
|
[](https://zenodo.org/badge/latestdoi/74419330)
|
@@ -14,13 +14,13 @@ This is a pure-Ruby library for working with the [Shape Expressions Language][Sh
|
|
14
14
|
|
15
15
|
* 100% pure Ruby with minimal dependencies and no bloat.
|
16
16
|
* Fully compatible with [ShEx][ShExSpec] specifications.
|
17
|
-
* 100% free and unencumbered [public domain](
|
17
|
+
* 100% free and unencumbered [public domain](https://unlicense.org/) software.
|
18
18
|
|
19
19
|
## Description
|
20
20
|
|
21
21
|
The ShEx gem implements a [ShEx][ShExSpec] Shape Expression engine.
|
22
22
|
|
23
|
-
* `ShEx::Parser` parses ShExC and ShExJ formatted documents generating executable operators which can be serialized as [S-Expressions](
|
23
|
+
* `ShEx::Parser` parses ShExC and ShExJ formatted documents generating executable operators which can be serialized as [S-Expressions](https://en.wikipedia.org/wiki/S-expression).
|
24
24
|
* `ShEx::Algebra` executes operators against Any `RDF::Graph`, including compliant [RDF.rb][].
|
25
25
|
* [Implementation Report](file.earl.html)
|
26
26
|
|
@@ -45,9 +45,9 @@ The ShEx gem implements a [ShEx][ShExSpec] Shape Expression engine.
|
|
45
45
|
graph = RDF::Graph.load("etc/doap.ttl")
|
46
46
|
schema = ShEx.parse(shexc)
|
47
47
|
map = {
|
48
|
-
"
|
48
|
+
"https://rubygems.org/gems/shex" => "TestShape"
|
49
49
|
}
|
50
|
-
schema.satisfies?("
|
50
|
+
schema.satisfies?("https://rubygems.org/gems/shex", graph, map)
|
51
51
|
# => true
|
52
52
|
### Validating a node using ShExJ
|
53
53
|
|
@@ -139,8 +139,8 @@ The ShEx gem implements a [ShEx][ShExSpec] Shape Expression engine.
|
|
139
139
|
})
|
140
140
|
graph = RDF::Graph.load("etc/doap.ttl")
|
141
141
|
schema = ShEx.parse(shexj, format: :shexj)
|
142
|
-
map = {"
|
143
|
-
schema.satisfies?("
|
142
|
+
map = {"https://rubygems.org/gems/shex" => "TestShape"}
|
143
|
+
schema.satisfies?("https://rubygems.org/gems/shex", graph, map)
|
144
144
|
# => true
|
145
145
|
|
146
146
|
## Extensions
|
@@ -177,11 +177,11 @@ Example usage:
|
|
177
177
|
|
178
178
|
rdf shex https://raw.githubusercontent.com/ruby-rdf/shex/develop/etc/doap.ttl \
|
179
179
|
--schema https://raw.githubusercontent.com/ruby-rdf/shex/develop/etc/doap.shex \
|
180
|
-
--focus
|
180
|
+
--focus https://rubygems.org/gems/shex
|
181
181
|
|
182
182
|
## Documentation
|
183
183
|
|
184
|
-
<
|
184
|
+
<https://rubydoc.info/github/ruby-rdf/shex>
|
185
185
|
|
186
186
|
|
187
187
|
## Implementation Notes
|
@@ -193,12 +193,12 @@ The result of parsing either ShExC or ShExJ is the creation of a set of executab
|
|
193
193
|
|
194
194
|
## Dependencies
|
195
195
|
|
196
|
-
* [Ruby](
|
197
|
-
* [RDF.rb](
|
196
|
+
* [Ruby](https://ruby-lang.org/) (>= 2.4)
|
197
|
+
* [RDF.rb](https://rubygems.org/gems/rdf) (~> 3.1)
|
198
198
|
|
199
199
|
## Installation
|
200
200
|
|
201
|
-
The recommended installation method is via [RubyGems](
|
201
|
+
The recommended installation method is via [RubyGems](https://rubygems.org/).
|
202
202
|
To install the latest official release of RDF.rb, do:
|
203
203
|
|
204
204
|
% [sudo] gem install shex
|
@@ -212,21 +212,21 @@ To get a local working copy of the development repository, do:
|
|
212
212
|
Alternatively, download the latest development version as a tarball as
|
213
213
|
follows:
|
214
214
|
|
215
|
-
% wget
|
215
|
+
% wget https://github.com/ruby-rdf/shex/tarball/master
|
216
216
|
|
217
217
|
## Resources
|
218
218
|
|
219
|
-
* <
|
220
|
-
* <
|
221
|
-
* <
|
219
|
+
* <https://rubydoc.info/github/ruby-rdf/shex>
|
220
|
+
* <https://github.com/ruby-rdf/shex>
|
221
|
+
* <https://rubygems.org/gems/shex>
|
222
222
|
|
223
223
|
## Mailing List
|
224
224
|
|
225
|
-
* <
|
225
|
+
* <https://lists.w3.org/Archives/Public/public-rdf-ruby/>
|
226
226
|
|
227
227
|
## Author
|
228
228
|
|
229
|
-
* [Gregg Kellogg](
|
229
|
+
* [Gregg Kellogg](https://github.com/gkellogg) - <https://greggkellogg.net/>
|
230
230
|
|
231
231
|
## Contributing
|
232
232
|
|
@@ -250,9 +250,9 @@ This repository uses [Git Flow](https://github.com/nvie/gitflow) to mange develo
|
|
250
250
|
## License
|
251
251
|
|
252
252
|
This is free and unencumbered public domain software. For more information,
|
253
|
-
see <
|
253
|
+
see <https://unlicense.org/> or the accompanying {file:LICENSE} file.
|
254
254
|
|
255
|
-
[ShExSpec]:
|
256
|
-
[RDF]:
|
257
|
-
[RDF.rb]:
|
258
|
-
[EBNF]:
|
255
|
+
[ShExSpec]: https://shex.io/shex-semantics/
|
256
|
+
[RDF]: https://www.w3.org/RDF/
|
257
|
+
[RDF.rb]: https://rubydoc.info/github/ruby-rdf/rdf
|
258
|
+
[EBNF]: https://rubygems.org/gems/ebnf
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.6.
|
1
|
+
0.6.1
|
data/etc/doap.ttl
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
@base <
|
1
|
+
@base <https://rubygems.org/gems/shex> .
|
2
2
|
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
|
3
3
|
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
4
4
|
@prefix dc: <http://purl.org/dc/terms/> .
|
@@ -8,10 +8,10 @@
|
|
8
8
|
@prefix ex: <http://example.org/> .
|
9
9
|
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
|
10
10
|
|
11
|
-
<
|
11
|
+
<https://rubygems.org/gems/shex> a doap:Project, earl:TestSubject, earl:Software ;
|
12
12
|
doap:name "ShEx.rb" ;
|
13
|
-
doap:homepage <
|
14
|
-
doap:license <
|
13
|
+
doap:homepage <https://ruby-rdf.github.com/shex> ;
|
14
|
+
doap:license <https://unlicense.org/1.0/> ;
|
15
15
|
doap:shortdesc "ShEx is a Shape Expression engine for Ruby."@en ;
|
16
16
|
doap:description "ShEx is an Shape Expression engine for the RDF.rb library suite."@en ;
|
17
17
|
doap:created "2016-12-09"^^xsd:date ;
|
@@ -19,16 +19,16 @@
|
|
19
19
|
doap:implements <http://shex.io/shex-semantics/> ;
|
20
20
|
doap:category <http://dbpedia.org/resource/Resource_Description_Framework>,
|
21
21
|
<http://dbpedia.org/resource/Ruby_(programming_language)> ;
|
22
|
-
doap:download-page <
|
23
|
-
doap:mailing-list <
|
24
|
-
doap:bug-database <
|
25
|
-
doap:blog <
|
26
|
-
doap:developer <
|
27
|
-
doap:maintainer <
|
28
|
-
doap:documenter <
|
29
|
-
foaf:maker <
|
22
|
+
doap:download-page <https://rubygems.org/gems/shex> ;
|
23
|
+
doap:mailing-list <https://lists.w3.org/Archives/Public/public-rdf-ruby/> ;
|
24
|
+
doap:bug-database <https://github.com/ruby-rdf/shex/issues> ;
|
25
|
+
doap:blog <https://greggkellogg.net/> ;
|
26
|
+
doap:developer <https://greggkellogg.net/foaf#me> ;
|
27
|
+
doap:maintainer <https://greggkellogg.net/foaf#me> ;
|
28
|
+
doap:documenter <https://greggkellogg.net/foaf#me> ;
|
29
|
+
foaf:maker <https://greggkellogg.net/foaf#me> ;
|
30
30
|
dc:title "ShEx.rb" ;
|
31
31
|
dc:description "ShEx is an Shape Expression engine for the RDF.rb library suite."@en ;
|
32
32
|
dc:date "2016-12-09"^^xsd:date ;
|
33
|
-
dc:creator <
|
34
|
-
dc:isPartOf <
|
33
|
+
dc:creator <https://greggkellogg.net/foaf#me> ;
|
34
|
+
dc:isPartOf <https://rubygems.org/gems/rdf> .
|
data/lib/shex.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
##
|
2
2
|
# A ShEx runtime for RDF.rb.
|
3
3
|
#
|
4
|
-
# @see
|
4
|
+
# @see https://shex.io/shex-semantics/#shexc
|
5
5
|
module ShEx
|
6
6
|
require 'shex/format'
|
7
7
|
autoload :Algebra, 'shex/algebra'
|
@@ -66,7 +66,7 @@ module ShEx
|
|
66
66
|
#
|
67
67
|
# @example executing a ShExC schema
|
68
68
|
# graph = RDF::Graph.load("etc/doap.ttl")
|
69
|
-
# ShEx.execute('etc/doap.shex', graph, "
|
69
|
+
# ShEx.execute('etc/doap.shex', graph, "https://rubygems.org/gems/shex", "")
|
70
70
|
#
|
71
71
|
# @param [IO, StringIO, String, #to_s] expression (ShExC or ShExJ)
|
72
72
|
# @param (see ShEx::Algebra::Schema#execute)
|
@@ -84,7 +84,7 @@ module ShEx
|
|
84
84
|
#
|
85
85
|
# @example executing a ShExC schema
|
86
86
|
# graph = RDF::Graph.load("etc/doap.ttl")
|
87
|
-
# ShEx.execute('etc/doap.shex', graph, "
|
87
|
+
# ShEx.execute('etc/doap.shex', graph, "https://rubygems.org/gems/shex", "")
|
88
88
|
#
|
89
89
|
# @param [IO, StringIO, String, #to_s] expression (ShExC or ShExJ)
|
90
90
|
# @param (see ShEx::Algebra::Schema#satisfies?)
|
data/lib/shex/algebra.rb
CHANGED
@@ -5,7 +5,7 @@ require 'sxp'
|
|
5
5
|
module ShEx
|
6
6
|
# Based on the SPARQL Algebra, operators for executing a patch
|
7
7
|
#
|
8
|
-
# @author [Gregg Kellogg](
|
8
|
+
# @author [Gregg Kellogg](https://greggkellogg.net/)
|
9
9
|
module Algebra
|
10
10
|
autoload :And, 'shex/algebra/and'
|
11
11
|
autoload :Annotation, 'shex/algebra/annotation'
|
@@ -244,7 +244,7 @@ module ShEx::Algebra
|
|
244
244
|
# @return [String]
|
245
245
|
def to_sxp
|
246
246
|
begin
|
247
|
-
require 'sxp' # @see
|
247
|
+
require 'sxp' # @see https://rubygems.org/gems/sxp
|
248
248
|
rescue LoadError
|
249
249
|
abort "SPARQL::Algebra::Operator#to_sxp requires the SXP gem (hint: `gem install sxp')."
|
250
250
|
end
|
@@ -593,7 +593,6 @@ module ShEx::Algebra
|
|
593
593
|
|
594
594
|
##
|
595
595
|
# Enumerate via depth-first recursive descent over operands, yielding each operator
|
596
|
-
# @param [Integer] depth incrementeded for each depth of operator, and provided to block if Arity is 2
|
597
596
|
# @yield operator
|
598
597
|
# @yieldparam [Object] operator
|
599
598
|
# @return [Enumerator]
|
@@ -661,12 +660,12 @@ module ShEx::Algebra
|
|
661
660
|
self
|
662
661
|
end
|
663
662
|
|
664
|
-
|
665
|
-
|
666
|
-
|
667
|
-
|
668
|
-
end
|
663
|
+
def dup
|
664
|
+
operands = @operands.map {|o| o.dup rescue o}
|
665
|
+
self.class.new(*operands, id: @id)
|
666
|
+
end
|
669
667
|
|
668
|
+
protected
|
670
669
|
##
|
671
670
|
# A unary operator.
|
672
671
|
#
|
data/lib/shex/algebra/schema.rb
CHANGED
@@ -39,7 +39,7 @@ module ShEx::Algebra
|
|
39
39
|
# @param [RDF::Queryable] graph
|
40
40
|
# @param [Hash{RDF::Term => <RDF::Resource>}, Array<Array(RDF::Term, RDF::Resource)>] map
|
41
41
|
# A set of (`term`, `resource`) pairs where `term` is a node within `graph`, and `resource` identifies a shape
|
42
|
-
# @param [Array<RDF::Term>]
|
42
|
+
# @param [Array<RDF::Term>] focus ([])
|
43
43
|
# One or more nodes within `graph` for which to run the start expression.
|
44
44
|
# @param [Array<Schema, String>] shapeExterns ([])
|
45
45
|
# One or more schemas, or paths to ShEx schema resources used for finding external shapes.
|
@@ -250,7 +250,7 @@ module ShEx::Algebra
|
|
250
250
|
attr_accessor :expression
|
251
251
|
|
252
252
|
# Holds the result of processing a shape
|
253
|
-
# @param [RDF::Resource]
|
253
|
+
# @param [RDF::Resource] shape
|
254
254
|
# @return [ShapeResult]
|
255
255
|
def initialize(shape)
|
256
256
|
@shape = shape
|
data/lib/shex/algebra/semact.rb
CHANGED
@@ -18,13 +18,14 @@ module ShEx::Algebra
|
|
18
18
|
##
|
19
19
|
# Called on entry
|
20
20
|
#
|
21
|
-
# @
|
22
|
-
#
|
23
|
-
#
|
24
|
-
#
|
25
|
-
#
|
26
|
-
#
|
27
|
-
#
|
21
|
+
# @overload enter(code, arcs_in, arcs_out, logging)
|
22
|
+
# @param [String] code
|
23
|
+
# @param [Array<RDF::Statement>] arcs_in available statements to be matched having `focus` as an object
|
24
|
+
# @param [Array<RDF::Statement>] arcs_out available statements to be matched having `focus` as a subject
|
25
|
+
# @param [Integer] depth for logging
|
26
|
+
# @param [Hash{Symbol => Object}] options
|
27
|
+
# Other, operand-specific options
|
28
|
+
# @return [Boolean] Returning `false` results in {ShEx::NotSatisfied} exception
|
28
29
|
def enter(**options)
|
29
30
|
if implementation = schema.extensions[operands.first.to_s]
|
30
31
|
implementation.enter(code: operands[0], expression: parent, **options)
|
@@ -67,7 +68,6 @@ module ShEx::Algebra
|
|
67
68
|
# @param [String] code
|
68
69
|
# @param [Array<RDF::Statement>] matched statements matched by this expression
|
69
70
|
# @param [Array<RDF::Statement>] unmatched statements considered, but not matched by this expression
|
70
|
-
# @param [ShEx::Algebra::TripleExpression] expression containing this semantic act
|
71
71
|
# @param [Integer] depth for logging
|
72
72
|
# @param [Hash{Symbol => Object}] options
|
73
73
|
# Other, operand-specific options
|
data/lib/shex/extensions/test.rb
CHANGED
@@ -6,21 +6,23 @@
|
|
6
6
|
# @see http://shex.io/extensions/Test/
|
7
7
|
require 'shex'
|
8
8
|
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
md
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
9
|
+
module ShEx
|
10
|
+
Test = Class.new(ShEx::Extension("http://shex.io/extensions/Test/")) do
|
11
|
+
# (see ShEx::Extension#visit)
|
12
|
+
def visit(code: nil, matched: nil, depth: 0, **options)
|
13
|
+
str = if md = /^ *(fail|print) *\( *(?:(\"(?:[^\\"]|\\")*\")|([spo])) *\) *$/.match(code.to_s)
|
14
|
+
md[2] || case md[3]
|
15
|
+
when 's' then matched.subject
|
16
|
+
when 'p' then matched.predicate
|
17
|
+
when 'o' then matched.object
|
18
|
+
else matched.to_sxp
|
19
|
+
end.to_s
|
20
|
+
else
|
21
|
+
matched ? matched.to_sxp : 'no statement'
|
22
|
+
end
|
22
23
|
|
23
|
-
|
24
|
-
|
24
|
+
$stdout.puts str
|
25
|
+
return !md || md[1] == 'print'
|
26
|
+
end
|
25
27
|
end
|
26
|
-
end
|
28
|
+
end
|
data/lib/shex/format.rb
CHANGED
@@ -10,8 +10,6 @@ module ShEx
|
|
10
10
|
# RDF::Format.for(file_name: "etc/foaf.shex")
|
11
11
|
# RDF::Format.for(file_extension: "shex")
|
12
12
|
# RDF::Format.for(content_type: "application/shex")
|
13
|
-
#
|
14
|
-
# @see http://www.w3.org/TR/ldpatch/
|
15
13
|
class Format < RDF::Format
|
16
14
|
content_type 'application/shex', extension: :shex
|
17
15
|
content_encoding 'utf-8'
|
data/lib/shex/parser.rb
CHANGED
@@ -8,7 +8,7 @@ module ShEx
|
|
8
8
|
# A parser for the ShEx grammar.
|
9
9
|
#
|
10
10
|
# @see https://www.w3.org/2005/01/yacker/uploads/ShEx3?lang=perl&markup=html#productions
|
11
|
-
# @see
|
11
|
+
# @see https://en.wikipedia.org/wiki/LR_parser
|
12
12
|
class Parser
|
13
13
|
include ShEx::Meta
|
14
14
|
include ShEx::Terminals
|
@@ -37,7 +37,7 @@ module ShEx
|
|
37
37
|
# The internal representation of the result using hierarchy of RDF objects and ShEx::Operator
|
38
38
|
# objects.
|
39
39
|
# @return [Array]
|
40
|
-
# @see
|
40
|
+
# @see https://www.rubydoc.info/github/ruby-rdf/sparql/SPARQL/Algebra
|
41
41
|
attr_accessor :result
|
42
42
|
|
43
43
|
# Terminals passed to lexer. Order matters!
|
@@ -775,8 +775,8 @@ module ShEx
|
|
775
775
|
# @return [ShEx::Algebra::Schema] The executable parsed expression.
|
776
776
|
# @raise [ShEx::ParseError] when a syntax error is detected
|
777
777
|
# @raise [ShEx::StructureError, ArgumentError] on structural problems with schema
|
778
|
-
# @see
|
779
|
-
# @see
|
778
|
+
# @see https://www.w3.org/TR/sparql11-query/#sparqlAlgebra
|
779
|
+
# @see https://axel.deri.ie/sparqltutorial/ESWC2007_SPARQL_Tutorial_unit2b.pdf
|
780
780
|
def parse(prod = START)
|
781
781
|
ll1_parse(@input,
|
782
782
|
prod.to_sym,
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: shex
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.6.
|
4
|
+
version: 0.6.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Gregg Kellogg
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-07-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rdf
|
@@ -58,14 +58,14 @@ dependencies:
|
|
58
58
|
requirements:
|
59
59
|
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: '
|
61
|
+
version: '2.0'
|
62
62
|
type: :runtime
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: '
|
68
|
+
version: '2.0'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: sxp
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
@@ -220,7 +220,7 @@ files:
|
|
220
220
|
- lib/shex/shex_context.rb
|
221
221
|
- lib/shex/terminals.rb
|
222
222
|
- lib/shex/version.rb
|
223
|
-
homepage:
|
223
|
+
homepage: https://ruby-rdf.github.com/shex
|
224
224
|
licenses:
|
225
225
|
- Unlicense
|
226
226
|
metadata:
|
@@ -240,7 +240,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
240
240
|
- !ruby/object:Gem::Version
|
241
241
|
version: '0'
|
242
242
|
requirements: []
|
243
|
-
rubygems_version: 3.
|
243
|
+
rubygems_version: 3.1.3
|
244
244
|
signing_key:
|
245
245
|
specification_version: 4
|
246
246
|
summary: Implementation of Shape Expressions (ShEx) for RDF.rb
|