MonkeyChap

more on mpr well test

......@@ -8,6 +8,9 @@
@prefix : <http://www.reportinghub.no/ep/transform/1.0/mpr/wellTest#> .
@prefix arg: <http://spinrdf.org/arg#> .
@prefix ep-dpr-spin-lib: <http://www.reportinghub.no/ep/dpr/spin/1.1/lib#> .
@prefix ep-spin-lib: <http://www.reportinghub.no/ep/spin/lib#> .
@prefix fn: <http://www.w3.org/2005/xpath-functions#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
......@@ -21,7 +24,8 @@
spin:rule
[ rdf:type sp:Construct ;
rdfs:comment """STEP 30101 Create WellTest activity - anonymous because there is no mandatory data about it
DPR was using wellbore for this, here we use Well."""^^xsd:string ;
DPR was using wellbore for this, here we use Well.
Would be much better if we could assume testDate is mandatory - that would give us a unique ID and a way to link to predecessor."""^^xsd:string ;
sp:templates ([ sp:object <http://www.reportinghub.no/ep/schema/activity#WellTest> ;
sp:predicate rdf:type ;
sp:subject
......@@ -42,12 +46,38 @@ DPR was using wellbore for this, here we use Well."""^^xsd:string ;
[ sp:varName "epWellTest"^^xsd:string
]
] [ sp:object
[ sp:varName "epWell"^^xsd:string
[ sp:varName "epWellTP"^^xsd:string
] ;
sp:predicate <http://www.reportinghub.no/ep/schema/activity#onWell> ;
sp:subject
[ sp:varName "epWellTest"^^xsd:string
]
] [ sp:object
[ sp:varName "wellTestName"^^xsd:string
] ;
sp:predicate rdfs:label ;
sp:subject
[ sp:varName "epWellTest"^^xsd:string
]
] [ sp:object
[ sp:varName "wellTest"^^xsd:string
] ;
sp:predicate <http://www.reportinghub.no/ep/schema/core#derivedFrom> ;
sp:subject
[ sp:varName "epWellTest"^^xsd:string
]
] [ sp:object <http://www.reportinghub.no/ep/schema/well#TemporalPartOfAWell> ;
sp:predicate rdf:type ;
sp:subject
[ sp:varName "epWellTP"^^xsd:string
]
] [ sp:object
[ sp:varName "epWell"^^xsd:string
] ;
sp:predicate <http://www.reportinghub.no/ep/schema/core#temporalPartOf> ;
sp:subject
[ sp:varName "epWellTP"^^xsd:string
]
] [ sp:object <http://www.reportinghub.no/ep/schema/activity#WellTestType> ;
sp:predicate rdf:type ;
sp:subject
......@@ -67,6 +97,27 @@ DPR was using wellbore for this, here we use Well."""^^xsd:string ;
sp:subject
[ sp:varName "epWellTestType"^^xsd:string
]
] [ sp:object
[ sp:varName "epWellTestReasonType"^^xsd:string
] ;
sp:predicate rdf:type ;
sp:subject
[ sp:varName "epWellTest"^^xsd:string
]
] [ sp:object
[ sp:varName "previousTestDate"^^xsd:string
] ;
sp:predicate <http://www.reportinghub.no/ep/schema/activity#nominallyAt> ;
sp:subject
[ sp:varName "epPreviousWellTest"^^xsd:string
]
] [ sp:object
[ sp:varName "epPreviousWellTest"^^xsd:string
] ;
sp:predicate <http://www.reportinghub.no/ep/schema/production-activity#hasPredecessor> ;
sp:subject
[ sp:varName "epWellTest"^^xsd:string
]
]) ;
sp:where ([ sp:object spin:_this ;
sp:predicate <http://www.reportinghub.no/ep/schema/core#derivedFrom> ;
......@@ -93,6 +144,13 @@ DPR was using wellbore for this, here we use Well."""^^xsd:string ;
] [ sp:object
[ sp:varName "wellName"^^xsd:string
] ;
sp:predicate <http://www.epim.no/schemas/mprml/1#nameWell> ;
sp:subject
[ sp:varName "wellTest"^^xsd:string
]
] [ sp:object
[ sp:varName "wellTestName"^^xsd:string
] ;
sp:predicate <http://www.epim.no/schemas/mprml/1#name> ;
sp:subject
[ sp:varName "wellTest"^^xsd:string
......@@ -109,10 +167,25 @@ DPR was using wellbore for this, here we use Well."""^^xsd:string ;
]
] [ rdf:type sp:Bind ;
sp:expression
[ rdf:type <http://www.reportinghub.no/ep/spin/lib#buildURI> ;
[ rdf:type ep-spin-lib:buildURI ;
sp:arg1 "https://www.reportinghub.no/ep/data/temporalPartOfAWell/" ;
sp:arg2 [ rdf:type fn:concat ;
sp:arg1 [ rdf:type ep-spin-lib:normalizeString ;
sp:arg1 [ sp:varName "wellName"^^xsd:string
]
] ;
sp:arg2 <http://topbraid.org/sparqlmotionfunctions#generateUUID>
]
] ;
sp:variable
[ sp:varName "epWellTP"^^xsd:string
]
] [ rdf:type sp:Bind ;
sp:expression
[ rdf:type ep-spin-lib:buildURI ;
sp:arg1 "https://www.reportinghub.no/ep/data/wellTest/" ;
sp:arg2 [ rdf:type <http://www.w3.org/2005/xpath-functions#concat> ;
sp:arg1 [ rdf:type <http://www.reportinghub.no/ep/spin/lib#normalizeString> ;
sp:arg2 [ rdf:type fn:concat ;
sp:arg1 [ rdf:type ep-spin-lib:normalizeString ;
sp:arg1 [ sp:varName "wellName"^^xsd:string
]
] ;
......@@ -133,12 +206,45 @@ DPR was using wellbore for this, here we use Well."""^^xsd:string ;
])
] [ rdf:type sp:Optional ;
sp:elements ([ sp:object
[ sp:varName "previousTestDate"^^xsd:string
] ;
sp:predicate <http://www.epim.no/schemas/mprml/1#previousTestDate> ;
sp:subject
[ sp:varName "wellTest"^^xsd:string
]
] [ rdf:type sp:Bind ;
sp:expression
[ rdf:type ep-spin-lib:buildURI ;
sp:arg1 "https://www.reportinghub.no/ep/data/wellTest/" ;
sp:arg2 [ rdf:type fn:concat ;
sp:arg1 [ rdf:type ep-spin-lib:normalizeString ;
sp:arg1 [ sp:varName "wellName"^^xsd:string
]
] ;
sp:arg2 <http://topbraid.org/sparqlmotionfunctions#generateUUID>
]
] ;
sp:variable
[ sp:varName "epPreviousWellTest"^^xsd:string
]
])
] [ rdf:type sp:Optional ;
sp:elements ([ sp:object
[ sp:varName "testReason"^^xsd:string
] ;
sp:predicate <http://www.epim.no/schemas/mprml/1#testReasonRef> ;
sp:subject
[ sp:varName "wellTest"^^xsd:string
]
] [ rdf:type sp:Bind ;
sp:expression
[ rdf:type ep-dpr-spin-lib:selectWellTestReasonType ;
sp:arg1 [ sp:varName "testReason"^^xsd:string
]
] ;
sp:variable
[ sp:varName "epWellTestReasonType"^^xsd:string
]
])
] [ rdf:type sp:Optional ;
sp:elements ([ sp:object
......@@ -150,10 +256,10 @@ DPR was using wellbore for this, here we use Well."""^^xsd:string ;
]
] [ rdf:type sp:Bind ;
sp:expression
[ rdf:type <http://www.reportinghub.no/ep/spin/lib#buildURI> ;
[ rdf:type ep-spin-lib:buildURI ;
sp:arg1 "https://www.reportinghub.no/ep/data/wellTestType/" ;
sp:arg2 [ rdf:type <http://www.w3.org/2005/xpath-functions#concat> ;
sp:arg1 [ rdf:type <http://www.reportinghub.no/ep/spin/lib#normalizeString> ;
sp:arg2 [ rdf:type fn:concat ;
sp:arg1 [ rdf:type ep-spin-lib:normalizeString ;
sp:arg1 [ sp:varName "wellTestTypeText"^^xsd:string
]
]
......@@ -168,5 +274,5 @@ DPR was using wellbore for this, here we use Well."""^^xsd:string ;
<http://www.reportinghub.no/ep/transform/1.0/mpr/wellTest>
rdf:type owl:Ontology ;
owl:imports <http://www.reportinghub.no/ep/dpr/spin/1.1/lib> , <http://www.reportinghub.no/ep/schema/1.0/production-well> , <http://www.reportinghub.no/ep/schema/1.0/report> , <http://www.reportinghub.no/ep/schema/1.0/well> , <http://www.epim.no/schemas/mprml/1> , <http://spinrdf.org/spin> ;
owl:imports <http://spinrdf.org/spin> , <http://www.epim.no/schemas/mprml/1> , <http://www.reportinghub.no/ep/schema/1.0/well> , <http://www.reportinghub.no/ep/schema/1.0/report> , <http://www.reportinghub.no/ep/schema/1.0/production-well> , <http://www.reportinghub.no/ep/dpr/spin/1.1/lib> ;
owl:versionInfo "Created with TopBraid Composer"^^xsd:string .
......