transform-ss-to-rdl.sparql 3.07 KB
# 100 CLASS uri, des, id and def
CONSTRUCT {
    ?rduri a ?p2uri .
    ?rduri pca-rdl:hasDesignation ?des .
    ?rduri pca-rdl:hasDefinition ?def .
    ?rduri pca-rdl:hasIdPCA ?rdlid .
    ?ontitemuri owl:sameAs ?rduri .
    ?specuri a p2:Specialization .
    ?specuri p2:hasSuperclass ?superuri .
    ?specuri p2:hasSubclass ?rduri .
}
WHERE {
    ?this erh-drilling-rd-classes:eRHLocalname ?localname .
    ?this erh-drilling-rd-classes:eRHOntology ?ont .
    BIND (fn:concat(?ont, ?localname) AS ?ontitem) .
    BIND (spif:buildURI(?ontitem) AS ?ontitemuri) .
    NOT EXISTS {
        ?ontitemuri owl:sameAs ?anything .
    } .
    ?this erh-drilling-rd-classes:rDId ?rdlid .
    ?this erh-drilling-rd-classes:rDURI ?rduristr .
    BIND (smf:buildURI(?rduristr) AS ?rduri) .
    ?this erh-drilling-rd-classes:RDDesignation ?des .
    ?this erh-drilling-rd-classes:rDDefinition ?def .
    ?this erh-drilling-rd-classes:entityType ?p2name .
    BIND (fn:concat("http://rds.posccaesar.org/2008/02/OWL/ISO-15926-2_2003#", ?p2name) AS ?p2thing) .
    BIND (smf:buildURI(?p2thing) AS ?p2uri) .
    OPTIONAL {
        ?this erh-drilling-rd-classes:rDSuperclassURI ?super .
        BIND (smf:buildURI(?super) AS ?superuri) .
        BIND (spif:generateUUID() AS ?specuuid) .
        BIND (fn:concat("ERH", ?specuuid) AS ?specid) .
        BIND (spif:buildURI("<http://posccaesar.org/rdl/{?specid}>") AS ?specuri) .
    } .
}





# 100 CLASS uri, des, id and def
CONSTRUCT {
    ?rduri a ?p2uri .
    ?rduri pca-rdl:hasDesignation ?des .
    ?rduri pca-rdl:hasDefinition ?def .
    ?rduri pca-rdl:hasIdPCA ?rdlid .
}
WHERE {
    ?this erh-drilling-rd-classes:rDId ?rdlid .
    ?this erh-drilling-rd-classes:rDURI ?rduristr .
    BIND (smf:buildURI(?rduristr) AS ?rduri) .
    ?this erh-drilling-rd-classes:RDDesignation ?des .
    ?this erh-drilling-rd-classes:rDDefinition ?def .
    ?this erh-drilling-rd-classes:entityType ?p2name .
    BIND (fn:concat("http://rds.posccaesar.org/2008/02/OWL/ISO-15926-2_2003#", ?p2name) AS ?p2thing) .
    BIND (smf:buildURI(?p2thing) AS ?p2uri) .
}

# 200 CLASS subclasses
CONSTRUCT {
    ?specuri a p2:Specialization .
    ?specuri p2:hasSuperclass ?superuri .
    ?specuri p2:hasSubclass ?rduri .
}
WHERE {
    ?this a erh-drilling-rd-classes:erh-drilling-rd-classes .
    ?this erh-drilling-rd-classes:rDSuperclassURI ?super .
    BIND (smf:buildURI(?super) AS ?superuri) .
    ?this erh-drilling-rd-classes:rDURI ?rduristr .
    BIND (smf:buildURI(?rduristr) AS ?rduri) .
    BIND (spif:generateUUID() AS ?specuuid) .
    BIND (fn:concat("ERH", ?specuuid) AS ?specid) .
    BIND (spif:buildURI("<http://posccaesar.org/rdl/{?specid}>") AS ?specuri) .
}

# 300 Class SAME AS
CONSTRUCT {
    ?ontitemuri owl:sameAs ?rduri .
}
WHERE {
    ?this a erh-drilling-rd-classes:erh-drilling-rd-classes .
    ?this erh-drilling-rd-classes:eRHLocalname ?localname .
    ?this erh-drilling-rd-classes:eRHOntology ?ont .
    BIND (fn:concat(?ont, ?localname) AS ?ontitem) .
    BIND (spif:buildURI(?ontitem) AS ?ontitemuri) .
    ?this erh-drilling-rd-classes:rDURI ?rduristr .
    BIND (smf:buildURI(?rduristr) AS ?rduri) .
}