MonkeyChap

Lots of fiddling with HTML, prod ops transform, and production report schema

HTML header kinda works now, but can't replicate what's in the PDF
because the approval info doesn't seem to be in the XML
# Saved by TopBraid on Fri Oct 14 00:15:06 BST 2011
# baseURI: http://www.reportinghub.no/ep/schema/1.0/production-report
# imports: http://www.reportinghub.no/ep/schema/1.0/report
# imports: http://www.reportinghub.no/np/schema/1.0/npd
@prefix ep-prodreport: <http://www.reportinghub.no/ep/schema/production-report#> .
@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#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
<http://www.reportinghub.no/ep/schema/1.0/production-report>
rdf:type owl:Ontology ;
owl:imports <http://www.reportinghub.no/ep/schema/1.0/report> , <http://www.reportinghub.no/np/schema/1.0/npd> ;
owl:versionInfo "Created with TopBraid Composer"^^xsd:string .
ep-prodreport:DailyProductionReport
rdf:type owl:Class ;
rdfs:label "Daily Production Report"^^xsd:string ;
rdfs:subClassOf ep-prodreport:ProductionReport .
ep-prodreport:MonthlyProductionReport
rdf:type owl:Class ;
rdfs:label "Monthly Production Report"^^xsd:string ;
rdfs:subClassOf ep-prodreport:ProductionReport .
ep-prodreport:ProductionReport
rdf:type owl:Class ;
rdfs:label "Production Report"^^xsd:string ;
rdfs:subClassOf <http://www.reportinghub.no/ep/schema/report#Report> .
ep-prodreport:ReportAliasIdentifier
rdf:type owl:Class ;
rdfs:subClassOf owl:Thing ;
rdfs:subClassOf
[ rdf:type owl:Restriction ;
owl:cardinality "1"^^xsd:nonNegativeInteger ;
owl:onProperty ep-prodreport:isAliasFor
] ;
rdfs:subClassOf
[ rdf:type owl:Restriction ;
owl:cardinality "1"^^xsd:nonNegativeInteger ;
owl:onProperty ep-prodreport:aliasOwner
] ;
rdfs:subClassOf
[ rdf:type owl:Restriction ;
owl:minCardinality "1"^^xsd:nonNegativeInteger ;
owl:onProperty ep-prodreport:aliasName
] .
ep-prodreport:aliasName
rdf:type owl:DatatypeProperty ;
rdfs:range xsd:string .
ep-prodreport:aliasOwner
rdf:type owl:ObjectProperty ;
rdfs:range <http://www.reportinghub.no/np/schema/npd#Individual> .
ep-prodreport:disclaimer
rdf:type rdf:Property ;
rdfs:domain <http://www.reportinghub.no/ep/schema/report#Report> ;
rdfs:range xsd:string .
ep-prodreport:isAliasFor
rdf:type owl:ObjectProperty ;
rdfs:range <http://www.reportinghub.no/np/schema/npd#Individual> .
# Saved by TopBraid on Fri Oct 14 18:36:52 BST 2011
# baseURI: http://www.reportinghub.no/ep/schema/1.0/production-report
# imports: http://www.reportinghub.no/ep/schema/1.0/report
# imports: http://www.reportinghub.no/np/schema/1.0/npd
@prefix ep-prodreport: <http://www.reportinghub.no/ep/schema/production-report#> .
@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#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
<http://www.reportinghub.no/ep/schema/1.0/production-report>
rdf:type owl:Ontology ;
owl:imports <http://www.reportinghub.no/np/schema/1.0/npd> , <http://www.reportinghub.no/ep/schema/1.0/report> ;
owl:versionInfo "Created with TopBraid Composer"^^xsd:string .
ep-prodreport:DailyProductionReport
rdf:type owl:Class ;
rdfs:label "Daily Production Report"^^xsd:string ;
rdfs:subClassOf ep-prodreport:ProductionReport .
ep-prodreport:MonthlyProductionReport
rdf:type owl:Class ;
rdfs:label "Monthly Production Report"^^xsd:string ;
rdfs:subClassOf ep-prodreport:ProductionReport .
ep-prodreport:ProductionReport
rdf:type owl:Class ;
rdfs:label "Production Report"^^xsd:string ;
rdfs:subClassOf <http://www.reportinghub.no/ep/schema/report#Report> .
ep-prodreport:ReportAliasIdentifier
rdf:type owl:Class ;
rdfs:subClassOf owl:Thing ;
rdfs:subClassOf
[ rdf:type owl:Restriction ;
owl:minCardinality "1"^^xsd:nonNegativeInteger ;
owl:onProperty ep-prodreport:aliasName
] ;
rdfs:subClassOf
[ rdf:type owl:Restriction ;
owl:cardinality "1"^^xsd:nonNegativeInteger ;
owl:onProperty ep-prodreport:aliasOwner
] ;
rdfs:subClassOf
[ rdf:type owl:Restriction ;
owl:cardinality "1"^^xsd:nonNegativeInteger ;
owl:onProperty ep-prodreport:isAliasFor
] .
ep-prodreport:aliasName
rdf:type owl:DatatypeProperty ;
rdfs:range xsd:string .
ep-prodreport:aliasOwner
rdf:type owl:ObjectProperty ;
rdfs:range <http://www.reportinghub.no/np/schema/npd#Individual> .
ep-prodreport:dateCoveredByReport
rdf:type owl:DatatypeProperty ;
rdfs:domain ep-prodreport:DailyProductionReport ;
rdfs:range xsd:date .
ep-prodreport:disclaimer
rdf:type rdf:Property ;
rdfs:domain <http://www.reportinghub.no/ep/schema/report#Report> ;
rdfs:range xsd:string .
ep-prodreport:isAliasFor
rdf:type owl:ObjectProperty ;
rdfs:range <http://www.reportinghub.no/np/schema/npd#Individual> .
......
# Saved by TopBraid on Fri Oct 14 17:19:24 BST 2011
# Saved by TopBraid on Fri Oct 14 18:47:01 BST 2011
# baseURI: null
@prefix composite: <http://www.topbraid.org/2007/05/composite.owl#> .
......
<ui:group
let:report="{# SELECT ?report WHERE {?report a ep-prodreport:DailyProductionReport }}"
let:mainAct="{# SELECT ?mainAct WHERE {?report a ep-prodreport:DailyProductionReport . ?report ep-report:reportOn ?mainAct}}"
let:mainAct="{# SELECT ?mainAct WHERE {?report a ep-prodreport:DailyProductionReport . ?report ep-report:reportOn ?mainAct}}"
let:opCo="{# SELECT ?opCo WHERE {?report a ep-prodreport:DailyProductionReport . ?report ep-report:reportOn ?mainAct . ?mainAct ep-prodact:involvement ?opCo}}"
let:mainFac="{# SELECT ?mainFac WHERE {?report a ep-prodreport:DailyProductionReport . ?report ep-report:reportOn ?mainAct . ?mainAct ep-prodact:involvement ?epMainFacTempPart . ?mainFac ep-core:hasTemporalPart ?epMainFacTempPart}}"
let:opCo="{# SELECT ?opCo WHERE {?report a ep-prodreport:DailyProductionReport . ?report ep-report:reportOn ?mainAct . ?mainFac ep-fac:facilityOperator ?opCo}}"
>
<h1>Daily Production Report: {# SELECT ?mfName WHERE {?mainFac rdfs:label ?mfName}}</h1>
<h2>Operating Company: {# SELECT ?ocName WHERE {?opCo rdfs:label ?ocName}}</h2>
<center>
<h1>{# SELECT ?mfName WHERE {?mainFac rdfs:label ?mfName}}</h1>
<h2>{# SELECT ?ocName WHERE {?opCo rdfs:label ?ocName}}</h2>
<h2>{# SELECT ?docName WHERE {?report rdfs:label ?docName}}</h2>
<h2>Report date: {# SELECT ?docDate WHERE {?report ep-prodreport:dateCoveredByReport ?docDate}}</h2>
<h2>Issue date: {# SELECT ?createDate WHERE {?report ep-report:createdAt ?createDate}}</h2>
</center>
<hr />
<dprswp:Table arg:report="{= ?report }" arg:template="dpr-tables:WellInformation" />
......