David Leal

Installation can be specified for either the productionOperations or the product…

…Volume part of an MPR
...@@ -20,74 +20,85 @@ ...@@ -20,74 +20,85 @@
20 <http://www.epim.no/schemas/mprml/1#A_Global-Objects> 20 <http://www.epim.no/schemas/mprml/1#A_Global-Objects>
21 spin:rule 21 spin:rule
22 [ rdf:type sp:Construct ; 22 [ rdf:type sp:Construct ;
23 - rdfs:comment "STEP 10020 Add the operator"^^xsd:string ; 23 + rdfs:comment "STEP 10001m Create the ProductionReport - extract the name from productVolume/installation where the installation is a field"^^xsd:string ;
24 - sp:templates ([ sp:object _:b1 ; 24 + sp:templates ([ sp:object <http://www.reportinghub.no/ep/schema/report#ProductionReport> ;
25 - sp:predicate <http://www.reportinghub.no/ep/schema/facility#facilityOperator> ; 25 + sp:predicate rdf:type ;
26 sp:subject 26 sp:subject
27 - [ sp:varName "temporalPartOfAProductionFacility"^^xsd:string 27 + [ sp:varName "productionReport"^^xsd:string
28 + ]
29 + ] [ sp:object spin:_this ;
30 + sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#derivedFrom> ;
31 + sp:subject
32 + [ sp:varName "productionReport"^^xsd:string
28 ] 33 ]
29 - ] [ sp:object <http://www.reportinghub.no/ep/schema/organization#Organization> ;
30 - sp:predicate rdf:type ;
31 - sp:subject _:b1
32 - ] [ sp:object
33 - [ sp:varName "operator"^^xsd:string
34 - ] ;
35 - sp:predicate <http://www.reportinghub.no/ep/schema/core#temporalPartOf> ;
36 - sp:subject _:b1
37 ]) ; 34 ]) ;
38 sp:where ([ sp:object 35 sp:where ([ sp:object
39 - [ sp:varName "contextRef"^^xsd:string 36 + [ sp:varName "intervalIdentifier"^^xsd:string
40 ] ; 37 ] ;
41 - sp:predicate <http://www.epim.no/schemas/mprml/1#contextRef> ; 38 + sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#intervalIdentifier> ;
42 sp:subject spin:_this 39 sp:subject spin:_this
43 - ] [ sp:object <http://www.epim.no/schemas/mprml/1#Obj_report> ; 40 + ] [ sp:object
41 + [ sp:varName "productVolumeRef"^^xsd:string
42 + ] ;
43 + sp:predicate <http://www.epim.no/schemas/mprml/1#objectRef> ;
44 + sp:subject spin:_this
45 + ] [ sp:object <http://www.epim.no/schemas/mprml/1#Obj_productVolume> ;
44 sp:predicate rdf:type ; 46 sp:predicate rdf:type ;
45 sp:subject 47 sp:subject
46 - [ sp:varName "contextRef"^^xsd:string 48 + [ sp:varName "productVolumeRef"^^xsd:string
47 ] 49 ]
48 ] [ sp:object 50 ] [ sp:object
49 - [ sp:varName "operatorRef"^^xsd:string 51 + [ sp:varName "installationRef"^^xsd:string
50 ] ; 52 ] ;
51 - sp:predicate <http://www.epim.no/schemas/mprml/1#operatorRef> ; 53 + sp:predicate <http://www.epim.no/schemas/mprml/1#installationRef> ;
52 sp:subject 54 sp:subject
53 - [ sp:varName "contextRef"^^xsd:string 55 + [ sp:varName "productVolumeRef"^^xsd:string
56 + ]
57 + ] [ sp:object <http://www.epim.no/schemas/mprml/1#RF_field> ;
58 + sp:predicate <http://www.epim.no/schemas/mprml/1#kindRef> ;
59 + sp:subject
60 + [ sp:varName "installationRef"^^xsd:string
54 ] 61 ]
55 ] [ sp:object 62 ] [ sp:object
56 - [ sp:varName "operatorRef"^^xsd:string 63 + [ sp:varName "installationRef"^^xsd:string
57 ] ; 64 ] ;
58 sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#derivedFrom> ; 65 sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#derivedFrom> ;
59 sp:subject 66 sp:subject
60 - [ sp:varName "operator"^^xsd:string 67 + [ sp:varName "installation"^^xsd:string
61 ] 68 ]
62 - ] [ sp:object spin:_this ; 69 + ] [ rdf:type sp:Bind ;
63 - sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#derivedFrom> ; 70 + sp:expression
64 - sp:subject 71 + [ rdf:type spl:object ;
65 - [ sp:varName "productionReport"^^xsd:string 72 + sp:arg1 [ sp:varName "installationRef"^^xsd:string
73 + ] ;
74 + sp:arg2 <http://www.reportinghub.no/ep/transform/transform-helper-schema#hasDerivedText>
75 + ] ;
76 + sp:variable
77 + [ sp:varName "normalizedInstallationName"^^xsd:string
66 ] 78 ]
67 - ] [ sp:object 79 + ] [ rdf:type sp:Bind ;
68 - [ sp:varName "temporalPartOfAProductionFacility"^^xsd:string 80 + sp:expression
81 + [ rdf:type ep-mpr-spin-lib:buildProductionReportURI ;
82 + sp:arg1 [ sp:varName "normalizedInstallationName"^^xsd:string
69 ] ; 83 ] ;
70 - sp:predicate <http://www.reportinghub.no/ep/schema/report#reportSubmittedBy> ; 84 + sp:arg2 [ sp:varName "intervalIdentifier"^^xsd:string
71 - sp:subject
72 - [ sp:varName "productionReport"^^xsd:string
73 ] 85 ]
74 - ] [ sp:object <http://www.reportinghub.no/ep/schema/facility#TemporalPartOfAProductionFacility> ; 86 + ] ;
75 - sp:predicate rdf:type ; 87 + sp:variable
76 - sp:subject 88 + [ sp:varName "productionReport"^^xsd:string
77 - [ sp:varName "temporalPartOfAProductionFacility"^^xsd:string
78 ] 89 ]
79 ]) 90 ])
80 ] ; 91 ] ;
81 spin:rule 92 spin:rule
82 [ rdf:type sp:Construct ; 93 [ rdf:type sp:Construct ;
83 - rdfs:comment "STEP 10001b Create the interval identifier - date and dateEnd from context"^^xsd:string ; 94 + rdfs:comment "STEP 10001a Create the inteval identifier - dateStart and dateEnd from context"^^xsd:string ;
84 sp:templates ([ sp:object 95 sp:templates ([ sp:object
85 [ sp:varName "intervalIdentifier"^^xsd:string 96 [ sp:varName "intervalIdentifier"^^xsd:string
86 ] ; 97 ] ;
87 sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#intervalIdentifier> ; 98 sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#intervalIdentifier> ;
88 sp:subject spin:_this 99 sp:subject spin:_this
89 ] [ sp:object 100 ] [ sp:object
90 - [ sp:varName "date"^^xsd:string 101 + [ sp:varName "dateStart"^^xsd:string
91 ] ; 102 ] ;
92 sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#intervalStart> ; 103 sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#intervalStart> ;
93 sp:subject spin:_this 104 sp:subject spin:_this
...@@ -108,21 +119,12 @@ ...@@ -108,21 +119,12 @@
108 [ sp:varName "contextRef"^^xsd:string 119 [ sp:varName "contextRef"^^xsd:string
109 ] 120 ]
110 ] [ sp:object 121 ] [ sp:object
111 - [ sp:varName "date"^^xsd:string
112 - ] ;
113 - sp:predicate <http://www.epim.no/schemas/mprml/1#date> ;
114 - sp:subject
115 - [ sp:varName "contextRef"^^xsd:string
116 - ]
117 - ] [ rdf:type sp:NotExists ;
118 - sp:elements ([ sp:object
119 [ sp:varName "dateStart"^^xsd:string 122 [ sp:varName "dateStart"^^xsd:string
120 ] ; 123 ] ;
121 sp:predicate <http://www.epim.no/schemas/mprml/1#dateStart> ; 124 sp:predicate <http://www.epim.no/schemas/mprml/1#dateStart> ;
122 sp:subject 125 sp:subject
123 [ sp:varName "contextRef"^^xsd:string 126 [ sp:varName "contextRef"^^xsd:string
124 ] 127 ]
125 - ])
126 ] [ sp:object 128 ] [ sp:object
127 [ sp:varName "dateEnd"^^xsd:string 129 [ sp:varName "dateEnd"^^xsd:string
128 ] ; 130 ] ;
...@@ -133,7 +135,7 @@ ...@@ -133,7 +135,7 @@
133 ] [ rdf:type sp:Bind ; 135 ] [ rdf:type sp:Bind ;
134 sp:expression 136 sp:expression
135 [ rdf:type ep-mpr-spin-lib:buildIntervalIdentifier ; 137 [ rdf:type ep-mpr-spin-lib:buildIntervalIdentifier ;
136 - sp:arg1 [ sp:varName "date"^^xsd:string 138 + sp:arg1 [ sp:varName "dateStart"^^xsd:string
137 ] ; 139 ] ;
138 sp:arg2 [ sp:varName "dateEnd"^^xsd:string 140 sp:arg2 [ sp:varName "dateEnd"^^xsd:string
139 ] 141 ]
...@@ -145,19 +147,19 @@ ...@@ -145,19 +147,19 @@
145 ] ; 147 ] ;
146 spin:rule 148 spin:rule
147 [ rdf:type sp:Construct ; 149 [ rdf:type sp:Construct ;
148 - rdfs:comment "STEP 10001a Create the inteval identifier - dateStart and dateEnd from context"^^xsd:string ; 150 + rdfs:comment "STEP 10001c Create the interval identifier - date from context"^^xsd:string ;
149 sp:templates ([ sp:object 151 sp:templates ([ sp:object
150 - [ sp:varName "intervalIdentifier"^^xsd:string 152 + [ sp:varName "date"^^xsd:string
151 ] ; 153 ] ;
152 sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#intervalIdentifier> ; 154 sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#intervalIdentifier> ;
153 sp:subject spin:_this 155 sp:subject spin:_this
154 ] [ sp:object 156 ] [ sp:object
155 - [ sp:varName "dateStart"^^xsd:string 157 + [ sp:varName "date"^^xsd:string
156 ] ; 158 ] ;
157 sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#intervalStart> ; 159 sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#intervalStart> ;
158 sp:subject spin:_this 160 sp:subject spin:_this
159 ] [ sp:object 161 ] [ sp:object
160 - [ sp:varName "dateEnd"^^xsd:string 162 + [ sp:varName "date"^^xsd:string
161 ] ; 163 ] ;
162 sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#intervalEnd> ; 164 sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#intervalEnd> ;
163 sp:subject spin:_this 165 sp:subject spin:_this
...@@ -173,37 +175,218 @@ ...@@ -173,37 +175,218 @@
173 [ sp:varName "contextRef"^^xsd:string 175 [ sp:varName "contextRef"^^xsd:string
174 ] 176 ]
175 ] [ sp:object 177 ] [ sp:object
178 + [ sp:varName "date"^^xsd:string
179 + ] ;
180 + sp:predicate <http://www.epim.no/schemas/mprml/1#date> ;
181 + sp:subject
182 + [ sp:varName "contextRef"^^xsd:string
183 + ]
184 + ] [ rdf:type sp:NotExists ;
185 + sp:elements ([ sp:object
176 [ sp:varName "dateStart"^^xsd:string 186 [ sp:varName "dateStart"^^xsd:string
177 ] ; 187 ] ;
178 sp:predicate <http://www.epim.no/schemas/mprml/1#dateStart> ; 188 sp:predicate <http://www.epim.no/schemas/mprml/1#dateStart> ;
179 sp:subject 189 sp:subject
180 [ sp:varName "contextRef"^^xsd:string 190 [ sp:varName "contextRef"^^xsd:string
181 ] 191 ]
182 - ] [ sp:object 192 + ])
193 + ] [ rdf:type sp:NotExists ;
194 + sp:elements ([ sp:object
183 [ sp:varName "dateEnd"^^xsd:string 195 [ sp:varName "dateEnd"^^xsd:string
184 ] ; 196 ] ;
185 sp:predicate <http://www.epim.no/schemas/mprml/1#dateEnd> ; 197 sp:predicate <http://www.epim.no/schemas/mprml/1#dateEnd> ;
186 sp:subject 198 sp:subject
187 [ sp:varName "contextRef"^^xsd:string 199 [ sp:varName "contextRef"^^xsd:string
188 ] 200 ]
189 - ] [ rdf:type sp:Bind ; 201 + ])
190 - sp:expression 202 + ])
191 - [ rdf:type ep-mpr-spin-lib:buildIntervalIdentifier ;
192 - sp:arg1 [ sp:varName "dateStart"^^xsd:string
193 ] ; 203 ] ;
194 - sp:arg2 [ sp:varName "dateEnd"^^xsd:string 204 + spin:rule
205 + [ rdf:type sp:Construct ;
206 + rdfs:comment "STEP 10010 Add the contextFacility"^^xsd:string ;
207 + sp:templates ([ sp:object
208 + [ sp:varName "contextFacility"^^xsd:string
209 + ] ;
210 + sp:predicate <http://www.reportinghub.no/ep/schema/geography#locatedWithin> ;
211 + sp:subject
212 + [ sp:varName "productionFacility"^^xsd:string
195 ] 213 ]
214 + ]) ;
215 + sp:where ([ sp:object
216 + [ sp:varName "contextRef"^^xsd:string
196 ] ; 217 ] ;
197 - sp:variable 218 + sp:predicate <http://www.epim.no/schemas/mprml/1#contextRef> ;
198 - [ sp:varName "intervalIdentifier"^^xsd:string 219 + sp:subject spin:_this
220 + ] [ sp:object <http://www.epim.no/schemas/mprml/1#Obj_report> ;
221 + sp:predicate rdf:type ;
222 + sp:subject
223 + [ sp:varName "contextRef"^^xsd:string
224 + ]
225 + ] [ sp:object
226 + [ sp:varName "contectFacilityRef"^^xsd:string
227 + ] ;
228 + sp:predicate <http://www.epim.no/schemas/mprml/1#contextFacilityRef> ;
229 + sp:subject
230 + [ sp:varName "contextRef"^^xsd:string
231 + ]
232 + ] [ sp:object
233 + [ sp:varName "contextFacilityRef"^^xsd:string
234 + ] ;
235 + sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#derivedFrom> ;
236 + sp:subject
237 + [ sp:varName "contextFacility"^^xsd:string
238 + ]
239 + ] [ sp:object spin:_this ;
240 + sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#derivedFrom> ;
241 + sp:subject
242 + [ sp:varName "productionReport"^^xsd:string
243 + ]
244 + ] [ sp:object
245 + [ sp:varName "temporalPartOfAProductionFacility"^^xsd:string
246 + ] ;
247 + sp:predicate <http://www.reportinghub.no/ep/schema/report#reportSubmittedBy> ;
248 + sp:subject
249 + [ sp:varName "productionReport"^^xsd:string
250 + ]
251 + ] [ sp:object <http://www.reportinghub.no/ep/schema/facility#TemporalPartOfAProductionFacility> ;
252 + sp:predicate rdf:type ;
253 + sp:subject
254 + [ sp:varName "temporalPartOfAProductionFacility"^^xsd:string
255 + ]
256 + ] [ sp:object
257 + [ sp:varName "productionFacility"^^xsd:string
258 + ] ;
259 + sp:predicate <http://www.reportinghub.no/ep/schema/core#temporalPartOf> ;
260 + sp:subject
261 + [ sp:varName "temporalPartOfAProductionFacility"^^xsd:string
262 + ]
263 + ])
264 + ] ;
265 + spin:rule
266 + [ rdf:type sp:Construct ;
267 + rdfs:comment "STEP 10020 Add the operator"^^xsd:string ;
268 + sp:templates ([ sp:object _:b1 ;
269 + sp:predicate <http://www.reportinghub.no/ep/schema/facility#facilityOperator> ;
270 + sp:subject
271 + [ sp:varName "temporalPartOfAProductionFacility"^^xsd:string
272 + ]
273 + ] [ sp:object <http://www.reportinghub.no/ep/schema/organization#Organization> ;
274 + sp:predicate rdf:type ;
275 + sp:subject _:b1
276 + ] [ sp:object
277 + [ sp:varName "operator"^^xsd:string
278 + ] ;
279 + sp:predicate <http://www.reportinghub.no/ep/schema/core#temporalPartOf> ;
280 + sp:subject _:b1
281 + ]) ;
282 + sp:where ([ sp:object
283 + [ sp:varName "contextRef"^^xsd:string
284 + ] ;
285 + sp:predicate <http://www.epim.no/schemas/mprml/1#contextRef> ;
286 + sp:subject spin:_this
287 + ] [ sp:object <http://www.epim.no/schemas/mprml/1#Obj_report> ;
288 + sp:predicate rdf:type ;
289 + sp:subject
290 + [ sp:varName "contextRef"^^xsd:string
291 + ]
292 + ] [ sp:object
293 + [ sp:varName "operatorRef"^^xsd:string
294 + ] ;
295 + sp:predicate <http://www.epim.no/schemas/mprml/1#operatorRef> ;
296 + sp:subject
297 + [ sp:varName "contextRef"^^xsd:string
298 + ]
299 + ] [ sp:object
300 + [ sp:varName "operatorRef"^^xsd:string
301 + ] ;
302 + sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#derivedFrom> ;
303 + sp:subject
304 + [ sp:varName "operator"^^xsd:string
305 + ]
306 + ] [ sp:object spin:_this ;
307 + sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#derivedFrom> ;
308 + sp:subject
309 + [ sp:varName "productionReport"^^xsd:string
310 + ]
311 + ] [ sp:object
312 + [ sp:varName "temporalPartOfAProductionFacility"^^xsd:string
313 + ] ;
314 + sp:predicate <http://www.reportinghub.no/ep/schema/report#reportSubmittedBy> ;
315 + sp:subject
316 + [ sp:varName "productionReport"^^xsd:string
317 + ]
318 + ] [ sp:object <http://www.reportinghub.no/ep/schema/facility#TemporalPartOfAProductionFacility> ;
319 + sp:predicate rdf:type ;
320 + sp:subject
321 + [ sp:varName "temporalPartOfAProductionFacility"^^xsd:string
199 ] 322 ]
200 ]) 323 ])
201 ] ; 324 ] ;
202 - spin:rule 325 + spin:rule
203 - [ rdf:type sp:Construct ; 326 + [ rdf:type sp:Construct ;
204 - rdfs:comment "STEP 10001e Create the interval identifier - no date"^^xsd:string ; 327 + rdfs:comment "STEP 10001q Set the submitting installation"^^xsd:string ;
205 - sp:templates ([ sp:object "noDate" ; 328 + sp:templates ([ sp:object _:b2 ;
206 - sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#intervalIdentifier> ; 329 + sp:predicate <http://www.reportinghub.no/ep/schema/report#reportSubmittedBy> ;
330 + sp:subject
331 + [ sp:varName "productionReport"^^xsd:string
332 + ]
333 + ] [ sp:object <http://www.reportinghub.no/ep/schema/facility#TemporalPartOfAProductionFacility> ;
334 + sp:predicate rdf:type ;
335 + sp:subject _:b2
336 + ] [ sp:object
337 + [ sp:varName "installation"^^xsd:string
338 + ] ;
339 + sp:predicate <http://www.reportinghub.no/ep/schema/core#temporalPartOf> ;
340 + sp:subject _:b2
341 + ]) ;
342 + sp:where ([ sp:object
343 + [ sp:varName "contextRef"^^xsd:string
344 + ] ;
345 + sp:predicate <http://www.epim.no/schemas/mprml/1#contextRef> ;
346 + sp:subject spin:_this
347 + ] [ sp:object spin:_this ;
348 + sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#derivedFrom> ;
349 + sp:subject
350 + [ sp:varName "productionReport"^^xsd:string
351 + ]
352 + ] [ sp:object <http://www.epim.no/schemas/mprml/1#Obj_report> ;
353 + sp:predicate rdf:type ;
354 + sp:subject
355 + [ sp:varName "contextRef"^^xsd:string
356 + ]
357 + ] [ sp:object
358 + [ sp:varName "installationRef"^^xsd:string
359 + ] ;
360 + sp:predicate <http://www.epim.no/schemas/mprml/1#installationRef> ;
361 + sp:subject
362 + [ sp:varName "contextRef"^^xsd:string
363 + ]
364 + ] [ sp:object
365 + [ sp:varName "installationRef"^^xsd:string
366 + ] ;
367 + sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#derivedFrom> ;
368 + sp:subject
369 + [ sp:varName "installation"^^xsd:string
370 + ]
371 + ])
372 + ] ;
373 + spin:rule
374 + [ rdf:type sp:Construct ;
375 + rdfs:comment "STEP 10001d Create the interval identifier - dateEnd from context"^^xsd:string ;
376 + sp:templates ([ sp:object
377 + [ sp:varName "dateEnd"^^xsd:string
378 + ] ;
379 + sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#intervalIdentifier> ;
380 + sp:subject spin:_this
381 + ] [ sp:object
382 + [ sp:varName "dateEnd"^^xsd:string
383 + ] ;
384 + sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#intervalStart> ;
385 + sp:subject spin:_this
386 + ] [ sp:object
387 + [ sp:varName "dateEnd"^^xsd:string
388 + ] ;
389 + sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#intervalEnd> ;
207 sp:subject spin:_this 390 sp:subject spin:_this
208 ]) ; 391 ]) ;
209 sp:where ([ sp:object 392 sp:where ([ sp:object
...@@ -216,15 +399,13 @@ ...@@ -216,15 +399,13 @@
216 sp:subject 399 sp:subject
217 [ sp:varName "contextRef"^^xsd:string 400 [ sp:varName "contextRef"^^xsd:string
218 ] 401 ]
219 - ] [ rdf:type sp:NotExists ; 402 + ] [ sp:object
220 - sp:elements ([ sp:object
221 [ sp:varName "dateEnd"^^xsd:string 403 [ sp:varName "dateEnd"^^xsd:string
222 ] ; 404 ] ;
223 sp:predicate <http://www.epim.no/schemas/mprml/1#dateEnd> ; 405 sp:predicate <http://www.epim.no/schemas/mprml/1#dateEnd> ;
224 sp:subject 406 sp:subject
225 [ sp:varName "contextRef"^^xsd:string 407 [ sp:varName "contextRef"^^xsd:string
226 ] 408 ]
227 - ])
228 ] [ rdf:type sp:NotExists ; 409 ] [ rdf:type sp:NotExists ;
229 sp:elements ([ sp:object 410 sp:elements ([ sp:object
230 [ sp:varName "date"^^xsd:string 411 [ sp:varName "date"^^xsd:string
...@@ -247,9 +428,9 @@ ...@@ -247,9 +428,9 @@
247 ] ; 428 ] ;
248 spin:rule 429 spin:rule
249 [ rdf:type sp:Construct ; 430 [ rdf:type sp:Construct ;
250 - rdfs:comment "STEP 10001c Create the interval identifier - date from context"^^xsd:string ; 431 + rdfs:comment "STEP 10001b Create the interval identifier - date and dateEnd from context"^^xsd:string ;
251 sp:templates ([ sp:object 432 sp:templates ([ sp:object
252 - [ sp:varName "date"^^xsd:string 433 + [ sp:varName "intervalIdentifier"^^xsd:string
253 ] ; 434 ] ;
254 sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#intervalIdentifier> ; 435 sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#intervalIdentifier> ;
255 sp:subject spin:_this 436 sp:subject spin:_this
...@@ -259,7 +440,7 @@ ...@@ -259,7 +440,7 @@
259 sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#intervalStart> ; 440 sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#intervalStart> ;
260 sp:subject spin:_this 441 sp:subject spin:_this
261 ] [ sp:object 442 ] [ sp:object
262 - [ sp:varName "date"^^xsd:string 443 + [ sp:varName "dateEnd"^^xsd:string
263 ] ; 444 ] ;
264 sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#intervalEnd> ; 445 sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#intervalEnd> ;
265 sp:subject spin:_this 446 sp:subject spin:_this
...@@ -290,15 +471,24 @@ ...@@ -290,15 +471,24 @@
290 [ sp:varName "contextRef"^^xsd:string 471 [ sp:varName "contextRef"^^xsd:string
291 ] 472 ]
292 ]) 473 ])
293 - ] [ rdf:type sp:NotExists ; 474 + ] [ sp:object
294 - sp:elements ([ sp:object
295 [ sp:varName "dateEnd"^^xsd:string 475 [ sp:varName "dateEnd"^^xsd:string
296 ] ; 476 ] ;
297 sp:predicate <http://www.epim.no/schemas/mprml/1#dateEnd> ; 477 sp:predicate <http://www.epim.no/schemas/mprml/1#dateEnd> ;
298 sp:subject 478 sp:subject
299 [ sp:varName "contextRef"^^xsd:string 479 [ sp:varName "contextRef"^^xsd:string
300 ] 480 ]
301 - ]) 481 + ] [ rdf:type sp:Bind ;
482 + sp:expression
483 + [ rdf:type ep-mpr-spin-lib:buildIntervalIdentifier ;
484 + sp:arg1 [ sp:varName "date"^^xsd:string
485 + ] ;
486 + sp:arg2 [ sp:varName "dateEnd"^^xsd:string
487 + ]
488 + ] ;
489 + sp:variable
490 + [ sp:varName "intervalIdentifier"^^xsd:string
491 + ]
302 ]) 492 ])
303 ] ; 493 ] ;
304 spin:rule 494 spin:rule
...@@ -363,131 +553,89 @@ ...@@ -363,131 +553,89 @@
363 ] ; 553 ] ;
364 spin:rule 554 spin:rule
365 [ rdf:type sp:Construct ; 555 [ rdf:type sp:Construct ;
366 - rdfs:comment "STEP 10001n Set the submitting installation"^^xsd:string ; 556 + rdfs:comment "STEP 10001o Create the ProductionReport - unable to find a name"^^xsd:string ;
367 - sp:templates ([ sp:object _:b2 ; 557 + sp:templates ([ sp:object <http://www.reportinghub.no/ep/schema/report#ProductionReport> ;
368 - sp:predicate <http://www.reportinghub.no/ep/schema/report#reportSubmittedBy> ; 558 + sp:predicate rdf:type ;
369 sp:subject 559 sp:subject
370 [ sp:varName "productionReport"^^xsd:string 560 [ sp:varName "productionReport"^^xsd:string
371 ] 561 ]
372 - ] [ sp:object <http://www.reportinghub.no/ep/schema/facility#TemporalPartOfAProductionFacility> ;
373 - sp:predicate rdf:type ;
374 - sp:subject _:b2
375 - ] [ sp:object
376 - [ sp:varName "installation"^^xsd:string
377 - ] ;
378 - sp:predicate <http://www.reportinghub.no/ep/schema/core#temporalPartOf> ;
379 - sp:subject _:b2
380 - ]) ;
381 - sp:where ([ sp:object
382 - [ sp:varName "contextRef"^^xsd:string
383 - ] ;
384 - sp:predicate <http://www.epim.no/schemas/mprml/1#contextRef> ;
385 - sp:subject spin:_this
386 ] [ sp:object spin:_this ; 562 ] [ sp:object spin:_this ;
387 sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#derivedFrom> ; 563 sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#derivedFrom> ;
388 sp:subject 564 sp:subject
389 [ sp:varName "productionReport"^^xsd:string 565 [ sp:varName "productionReport"^^xsd:string
390 ] 566 ]
391 - ] [ sp:object <http://www.epim.no/schemas/mprml/1#Obj_report> ; 567 + ]) ;
568 + sp:where ([ sp:object
569 + [ sp:varName "intervalIdentifier"^^xsd:string
570 + ] ;
571 + sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#intervalIdentifier> ;
572 + sp:subject spin:_this
573 + ] [ rdf:type sp:NotExists ;
574 + sp:elements ([ sp:object
575 + [ sp:varName "productVolumeRef"^^xsd:string
576 + ] ;
577 + sp:predicate <http://www.epim.no/schemas/mprml/1#objectRef> ;
578 + sp:subject spin:_this
579 + ] [ sp:object <http://www.epim.no/schemas/mprml/1#Obj_productVolume> ;
392 sp:predicate rdf:type ; 580 sp:predicate rdf:type ;
393 sp:subject 581 sp:subject
394 - [ sp:varName "contextRef"^^xsd:string 582 + [ sp:varName "productVolumeRef"^^xsd:string
395 ] 583 ]
396 ] [ sp:object 584 ] [ sp:object
397 [ sp:varName "installationRef"^^xsd:string 585 [ sp:varName "installationRef"^^xsd:string
398 ] ; 586 ] ;
399 sp:predicate <http://www.epim.no/schemas/mprml/1#installationRef> ; 587 sp:predicate <http://www.epim.no/schemas/mprml/1#installationRef> ;
400 sp:subject 588 sp:subject
401 - [ sp:varName "contextRef"^^xsd:string 589 + [ sp:varName "productVolumeRef"^^xsd:string
402 ] 590 ]
403 - ] [ sp:object 591 + ] [ sp:object <http://www.epim.no/schemas/mprml/1#RF_field> ;
404 - [ sp:varName "installationRef"^^xsd:string 592 + sp:predicate <http://www.epim.no/schemas/mprml/1#kindRef> ;
405 - ] ;
406 - sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#derivedFrom> ;
407 sp:subject 593 sp:subject
408 - [ sp:varName "installation"^^xsd:string 594 + [ sp:varName "installationRef"^^xsd:string
409 ] 595 ]
410 ]) 596 ])
597 + ] [ rdf:type sp:NotExists ;
598 + sp:elements ([ sp:object
599 + [ sp:varName "productionOperationRef"^^xsd:string
411 ] ; 600 ] ;
412 - spin:rule 601 + sp:predicate <http://www.epim.no/schemas/mprml/1#objectRef> ;
413 - [ rdf:type sp:Construct ;
414 - rdfs:comment "STEP 10010 Add the contextFacility"^^xsd:string ;
415 - sp:templates ([ sp:object
416 - [ sp:varName "contextFacility"^^xsd:string
417 - ] ;
418 - sp:predicate <http://www.reportinghub.no/ep/schema/geography#locatedWithin> ;
419 - sp:subject
420 - [ sp:varName "productionFacility"^^xsd:string
421 - ]
422 - ]) ;
423 - sp:where ([ sp:object
424 - [ sp:varName "contextRef"^^xsd:string
425 - ] ;
426 - sp:predicate <http://www.epim.no/schemas/mprml/1#contextRef> ;
427 sp:subject spin:_this 602 sp:subject spin:_this
428 - ] [ sp:object <http://www.epim.no/schemas/mprml/1#Obj_report> ; 603 + ] [ sp:object <http://www.epim.no/schemas/mprml/1#Obj_productionOperation> ;
429 sp:predicate rdf:type ; 604 sp:predicate rdf:type ;
430 sp:subject 605 sp:subject
431 - [ sp:varName "contextRef"^^xsd:string 606 + [ sp:varName "productionOperationRef"^^xsd:string
432 ] 607 ]
433 ] [ sp:object 608 ] [ sp:object
434 - [ sp:varName "contectFacilityRef"^^xsd:string 609 + [ sp:varName "installationRefx"^^xsd:string
435 ] ; 610 ] ;
436 - sp:predicate <http://www.epim.no/schemas/mprml/1#contextFacilityRef> ; 611 + sp:predicate <http://www.epim.no/schemas/mprml/1#installationRef> ;
437 sp:subject 612 sp:subject
438 - [ sp:varName "contextRef"^^xsd:string 613 + [ sp:varName "productionOperationRef"^^xsd:string
439 ] 614 ]
440 - ] [ sp:object 615 + ] [ sp:object <http://www.epim.no/schemas/mprml/1#RF_field> ;
441 - [ sp:varName "contextFacilityRef"^^xsd:string 616 + sp:predicate <http://www.epim.no/schemas/mprml/1#kindRef> ;
442 - ] ;
443 - sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#derivedFrom> ;
444 sp:subject 617 sp:subject
445 - [ sp:varName "contextFacility"^^xsd:string 618 + [ sp:varName "installationRefx"^^xsd:string
446 ] 619 ]
447 - ] [ sp:object spin:_this ; 620 + ])
448 - sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#derivedFrom> ; 621 + ] [ rdf:type sp:Bind ;
449 - sp:subject 622 + sp:expression
450 - [ sp:varName "productionReport"^^xsd:string 623 + [ rdf:type ep-mpr-spin-lib:buildProductionReportURI ;
624 + sp:arg1 "installation-not-specified" ;
625 + sp:arg2 [ sp:varName "intervalIdentifier"^^xsd:string
451 ] 626 ]
452 - ] [ sp:object
453 - [ sp:varName "temporalPartOfAProductionFacility"^^xsd:string
454 ] ; 627 ] ;
455 - sp:predicate <http://www.reportinghub.no/ep/schema/report#reportSubmittedBy> ; 628 + sp:variable
456 - sp:subject
457 [ sp:varName "productionReport"^^xsd:string 629 [ sp:varName "productionReport"^^xsd:string
458 ] 630 ]
459 - ] [ sp:object <http://www.reportinghub.no/ep/schema/facility#TemporalPartOfAProductionFacility> ;
460 - sp:predicate rdf:type ;
461 - sp:subject
462 - [ sp:varName "temporalPartOfAProductionFacility"^^xsd:string
463 - ]
464 - ] [ sp:object
465 - [ sp:varName "productionFacility"^^xsd:string
466 - ] ;
467 - sp:predicate <http://www.reportinghub.no/ep/schema/core#temporalPartOf> ;
468 - sp:subject
469 - [ sp:varName "temporalPartOfAProductionFacility"^^xsd:string
470 - ]
471 ]) 631 ])
472 ] ; 632 ] ;
473 spin:rule 633 spin:rule
474 [ rdf:type sp:Construct ; 634 [ rdf:type sp:Construct ;
475 - rdfs:comment "STEP 10001d Create the interval identifier - dateEnd from context"^^xsd:string ; 635 + rdfs:comment "STEP 10001e Create the interval identifier - no date"^^xsd:string ;
476 - sp:templates ([ sp:object 636 + sp:templates ([ sp:object "noDate" ;
477 - [ sp:varName "dateEnd"^^xsd:string
478 - ] ;
479 sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#intervalIdentifier> ; 637 sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#intervalIdentifier> ;
480 sp:subject spin:_this 638 sp:subject spin:_this
481 - ] [ sp:object
482 - [ sp:varName "dateEnd"^^xsd:string
483 - ] ;
484 - sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#intervalStart> ;
485 - sp:subject spin:_this
486 - ] [ sp:object
487 - [ sp:varName "dateEnd"^^xsd:string
488 - ] ;
489 - sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#intervalEnd> ;
490 - sp:subject spin:_this
491 ]) ; 639 ]) ;
492 sp:where ([ sp:object 640 sp:where ([ sp:object
493 [ sp:varName "contextRef"^^xsd:string 641 [ sp:varName "contextRef"^^xsd:string
...@@ -499,13 +647,15 @@ ...@@ -499,13 +647,15 @@
499 sp:subject 647 sp:subject
500 [ sp:varName "contextRef"^^xsd:string 648 [ sp:varName "contextRef"^^xsd:string
501 ] 649 ]
502 - ] [ sp:object 650 + ] [ rdf:type sp:NotExists ;
651 + sp:elements ([ sp:object
503 [ sp:varName "dateEnd"^^xsd:string 652 [ sp:varName "dateEnd"^^xsd:string
504 ] ; 653 ] ;
505 sp:predicate <http://www.epim.no/schemas/mprml/1#dateEnd> ; 654 sp:predicate <http://www.epim.no/schemas/mprml/1#dateEnd> ;
506 sp:subject 655 sp:subject
507 [ sp:varName "contextRef"^^xsd:string 656 [ sp:varName "contextRef"^^xsd:string
508 ] 657 ]
658 + ])
509 ] [ rdf:type sp:NotExists ; 659 ] [ rdf:type sp:NotExists ;
510 sp:elements ([ sp:object 660 sp:elements ([ sp:object
511 [ sp:varName "date"^^xsd:string 661 [ sp:varName "date"^^xsd:string
...@@ -528,7 +678,88 @@ ...@@ -528,7 +678,88 @@
528 ] ; 678 ] ;
529 spin:rule 679 spin:rule
530 [ rdf:type sp:Construct ; 680 [ rdf:type sp:Construct ;
531 - rdfs:comment "STEP 10001m Create the ProductionReport - extract the name from productVolume/installation where the installation is a field"^^xsd:string ; 681 + rdfs:comment "STEP 10001p Create the ProductionReport - check that different installations are not specified"^^xsd:string ;
682 + sp:templates ([ sp:object "Error - different installations specified for different parts of the same report" ;
683 + sp:predicate <http://www.reportinghub.no/ep/schema/core#name> ;
684 + sp:subject
685 + [ sp:varName "productionReport"^^xsd:string
686 + ]
687 + ]) ;
688 + sp:where ([ sp:object
689 + [ sp:varName "intervalIdentifier"^^xsd:string
690 + ] ;
691 + sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#intervalIdentifier> ;
692 + sp:subject spin:_this
693 + ] [ sp:object
694 + [ sp:varName "productVolumeRef"^^xsd:string
695 + ] ;
696 + sp:predicate <http://www.epim.no/schemas/mprml/1#objectRef> ;
697 + sp:subject spin:_this
698 + ] [ sp:object <http://www.epim.no/schemas/mprml/1#Obj_productVolume> ;
699 + sp:predicate rdf:type ;
700 + sp:subject
701 + [ sp:varName "productVolumeRef"^^xsd:string
702 + ]
703 + ] [ sp:object
704 + [ sp:varName "installationRef"^^xsd:string
705 + ] ;
706 + sp:predicate <http://www.epim.no/schemas/mprml/1#installationRef> ;
707 + sp:subject
708 + [ sp:varName "productVolumeRef"^^xsd:string
709 + ]
710 + ] [ sp:object <http://www.epim.no/schemas/mprml/1#RF_field> ;
711 + sp:predicate <http://www.epim.no/schemas/mprml/1#kindRef> ;
712 + sp:subject
713 + [ sp:varName "installationRef"^^xsd:string
714 + ]
715 + ] [ sp:object
716 + [ sp:varName "productionOperationRef"^^xsd:string
717 + ] ;
718 + sp:predicate <http://www.epim.no/schemas/mprml/1#objectRef> ;
719 + sp:subject spin:_this
720 + ] [ sp:object <http://www.epim.no/schemas/mprml/1#Obj_productionOperation> ;
721 + sp:predicate rdf:type ;
722 + sp:subject
723 + [ sp:varName "productionOperationRef"^^xsd:string
724 + ]
725 + ] [ sp:object
726 + [ sp:varName "installationRefx"^^xsd:string
727 + ] ;
728 + sp:predicate <http://www.epim.no/schemas/mprml/1#installationRef> ;
729 + sp:subject
730 + [ sp:varName "productionOperationRef"^^xsd:string
731 + ]
732 + ] [ sp:object <http://www.epim.no/schemas/mprml/1#RF_field> ;
733 + sp:predicate <http://www.epim.no/schemas/mprml/1#kindRef> ;
734 + sp:subject
735 + [ sp:varName "installationRefx"^^xsd:string
736 + ]
737 + ] [ rdf:type sp:NotExists ;
738 + sp:elements ([ sp:object
739 + [ sp:varName "installationRef"^^xsd:string
740 + ] ;
741 + sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#derivedFrom> ;
742 + sp:subject
743 + [ sp:varName "installation"^^xsd:string
744 + ]
745 + ] [ sp:object
746 + [ sp:varName "installationRefx"^^xsd:string
747 + ] ;
748 + sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#derivedFrom> ;
749 + sp:subject
750 + [ sp:varName "installation"^^xsd:string
751 + ]
752 + ])
753 + ] [ sp:object spin:_this ;
754 + sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#derivedFrom> ;
755 + sp:subject
756 + [ sp:varName "productionReport"^^xsd:string
757 + ]
758 + ])
759 + ] ;
760 + spin:rule
761 + [ rdf:type sp:Construct ;
762 + rdfs:comment "STEP 10001n Create the ProductionReport - extract the name from productionOperation/installation where the installation is a field"^^xsd:string ;
532 sp:templates ([ sp:object <http://www.reportinghub.no/ep/schema/report#ProductionReport> ; 763 sp:templates ([ sp:object <http://www.reportinghub.no/ep/schema/report#ProductionReport> ;
533 sp:predicate rdf:type ; 764 sp:predicate rdf:type ;
534 sp:subject 765 sp:subject
...@@ -546,33 +777,57 @@ ...@@ -546,33 +777,57 @@
546 sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#intervalIdentifier> ; 777 sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#intervalIdentifier> ;
547 sp:subject spin:_this 778 sp:subject spin:_this
548 ] [ sp:object 779 ] [ sp:object
549 - [ sp:varName "productVolumeRef"^^xsd:string 780 + [ sp:varName "productionOperationRef"^^xsd:string
550 ] ; 781 ] ;
551 sp:predicate <http://www.epim.no/schemas/mprml/1#objectRef> ; 782 sp:predicate <http://www.epim.no/schemas/mprml/1#objectRef> ;
552 sp:subject spin:_this 783 sp:subject spin:_this
553 - ] [ sp:object <http://www.epim.no/schemas/mprml/1#Obj_productVolume> ; 784 + ] [ sp:object <http://www.epim.no/schemas/mprml/1#Obj_productionOperation> ;
554 sp:predicate rdf:type ; 785 sp:predicate rdf:type ;
555 sp:subject 786 sp:subject
556 - [ sp:varName "productVolumeRef"^^xsd:string 787 + [ sp:varName "productionOperationRef"^^xsd:string
557 ] 788 ]
558 ] [ sp:object 789 ] [ sp:object
559 [ sp:varName "installationRef"^^xsd:string 790 [ sp:varName "installationRef"^^xsd:string
560 ] ; 791 ] ;
561 sp:predicate <http://www.epim.no/schemas/mprml/1#installationRef> ; 792 sp:predicate <http://www.epim.no/schemas/mprml/1#installationRef> ;
562 sp:subject 793 sp:subject
794 + [ sp:varName "productionOperationRef"^^xsd:string
795 + ]
796 + ] [ sp:object <http://www.epim.no/schemas/mprml/1#RF_field> ;
797 + sp:predicate <http://www.epim.no/schemas/mprml/1#kindRef> ;
798 + sp:subject
799 + [ sp:varName "installationRef"^^xsd:string
800 + ]
801 + ] [ rdf:type sp:NotExists ;
802 + sp:elements ([ sp:object
803 + [ sp:varName "productVolumeRef"^^xsd:string
804 + ] ;
805 + sp:predicate <http://www.epim.no/schemas/mprml/1#objectRef> ;
806 + sp:subject spin:_this
807 + ] [ sp:object <http://www.epim.no/schemas/mprml/1#Obj_productVolume> ;
808 + sp:predicate rdf:type ;
809 + sp:subject
563 [ sp:varName "productVolumeRef"^^xsd:string 810 [ sp:varName "productVolumeRef"^^xsd:string
564 ] 811 ]
565 ] [ sp:object 812 ] [ sp:object
566 - [ sp:varName "installationRef"^^xsd:string 813 + [ sp:varName "installationRefx"^^xsd:string
567 ] ; 814 ] ;
568 - sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#derivedFrom> ; 815 + sp:predicate <http://www.epim.no/schemas/mprml/1#installationRef> ;
569 sp:subject 816 sp:subject
570 - [ sp:varName "installation"^^xsd:string 817 + [ sp:varName "productVolumeRef"^^xsd:string
571 ] 818 ]
572 ] [ sp:object <http://www.epim.no/schemas/mprml/1#RF_field> ; 819 ] [ sp:object <http://www.epim.no/schemas/mprml/1#RF_field> ;
573 sp:predicate <http://www.epim.no/schemas/mprml/1#kindRef> ; 820 sp:predicate <http://www.epim.no/schemas/mprml/1#kindRef> ;
574 sp:subject 821 sp:subject
822 + [ sp:varName "installationRefx"^^xsd:string
823 + ]
824 + ])
825 + ] [ sp:object
575 [ sp:varName "installationRef"^^xsd:string 826 [ sp:varName "installationRef"^^xsd:string
827 + ] ;
828 + sp:predicate <http://www.reportinghub.no/ep/transform/transform-helper-schema#derivedFrom> ;
829 + sp:subject
830 + [ sp:varName "installation"^^xsd:string
576 ] 831 ]
577 ] [ rdf:type sp:Bind ; 832 ] [ rdf:type sp:Bind ;
578 sp:expression 833 sp:expression
...@@ -600,5 +855,5 @@ ...@@ -600,5 +855,5 @@
600 855
601 <http://www.reportinghub.no/ep/transform/TRANSFORM_mpr-productionReport-v1.0> 856 <http://www.reportinghub.no/ep/transform/TRANSFORM_mpr-productionReport-v1.0>
602 rdf:type owl:Ontology ; 857 rdf:type owl:Ontology ;
603 - owl:imports <http://www.reportinghub.no/ep/mpr/spin/1.1/lib> , <http://www.epim.no/schemas/mprml/1> , <http://spinrdf.org/spin> , <http://www.reportinghub.no/ep/dpr/spin/1.1/lib> , <http://www.reportinghub.no/ep/transform/transform-helper-schema> ; 858 + owl:imports <http://www.reportinghub.no/ep/transform/transform-helper-schema> , <http://www.reportinghub.no/ep/dpr/spin/1.1/lib> , <http://spinrdf.org/spin> , <http://www.epim.no/schemas/mprml/1> , <http://www.reportinghub.no/ep/mpr/spin/1.1/lib> ;
604 owl:versionInfo "Created with TopBraid Composer"^^xsd:string . 859 owl:versionInfo "Created with TopBraid Composer"^^xsd:string .
......