shacl 0.1.1 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3b8c0531333caf832e7bc49672c567cae4444736c389c569069b0abc24921a80
4
- data.tar.gz: ba80d251ecbe6168a4f8aec684381a9c5121d35473c6b6a7ef5a521ec91873fe
3
+ metadata.gz: c633e6028fd1289d59a32deaa5fa21392fef42e19775c5360176764573c59d55
4
+ data.tar.gz: 1b531864030beee9032a51f47c06a4151fb41b5500d6fbf639d14261bdb14377
5
5
  SHA512:
6
- metadata.gz: e4b437531b70b4e58802aabcc01cde88dee8297e54df9971400c0a7cb816d119f39848afcaa06fb5b295fa606383ab92b2dd3c41a624fea6c81f20897be13c09
7
- data.tar.gz: 346ad2a174f973879e93b0b61890a0a1694673b8f9e104f4efda68781ca9337a0ba7fbc3e04f43ee8db172ce731791fffaeb54e6f3dfc6ff0d96d7d972258a12
6
+ metadata.gz: 69660f8f352892612c02d2e487d2e01a0eec8f477024f175c58e30a07ab857aa271494f19b90955cc4b63c9889ed31ebdbcdae04ab0dd188d2949108798bf6f9
7
+ data.tar.gz: 2e9f9e64e9ba01b171b06e35b6fc47427e3b5f6ba075d5aecb14497a9c84873a6716a029aceae925d85349b68609a8ec7987aceaa5d26e0ca77866fb385d1e4d
data/README.md CHANGED
@@ -10,7 +10,8 @@ This is a pure-Ruby library for working with the [Shape Constraint Language][SHA
10
10
  ## Features
11
11
 
12
12
  * 100% pure Ruby with minimal dependencies and no bloat.
13
- * Fully compatible with [SHACL][SHACL Spec] specifications.
13
+ * Fully compatible with SHACL Core [SHACL][SHACL Spec].
14
+ * Partially compatible with SHACL-SPARQL [SHACL][SHACL Spec].
14
15
  * 100% free and unencumbered [public domain](https://unlicense.org/) software.
15
16
 
16
17
  [Implementation Report](https://ruby-rdf.github.io/shacl/etc/earl.html)
@@ -48,7 +49,7 @@ The result will add the SHACL validation report to the output graph, optionally
48
49
 
49
50
  ## Documentation
50
51
 
51
- <https://rubydoc.info/github/ruby-rdf/shacl>
52
+ <https://ruby-rdf.github.io/shacl>
52
53
 
53
54
  ## Implementation Notes
54
55
 
@@ -60,6 +61,8 @@ Evaluating the shapes against a graph results in a {SHACL::ValidationReport} ind
60
61
 
61
62
  The resulting validation report can be compared with other validation reports, used as native Ruby objects, serialized to s-expressions, or used as an RDF::Enumerable to retrieve the RDF representation of the report, as defined in [SHACL Spec][].
62
63
 
64
+ SHACL-SPARQL variable bindings pass a solution to the query composed of the necessary bindings rather than rewrite the query. Supports [SHACL-based Constraints](https://www.w3.org/TR/shacl/#sparql-constraints).
65
+
63
66
  ### Matching Entailed Triples
64
67
  Many tests check for entailed triples, such as entailed super-classes of explicit `rdf:type` values. If this is required for a given application, the [RDF::Reasoner][] gem can be used to create such entailed triples.
65
68
 
@@ -75,18 +78,20 @@ Many tests check for entailed triples, such as entailed super-classes of explici
75
78
  ### Future work
76
79
  This implementation is certainly not performant. Some things that can be be considered in future versions:
77
80
 
78
- * Support for SHACL-SPARQL
79
81
  * Index shapes on `targetNode` and `targetClass` and other targets to allow a more efficient query to find relevant resources in the data graph and not simply iterrate through each top-level shape.
80
82
  * Cache target nodes as JSON-LD to reduce the need to separately query for each constraint.
81
83
  * Reasoner should support limited RDFS/OWL entailment from the data graph, not just pre-defined vocabularies.
84
+ * [SHACL-based Constraint Components](https://www.w3.org/TR/shacl/#sparql-constraint-components).
85
+ * More [SHACL Advanced Features](https://w3c.github.io/shacl/shacl-af/).
86
+ * Support the [SHACL Compact Syntax](https://w3c.github.io/shacl/shacl-compact-syntax/).
82
87
 
83
88
  ## Dependencies
84
89
 
85
- * [Ruby](https://ruby-lang.org/) (>= 2.4)
86
- * [RDF.rb](https://rubygems.org/gems/rdf) (~> 3.1, => 3.1.8)
87
- * [SPARQL](https://rubygems.org/gems/sparql) (~> 3.1, => 3.1.4)
88
- * [json-ld](https://rubygems.org/gems/sparql) (~> 3.1, => 3.1.7)
89
- * [sxp](https://rubygems.org/gems/sxp) (~> 1.1)
90
+ * [Ruby](https://ruby-lang.org/) (>= 2.6)
91
+ * [RDF.rb](https://rubygems.org/gems/rdf) (~> 3.2)
92
+ * [SPARQL](https://rubygems.org/gems/sparql) (~> 3.2)
93
+ * [json-ld](https://rubygems.org/gems/json-ld) (~> 3.2)
94
+ * [sxp](https://rubygems.org/gems/sxp) (~> 1.2)
90
95
 
91
96
  ## Installation
92
97
 
@@ -108,7 +113,7 @@ follows:
108
113
 
109
114
  ## Resources
110
115
 
111
- * <https://rubydoc.info/github/ruby-rdf/shacl>
116
+ * <https://ruby-rdf.github.io/shacl>
112
117
  * <https://github.com/ruby-rdf/shacl>
113
118
  * <https://rubygems.org/gems/shacl>
114
119
 
@@ -151,9 +156,9 @@ see <https://unlicense.org/> or the accompanying {file:LICENSE} file.
151
156
  [YARD-GS]: https://rubydoc.info/docs/yard/file/docs/GettingStarted.md
152
157
  [PDD]: https://unlicense.org/#unlicensing-contributions
153
158
  [S-Expressions]: https://en.wikipedia.org/wiki/S-expression
154
- [RDF.rb]: https://ruby-rdf.github.com/rdf
155
- [RDF::Reasoner]: https://ruby-rdf.github.com/rdf-reasoner
156
- [SPARQL gem]: https://ruby-rdf.github.com/sparql
157
- [SXP gem]: https://ruby-rdf.github.com/sxp
159
+ [RDF.rb]: https://ruby-rdf.github.io/rdf
160
+ [RDF::Reasoner]: https://ruby-rdf.github.io/rdf-reasoner
161
+ [SPARQL gem]: https://ruby-rdf.github.io/sparql
162
+ [SXP gem]: https://ruby-rdf.github.io/sxp
158
163
  [SHACL Spec]: https://www.w3.org/TR/shacl/
159
- [ShEx gem]: https://ruby-rdf.github.com/shex
164
+ [ShEx gem]: https://ruby-rdf.github.io/shex
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.1
1
+ 0.3.0
data/etc/doap.ttl CHANGED
@@ -11,7 +11,7 @@
11
11
  <https://rubygems.org/gems/shacl> a doap:Project, earl:TestSubject, earl:Software ;
12
12
  sh:shapesGraph <doap-shacl.ttl>;
13
13
  doap:name "SHACL" ;
14
- doap:homepage <https://ruby-rdf.github.com/shacl> ;
14
+ doap:homepage <https://ruby-rdf.github.io/shacl> ;
15
15
  doap:license <https://unlicense.org/1.0/> ;
16
16
  doap:shortdesc "SHACL is a Shapes Constraint engine for Ruby."@en ;
17
17
  doap:description "SHACL is a Shape Constraint engine for the Ruby RDF.rb library suite."@en ;