mustrd 0.2.0__py3-none-any.whl → 0.2.1__py3-none-any.whl
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.
- mustrd/README.adoc +210 -210
- mustrd/TestResult.py +136 -136
- mustrd/logger_setup.py +48 -48
- mustrd/model/catalog-v001.xml +5 -5
- mustrd/model/mustrdShapes.ttl +253 -253
- mustrd/model/mustrdTestShapes.ttl +24 -24
- mustrd/model/ontology.ttl +494 -494
- mustrd/model/test-resources/resources.ttl +60 -60
- mustrd/model/triplestoreOntology.ttl +174 -174
- mustrd/model/triplestoreshapes.ttl +41 -41
- mustrd/mustrd.py +787 -787
- mustrd/mustrdAnzo.py +236 -220
- mustrd/mustrdGraphDb.py +125 -125
- mustrd/mustrdRdfLib.py +56 -56
- mustrd/mustrdTestPlugin.py +327 -328
- mustrd/namespace.py +125 -125
- mustrd/run.py +106 -106
- mustrd/spec_component.py +690 -690
- mustrd/steprunner.py +166 -166
- mustrd/templates/md_ResultList_leaf_template.jinja +18 -18
- mustrd/templates/md_ResultList_template.jinja +8 -8
- mustrd/templates/md_stats_template.jinja +2 -2
- mustrd/test/test_mustrd.py +4 -4
- mustrd/utils.py +38 -38
- {mustrd-0.2.0.dist-info → mustrd-0.2.1.dist-info}/LICENSE +21 -21
- {mustrd-0.2.0.dist-info → mustrd-0.2.1.dist-info}/METADATA +4 -2
- mustrd-0.2.1.dist-info/RECORD +31 -0
- mustrd/mustrdQueryProcessor.py +0 -136
- mustrd-0.2.0.dist-info/RECORD +0 -32
- {mustrd-0.2.0.dist-info → mustrd-0.2.1.dist-info}/WHEEL +0 -0
- {mustrd-0.2.0.dist-info → mustrd-0.2.1.dist-info}/entry_points.txt +0 -0
mustrd/model/mustrdShapes.ttl
CHANGED
@@ -1,253 +1,253 @@
|
|
1
|
-
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
|
2
|
-
@prefix sh: <http://www.w3.org/ns/shacl#> .
|
3
|
-
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
|
4
|
-
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
5
|
-
@prefix ex: <http://www.example.org/#> .
|
6
|
-
@prefix owl: <http://www.w3.org/2002/07/owl#> .
|
7
|
-
@prefix must: <https://mustrd.com/model/> .
|
8
|
-
|
9
|
-
must:
|
10
|
-
sh:declare [ sh:prefix "must" ;
|
11
|
-
sh:namespace "https://mustrd.com/model/"^^xsd:anyURI ; ] .
|
12
|
-
|
13
|
-
|
14
|
-
must:TestSpecShape
|
15
|
-
a sh:NodeShape ;
|
16
|
-
sh:targetClass must:TestSpec ;
|
17
|
-
sh:property [ sh:path must:given ;
|
18
|
-
sh:class must:Dataset ;
|
19
|
-
sh:minCount 1 ; ] ;
|
20
|
-
sh:property [ sh:path must:when ;
|
21
|
-
sh:class must:SparqlSource ;
|
22
|
-
sh:minCount 1 ; ] ;
|
23
|
-
sh:property [ sh:path must:then ;
|
24
|
-
sh:class must:Dataset ;
|
25
|
-
sh:minCount 1 ; ] .
|
26
|
-
|
27
|
-
must:TestSpecGivenShape
|
28
|
-
a sh:NodeShape ;
|
29
|
-
sh:targetClass must:TestSpec ;
|
30
|
-
sh:message "Invalid given clause: Table datasets for givens are not currently supported." ;
|
31
|
-
sh:not [ sh:path must:given ;
|
32
|
-
sh:class must:TableDataset ;
|
33
|
-
sh:minCount 1 ; ] .
|
34
|
-
|
35
|
-
must:TestSpecWithInheritedDatasetShape
|
36
|
-
a sh:NodeShape ;
|
37
|
-
sh:target [ a sh:SPARQLTarget ;
|
38
|
-
sh:prefixes must: ;
|
39
|
-
sh:select """
|
40
|
-
SELECT ?this
|
41
|
-
WHERE {
|
42
|
-
?this a must:TestSpec .
|
43
|
-
?this must:given/rdf:type must:InheritedDataset .
|
44
|
-
}
|
45
|
-
""" ; ] ;
|
46
|
-
sh:property [ sh:message "Invalid given clause: Tests using an inherited state can only have a single given clause.";
|
47
|
-
sh:path must:given ;
|
48
|
-
sh:minCount 1 ;
|
49
|
-
sh:maxCount 1 ; ] .
|
50
|
-
|
51
|
-
|
52
|
-
must:UpdateTestSpecThenValidationShape
|
53
|
-
a sh:NodeShape ;
|
54
|
-
sh:target [ a sh:SPARQLTarget ;
|
55
|
-
sh:prefixes must: ;
|
56
|
-
sh:select """
|
57
|
-
SELECT ?this
|
58
|
-
WHERE {
|
59
|
-
?this a must:TestSpec .
|
60
|
-
?this must:when/must:queryType must:UpdateSparql .
|
61
|
-
}
|
62
|
-
""" ; ] ;
|
63
|
-
sh:message "Invalid then clause: A tabular data format has been specified for a SPARQL update test." ;
|
64
|
-
sh:not [
|
65
|
-
sh:path must:then ;
|
66
|
-
sh:or ( [ sh:class must:TableDataset ]
|
67
|
-
[ sh:class must:EmptyTable ] ) ] .
|
68
|
-
|
69
|
-
must:ConstructTestSpecThenValidationShape
|
70
|
-
a sh:NodeShape ;
|
71
|
-
sh:target [ a sh:SPARQLTarget ;
|
72
|
-
sh:prefixes must: ;
|
73
|
-
sh:select """
|
74
|
-
SELECT ?this
|
75
|
-
WHERE {
|
76
|
-
?this a must:TestSpec .
|
77
|
-
?this must:when/must:queryType must:ConstructSparql .
|
78
|
-
}
|
79
|
-
""" ; ] ;
|
80
|
-
sh:message "Invalid then clause: A tabular data format has been specified for a SPARQL construct test." ;
|
81
|
-
sh:not [
|
82
|
-
sh:path must:then ;
|
83
|
-
sh:or ( [ sh:class must:TableDataset ]
|
84
|
-
[ sh:class must:EmptyTable ] ) ] .
|
85
|
-
|
86
|
-
must:UpdateTestSpecGivenValidationShape
|
87
|
-
a sh:NodeShape ;
|
88
|
-
sh:target [ a sh:SPARQLTarget ;
|
89
|
-
sh:prefixes must: ;
|
90
|
-
sh:select """
|
91
|
-
SELECT ?this
|
92
|
-
WHERE {
|
93
|
-
?this a must:TestSpec .
|
94
|
-
?this must:when/must:queryType must:UpdateSparql .
|
95
|
-
}
|
96
|
-
""" ; ] ; ;
|
97
|
-
sh:message "Invalid given clause: An inherited dataset cannot be specified for a SPARQL update test." ;
|
98
|
-
sh:not [ sh:path must:given ;
|
99
|
-
sh:class must:InheritedDataset ; ] .
|
100
|
-
|
101
|
-
must:SelectTestSpecValidationShape
|
102
|
-
a sh:NodeShape ;
|
103
|
-
sh:target [ a sh:SPARQLTarget ;
|
104
|
-
sh:prefixes must: ;
|
105
|
-
sh:select """
|
106
|
-
SELECT ?this
|
107
|
-
WHERE {
|
108
|
-
?this a must:TestSpec .
|
109
|
-
?this must:when/must:queryType must:SelectSparql .
|
110
|
-
}
|
111
|
-
""" ; ] ;
|
112
|
-
sh:property [ sh:message "Invalid then clause: The result format should be tabular for a SPARQL select test." ;
|
113
|
-
sh:path must:then ;
|
114
|
-
sh:or ( [ sh:class must:TableDataset ]
|
115
|
-
[ sh:class must:EmptyTable ]
|
116
|
-
[ sh:class must:FolderDataset ]
|
117
|
-
[ sh:class must:FileDataset ] ) ] .
|
118
|
-
|
119
|
-
must:StatementsDatasetShape
|
120
|
-
a sh:NodeShape ;
|
121
|
-
sh:targetClass must:StatementsDataset ;
|
122
|
-
sh:property [ sh:path must:hasStatement ;
|
123
|
-
sh:node must:StatementShape ;
|
124
|
-
sh:minCount 1 ; ] .
|
125
|
-
|
126
|
-
must:TableDatasetShape
|
127
|
-
a sh:NodeShape ;
|
128
|
-
sh:targetClass must:TableDataset ;
|
129
|
-
sh:property [ sh:path must:hasRow ;
|
130
|
-
sh:node must:RowShape ;
|
131
|
-
sh:minCount 1 ; ] .
|
132
|
-
|
133
|
-
must:OrderedTableDatasetShape
|
134
|
-
a sh:NodeShape ;
|
135
|
-
sh:targetClass must:OrderedTableDataset ;
|
136
|
-
sh:property [ sh:path must:hasRow ;
|
137
|
-
sh:node must:OrderedRowShape ;
|
138
|
-
sh:minCount 2 ; ] .
|
139
|
-
|
140
|
-
must:FileDatasetShape
|
141
|
-
a sh:NodeShape ;
|
142
|
-
sh:targetClass must:FileDataset ;
|
143
|
-
sh:property [ sh:path must:file ;
|
144
|
-
sh:datatype xsd:string ;
|
145
|
-
sh:minCount 1 ;
|
146
|
-
sh:maxCount 1 ; ] .
|
147
|
-
|
148
|
-
must:StatementShape
|
149
|
-
a sh:NodeShape ;
|
150
|
-
sh:targetClass rdf:Statement ;
|
151
|
-
sh:property [ sh:path rdf:subject ;
|
152
|
-
sh:minCount 1 ; ] ;
|
153
|
-
sh:property [ sh:path rdf:predicate ;
|
154
|
-
sh:minCount 1 ; ] ;
|
155
|
-
sh:property [ sh:path rdf:object ;
|
156
|
-
sh:minCount 1 ; ] .
|
157
|
-
|
158
|
-
must:SparqlSourceShape
|
159
|
-
a sh:NodeShape ;
|
160
|
-
sh:targetClass must:SparqlSource ;
|
161
|
-
sh:property [ sh:path must:queryType ;
|
162
|
-
sh:minCount 1 ;
|
163
|
-
sh:maxCount 1 ; ] .
|
164
|
-
|
165
|
-
must:UpdateSparqlShape
|
166
|
-
a sh:NodeShape ;
|
167
|
-
sh:targetClass must:SparqlSource ;
|
168
|
-
sh:property [ sh:path must:queryType ;
|
169
|
-
sh:targetClass must:UpdateSparql ;
|
170
|
-
sh:minCount 1 ;
|
171
|
-
sh:maxCount 1 ; ] .
|
172
|
-
|
173
|
-
must:SelectSparqlShape
|
174
|
-
a sh:NodeShape ;
|
175
|
-
sh:targetClass must:SparqlSource ;
|
176
|
-
sh:property [ sh:path must:queryType ;
|
177
|
-
sh:targetClass must:SelectSparql ;
|
178
|
-
sh:minCount 1 ;
|
179
|
-
sh:maxCount 1 ; ] .
|
180
|
-
|
181
|
-
must:ConstructSparqlShape
|
182
|
-
a sh:NodeShape ;
|
183
|
-
sh:targetClass must:SparqlSource ;
|
184
|
-
sh:property [ sh:path must:queryType ;
|
185
|
-
sh:targetClass must:ConstructSparql ;
|
186
|
-
sh:minCount 1 ;
|
187
|
-
sh:maxCount 1 ; ] .
|
188
|
-
|
189
|
-
must:TextSparqlSourceShape
|
190
|
-
a sh:NodeShape ;
|
191
|
-
sh:targetClass must:TextSparqlSource ;
|
192
|
-
sh:property [ sh:path must:queryText ;
|
193
|
-
sh:minCount 1 ;
|
194
|
-
sh:maxCount 1 ; ] .
|
195
|
-
|
196
|
-
|
197
|
-
must:VariableBindingShape
|
198
|
-
a sh:NodeShape ;
|
199
|
-
sh:targetClass must:Binding ;
|
200
|
-
sh:property [ sh:path must:variable ;
|
201
|
-
sh:minCount 1 ;
|
202
|
-
sh:maxCount 1 ; ] ;
|
203
|
-
sh:property [ sh:path must:boundValue ;
|
204
|
-
sh:minCount 1 ;
|
205
|
-
sh:maxCount 1 ; ] .
|
206
|
-
|
207
|
-
must:RowShape
|
208
|
-
a sh:NodeShape ;
|
209
|
-
sh:targetClass must:Row ;
|
210
|
-
sh:property [ sh:path must:hasBinding ;
|
211
|
-
sh:node must:VariableBindingShape ;
|
212
|
-
sh:minCount 1 ; ] .
|
213
|
-
|
214
|
-
must:OrderedRowShape
|
215
|
-
a sh:NodeShape ;
|
216
|
-
sh:targetClass must:Row ;
|
217
|
-
sh:property [ sh:path sh:order ;
|
218
|
-
sh:minCount 2 ; ] ;
|
219
|
-
sh:property [ sh:path must:hasBinding ;
|
220
|
-
sh:node must:VariableBindingShape ;
|
221
|
-
sh:minCount 2 ; ] .
|
222
|
-
|
223
|
-
must:AnzoGraphmartStepSparqlSourceShape
|
224
|
-
a sh:NodeShape ;
|
225
|
-
sh:targetClass must:AnzoGraphmartStepSparqlSource ;
|
226
|
-
sh:property [ sh:path must:anzoQueryStep ;
|
227
|
-
sh:message "An Anzo graphmart step sparql source must have one query step." ;
|
228
|
-
sh:minCount 1 ;
|
229
|
-
sh:maxCount 1 ; ] .
|
230
|
-
|
231
|
-
must:AnzoGraphmartLayerSparqlSourceShape
|
232
|
-
a sh:NodeShape ;
|
233
|
-
sh:targetClass must:AnzoGraphmartLayerSparqlSource ;
|
234
|
-
sh:property [ sh:path must:anzoGraphmartLayer ;
|
235
|
-
sh:message "An Anzo graphmart layer sparql source must have one graphmart layer." ;
|
236
|
-
sh:minCount 1 ;
|
237
|
-
sh:maxCount 1 ; ] .
|
238
|
-
|
239
|
-
must:AnzoGraphmartQueryDrivenTemplatedStepSparqlSourceShape
|
240
|
-
a sh:NodeShape ;
|
241
|
-
sh:targetClass must:AnzoGraphmartQueryDrivenTemplatedStepSparqlSource ;
|
242
|
-
sh:property
|
243
|
-
[ sh:path must:anzoQueryStep ;
|
244
|
-
sh:message "An Anzo query driven templated step sparql source must have one query step." ;
|
245
|
-
sh:minCount 1 ;
|
246
|
-
sh:maxCount 1 ; ] ,
|
247
|
-
[ sh:path must:queryType ;
|
248
|
-
sh:message "An Anzo query driven templated step sparql source must have a query type of AnzoQueryDrivenUpdateSparql ." ;
|
249
|
-
sh:minCount 1 ;
|
250
|
-
sh:maxCount 1 ; ] .
|
251
|
-
|
252
|
-
|
253
|
-
|
1
|
+
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
|
2
|
+
@prefix sh: <http://www.w3.org/ns/shacl#> .
|
3
|
+
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
|
4
|
+
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
5
|
+
@prefix ex: <http://www.example.org/#> .
|
6
|
+
@prefix owl: <http://www.w3.org/2002/07/owl#> .
|
7
|
+
@prefix must: <https://mustrd.com/model/> .
|
8
|
+
|
9
|
+
must:
|
10
|
+
sh:declare [ sh:prefix "must" ;
|
11
|
+
sh:namespace "https://mustrd.com/model/"^^xsd:anyURI ; ] .
|
12
|
+
|
13
|
+
|
14
|
+
must:TestSpecShape
|
15
|
+
a sh:NodeShape ;
|
16
|
+
sh:targetClass must:TestSpec ;
|
17
|
+
sh:property [ sh:path must:given ;
|
18
|
+
sh:class must:Dataset ;
|
19
|
+
sh:minCount 1 ; ] ;
|
20
|
+
sh:property [ sh:path must:when ;
|
21
|
+
sh:class must:SparqlSource ;
|
22
|
+
sh:minCount 1 ; ] ;
|
23
|
+
sh:property [ sh:path must:then ;
|
24
|
+
sh:class must:Dataset ;
|
25
|
+
sh:minCount 1 ; ] .
|
26
|
+
|
27
|
+
must:TestSpecGivenShape
|
28
|
+
a sh:NodeShape ;
|
29
|
+
sh:targetClass must:TestSpec ;
|
30
|
+
sh:message "Invalid given clause: Table datasets for givens are not currently supported." ;
|
31
|
+
sh:not [ sh:path must:given ;
|
32
|
+
sh:class must:TableDataset ;
|
33
|
+
sh:minCount 1 ; ] .
|
34
|
+
|
35
|
+
must:TestSpecWithInheritedDatasetShape
|
36
|
+
a sh:NodeShape ;
|
37
|
+
sh:target [ a sh:SPARQLTarget ;
|
38
|
+
sh:prefixes must: ;
|
39
|
+
sh:select """
|
40
|
+
SELECT ?this
|
41
|
+
WHERE {
|
42
|
+
?this a must:TestSpec .
|
43
|
+
?this must:given/rdf:type must:InheritedDataset .
|
44
|
+
}
|
45
|
+
""" ; ] ;
|
46
|
+
sh:property [ sh:message "Invalid given clause: Tests using an inherited state can only have a single given clause.";
|
47
|
+
sh:path must:given ;
|
48
|
+
sh:minCount 1 ;
|
49
|
+
sh:maxCount 1 ; ] .
|
50
|
+
|
51
|
+
|
52
|
+
must:UpdateTestSpecThenValidationShape
|
53
|
+
a sh:NodeShape ;
|
54
|
+
sh:target [ a sh:SPARQLTarget ;
|
55
|
+
sh:prefixes must: ;
|
56
|
+
sh:select """
|
57
|
+
SELECT ?this
|
58
|
+
WHERE {
|
59
|
+
?this a must:TestSpec .
|
60
|
+
?this must:when/must:queryType must:UpdateSparql .
|
61
|
+
}
|
62
|
+
""" ; ] ;
|
63
|
+
sh:message "Invalid then clause: A tabular data format has been specified for a SPARQL update test." ;
|
64
|
+
sh:not [
|
65
|
+
sh:path must:then ;
|
66
|
+
sh:or ( [ sh:class must:TableDataset ]
|
67
|
+
[ sh:class must:EmptyTable ] ) ] .
|
68
|
+
|
69
|
+
must:ConstructTestSpecThenValidationShape
|
70
|
+
a sh:NodeShape ;
|
71
|
+
sh:target [ a sh:SPARQLTarget ;
|
72
|
+
sh:prefixes must: ;
|
73
|
+
sh:select """
|
74
|
+
SELECT ?this
|
75
|
+
WHERE {
|
76
|
+
?this a must:TestSpec .
|
77
|
+
?this must:when/must:queryType must:ConstructSparql .
|
78
|
+
}
|
79
|
+
""" ; ] ;
|
80
|
+
sh:message "Invalid then clause: A tabular data format has been specified for a SPARQL construct test." ;
|
81
|
+
sh:not [
|
82
|
+
sh:path must:then ;
|
83
|
+
sh:or ( [ sh:class must:TableDataset ]
|
84
|
+
[ sh:class must:EmptyTable ] ) ] .
|
85
|
+
|
86
|
+
must:UpdateTestSpecGivenValidationShape
|
87
|
+
a sh:NodeShape ;
|
88
|
+
sh:target [ a sh:SPARQLTarget ;
|
89
|
+
sh:prefixes must: ;
|
90
|
+
sh:select """
|
91
|
+
SELECT ?this
|
92
|
+
WHERE {
|
93
|
+
?this a must:TestSpec .
|
94
|
+
?this must:when/must:queryType must:UpdateSparql .
|
95
|
+
}
|
96
|
+
""" ; ] ; ;
|
97
|
+
sh:message "Invalid given clause: An inherited dataset cannot be specified for a SPARQL update test." ;
|
98
|
+
sh:not [ sh:path must:given ;
|
99
|
+
sh:class must:InheritedDataset ; ] .
|
100
|
+
|
101
|
+
must:SelectTestSpecValidationShape
|
102
|
+
a sh:NodeShape ;
|
103
|
+
sh:target [ a sh:SPARQLTarget ;
|
104
|
+
sh:prefixes must: ;
|
105
|
+
sh:select """
|
106
|
+
SELECT ?this
|
107
|
+
WHERE {
|
108
|
+
?this a must:TestSpec .
|
109
|
+
?this must:when/must:queryType must:SelectSparql .
|
110
|
+
}
|
111
|
+
""" ; ] ;
|
112
|
+
sh:property [ sh:message "Invalid then clause: The result format should be tabular for a SPARQL select test." ;
|
113
|
+
sh:path must:then ;
|
114
|
+
sh:or ( [ sh:class must:TableDataset ]
|
115
|
+
[ sh:class must:EmptyTable ]
|
116
|
+
[ sh:class must:FolderDataset ]
|
117
|
+
[ sh:class must:FileDataset ] ) ] .
|
118
|
+
|
119
|
+
must:StatementsDatasetShape
|
120
|
+
a sh:NodeShape ;
|
121
|
+
sh:targetClass must:StatementsDataset ;
|
122
|
+
sh:property [ sh:path must:hasStatement ;
|
123
|
+
sh:node must:StatementShape ;
|
124
|
+
sh:minCount 1 ; ] .
|
125
|
+
|
126
|
+
must:TableDatasetShape
|
127
|
+
a sh:NodeShape ;
|
128
|
+
sh:targetClass must:TableDataset ;
|
129
|
+
sh:property [ sh:path must:hasRow ;
|
130
|
+
sh:node must:RowShape ;
|
131
|
+
sh:minCount 1 ; ] .
|
132
|
+
|
133
|
+
must:OrderedTableDatasetShape
|
134
|
+
a sh:NodeShape ;
|
135
|
+
sh:targetClass must:OrderedTableDataset ;
|
136
|
+
sh:property [ sh:path must:hasRow ;
|
137
|
+
sh:node must:OrderedRowShape ;
|
138
|
+
sh:minCount 2 ; ] .
|
139
|
+
|
140
|
+
must:FileDatasetShape
|
141
|
+
a sh:NodeShape ;
|
142
|
+
sh:targetClass must:FileDataset ;
|
143
|
+
sh:property [ sh:path must:file ;
|
144
|
+
sh:datatype xsd:string ;
|
145
|
+
sh:minCount 1 ;
|
146
|
+
sh:maxCount 1 ; ] .
|
147
|
+
|
148
|
+
must:StatementShape
|
149
|
+
a sh:NodeShape ;
|
150
|
+
sh:targetClass rdf:Statement ;
|
151
|
+
sh:property [ sh:path rdf:subject ;
|
152
|
+
sh:minCount 1 ; ] ;
|
153
|
+
sh:property [ sh:path rdf:predicate ;
|
154
|
+
sh:minCount 1 ; ] ;
|
155
|
+
sh:property [ sh:path rdf:object ;
|
156
|
+
sh:minCount 1 ; ] .
|
157
|
+
|
158
|
+
must:SparqlSourceShape
|
159
|
+
a sh:NodeShape ;
|
160
|
+
sh:targetClass must:SparqlSource ;
|
161
|
+
sh:property [ sh:path must:queryType ;
|
162
|
+
sh:minCount 1 ;
|
163
|
+
sh:maxCount 1 ; ] .
|
164
|
+
|
165
|
+
must:UpdateSparqlShape
|
166
|
+
a sh:NodeShape ;
|
167
|
+
sh:targetClass must:SparqlSource ;
|
168
|
+
sh:property [ sh:path must:queryType ;
|
169
|
+
sh:targetClass must:UpdateSparql ;
|
170
|
+
sh:minCount 1 ;
|
171
|
+
sh:maxCount 1 ; ] .
|
172
|
+
|
173
|
+
must:SelectSparqlShape
|
174
|
+
a sh:NodeShape ;
|
175
|
+
sh:targetClass must:SparqlSource ;
|
176
|
+
sh:property [ sh:path must:queryType ;
|
177
|
+
sh:targetClass must:SelectSparql ;
|
178
|
+
sh:minCount 1 ;
|
179
|
+
sh:maxCount 1 ; ] .
|
180
|
+
|
181
|
+
must:ConstructSparqlShape
|
182
|
+
a sh:NodeShape ;
|
183
|
+
sh:targetClass must:SparqlSource ;
|
184
|
+
sh:property [ sh:path must:queryType ;
|
185
|
+
sh:targetClass must:ConstructSparql ;
|
186
|
+
sh:minCount 1 ;
|
187
|
+
sh:maxCount 1 ; ] .
|
188
|
+
|
189
|
+
must:TextSparqlSourceShape
|
190
|
+
a sh:NodeShape ;
|
191
|
+
sh:targetClass must:TextSparqlSource ;
|
192
|
+
sh:property [ sh:path must:queryText ;
|
193
|
+
sh:minCount 1 ;
|
194
|
+
sh:maxCount 1 ; ] .
|
195
|
+
|
196
|
+
|
197
|
+
must:VariableBindingShape
|
198
|
+
a sh:NodeShape ;
|
199
|
+
sh:targetClass must:Binding ;
|
200
|
+
sh:property [ sh:path must:variable ;
|
201
|
+
sh:minCount 1 ;
|
202
|
+
sh:maxCount 1 ; ] ;
|
203
|
+
sh:property [ sh:path must:boundValue ;
|
204
|
+
sh:minCount 1 ;
|
205
|
+
sh:maxCount 1 ; ] .
|
206
|
+
|
207
|
+
must:RowShape
|
208
|
+
a sh:NodeShape ;
|
209
|
+
sh:targetClass must:Row ;
|
210
|
+
sh:property [ sh:path must:hasBinding ;
|
211
|
+
sh:node must:VariableBindingShape ;
|
212
|
+
sh:minCount 1 ; ] .
|
213
|
+
|
214
|
+
must:OrderedRowShape
|
215
|
+
a sh:NodeShape ;
|
216
|
+
sh:targetClass must:Row ;
|
217
|
+
sh:property [ sh:path sh:order ;
|
218
|
+
sh:minCount 2 ; ] ;
|
219
|
+
sh:property [ sh:path must:hasBinding ;
|
220
|
+
sh:node must:VariableBindingShape ;
|
221
|
+
sh:minCount 2 ; ] .
|
222
|
+
|
223
|
+
must:AnzoGraphmartStepSparqlSourceShape
|
224
|
+
a sh:NodeShape ;
|
225
|
+
sh:targetClass must:AnzoGraphmartStepSparqlSource ;
|
226
|
+
sh:property [ sh:path must:anzoQueryStep ;
|
227
|
+
sh:message "An Anzo graphmart step sparql source must have one query step." ;
|
228
|
+
sh:minCount 1 ;
|
229
|
+
sh:maxCount 1 ; ] .
|
230
|
+
|
231
|
+
must:AnzoGraphmartLayerSparqlSourceShape
|
232
|
+
a sh:NodeShape ;
|
233
|
+
sh:targetClass must:AnzoGraphmartLayerSparqlSource ;
|
234
|
+
sh:property [ sh:path must:anzoGraphmartLayer ;
|
235
|
+
sh:message "An Anzo graphmart layer sparql source must have one graphmart layer." ;
|
236
|
+
sh:minCount 1 ;
|
237
|
+
sh:maxCount 1 ; ] .
|
238
|
+
|
239
|
+
must:AnzoGraphmartQueryDrivenTemplatedStepSparqlSourceShape
|
240
|
+
a sh:NodeShape ;
|
241
|
+
sh:targetClass must:AnzoGraphmartQueryDrivenTemplatedStepSparqlSource ;
|
242
|
+
sh:property
|
243
|
+
[ sh:path must:anzoQueryStep ;
|
244
|
+
sh:message "An Anzo query driven templated step sparql source must have one query step." ;
|
245
|
+
sh:minCount 1 ;
|
246
|
+
sh:maxCount 1 ; ] ,
|
247
|
+
[ sh:path must:queryType ;
|
248
|
+
sh:message "An Anzo query driven templated step sparql source must have a query type of AnzoQueryDrivenUpdateSparql ." ;
|
249
|
+
sh:minCount 1 ;
|
250
|
+
sh:maxCount 1 ; ] .
|
251
|
+
|
252
|
+
|
253
|
+
|
@@ -1,24 +1,24 @@
|
|
1
|
-
@prefix : <https://mustrd.com/mustrdTest/> .
|
2
|
-
@prefix sh: <http://www.w3.org/ns/shacl#> .
|
3
|
-
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
|
4
|
-
@prefix triplestore: <https://mustrd.com/triplestore/> .
|
5
|
-
@base <https://mustrd.com/mustrdTest/> .
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
:MustrdTestShape
|
11
|
-
a sh:NodeShape ;
|
12
|
-
sh:targetClass :MustrdTest ;
|
13
|
-
sh:property [ sh:path :hasDataPath ;
|
14
|
-
sh:datatype xsd:string ;
|
15
|
-
sh:minCount 1 ;
|
16
|
-
sh:maxCount 1 ],
|
17
|
-
[ sh:path :hasSpecPath ;
|
18
|
-
sh:datatype xsd:string ;
|
19
|
-
sh:minCount 1 ;
|
20
|
-
sh:maxCount 1 ],
|
21
|
-
[ sh:path :hasPytestPath ;
|
22
|
-
sh:datatype xsd:string ;
|
23
|
-
sh:maxCount 1 ] .
|
24
|
-
|
1
|
+
@prefix : <https://mustrd.com/mustrdTest/> .
|
2
|
+
@prefix sh: <http://www.w3.org/ns/shacl#> .
|
3
|
+
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
|
4
|
+
@prefix triplestore: <https://mustrd.com/triplestore/> .
|
5
|
+
@base <https://mustrd.com/mustrdTest/> .
|
6
|
+
|
7
|
+
|
8
|
+
|
9
|
+
|
10
|
+
:MustrdTestShape
|
11
|
+
a sh:NodeShape ;
|
12
|
+
sh:targetClass :MustrdTest ;
|
13
|
+
sh:property [ sh:path :hasDataPath ;
|
14
|
+
sh:datatype xsd:string ;
|
15
|
+
sh:minCount 1 ;
|
16
|
+
sh:maxCount 1 ],
|
17
|
+
[ sh:path :hasSpecPath ;
|
18
|
+
sh:datatype xsd:string ;
|
19
|
+
sh:minCount 1 ;
|
20
|
+
sh:maxCount 1 ],
|
21
|
+
[ sh:path :hasPytestPath ;
|
22
|
+
sh:datatype xsd:string ;
|
23
|
+
sh:maxCount 1 ] .
|
24
|
+
|