This commit is contained in:
Enrico Ottonello 2020-03-06 12:22:51 +01:00
parent 3e230e98be
commit 2b85674659
1 changed files with 59 additions and 69 deletions

View File

@ -2,73 +2,67 @@
PREFIX aocat: <https://www.ariadne-infrastructure.eu/resource/ao/cat/1.1/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX mine: <http://www.myprefix/>
PREFIX aoprop: <https://www.ariadne-infrastructure.eu/property/>
PREFIX onto: <http://www.ontotext.com/>
PREFIX ariadneplus: <https://ariadne-infrastructure.eu/aocat/>
CONSTRUCT {
?record mine:resourcetype "AriadneCatalogEntry" .
?record mine:identifier ?record .
?record mine:originalId ?originalId .
?record mine:issued ?issued .
?record mine:modified ?modified .
?record mine:partOf ?collection .
?record mine:creator ?creator .
?creator mine:name ?creatorName .
?creator mine:email ?creatorEmail .
?record mine:contributor ?contributor .
?contributor mine:name ?contributorName .
?contributor mine:email ?contributorEmail .
?record mine:legalResponsible ?legalResponsible .
?legalResponsible mine:name ?legalResponsibleName .
?legalResponsible mine:email ?legalResponsibleEmail .
?record mine:owner ?owner .
?owner mine:name ?ownerName .
?owner mine:email ?ownerEmail .
?record mine:publisher ?publisher .
?publisher mine:name ?publisherName .
?publisher mine:email ?publisherEmail .
?record mine:accessPolicy ?accessPolicy .
?record mine:accessRights ?accessRights .
?record mine:landingPage ?landingPage .
?record mine:spatial ?spatial .
?spatial mine:placeName ?spatialPlaceName .
?spatial mine:spatialCoordinateSystem ?spatialCoordinateSystem .
?spatial mine:location ?location .
?location mine:lat ?spatialLocationLat .
?location mine:lon ?spatialLocationLon .
?spatial mine:boxlocation ?boxlocation .
?boxlocation mine:boxMaxLat ?spatialLocationBBMaxLat .
?boxlocation mine:boxMaxLon ?spatialLocationBBMaxLon .
?boxlocation mine:boxMinLat ?spatialLocationBBMinLat .
?boxlocation mine:boxMinLon ?spatialLocationBBMinLon .
?record mine:temporal ?temporal .
?temporal mine:uri ?temporal .
?temporal mine:periodName ?temporalPeriodName .
?temporal mine:from ?temporalFrom .
?temporal mine:until ?temporalUntil .
?record mine:archeologicalResourceType ?archeologicalResourceType .
?archeologicalResourceType mine:name ?archeologicalResourceTypeName .
?record mine:resourceType ?resourceType .
?record mine:nativeSubject ?nativeSubject .
?nativeSubject mine:prefLabel ?nativeSubjectPrefLabel .
?nativeSubject mine:rdfAbout ?nativeSubject .
?nativeSubject mine:aatSubjectsId ?aatSubjectsId .
?record mine:title ?title .
?record mine:description ?description .
?record mine:language ?language .
?record aoprop:resourcetype "AriadneCatalogEntry" .
?record aoprop:identifier ?record .
?record aoprop:originalId ?originalId .
?record aoprop:issued ?issued .
?record aoprop:modified ?modified .
?record aoprop:partOf ?collection .
?record aoprop:creator ?creator .
?creator aoprop:name ?creatorName .
?creator aoprop:email ?creatorEmail .
?record aoprop:contributor ?contributor .
?contributor aoprop:name ?contributorName .
?contributor aoprop:email ?contributorEmail .
?record aoprop:legalResponsible ?legalResponsible .
?legalResponsible aoprop:name ?legalResponsibleName .
?legalResponsible aoprop:email ?legalResponsibleEmail .
?record aoprop:owner ?owner .
?owner aoprop:name ?ownerName .
?owner aoprop:email ?ownerEmail .
?record aoprop:publisher ?publisher .
?publisher aoprop:name ?publisherName .
?publisher aoprop:email ?publisherEmail .
?record aoprop:accessPolicy ?accessPolicy .
?record aoprop:accessRights ?accessRights .
?record aoprop:landingPage ?landingPage .
?record aoprop:spatial ?spatial .
?spatial aoprop:placeName ?spatialPlaceName .
?spatial aoprop:spatialCoordinateSystem ?spatialCoordinateSystem .
?spatial aoprop:location ?location .
?location aoprop:lat ?spatialLocationLat .
?location aoprop:lon ?spatialLocationLon .
?spatial aoprop:boxlocation ?boxlocation .
?boxlocation aoprop:boxMaxLat ?spatialLocationBBMaxLat .
?boxlocation aoprop:boxMaxLon ?spatialLocationBBMaxLon .
?boxlocation aoprop:boxMinLat ?spatialLocationBBMinLat .
?boxlocation aoprop:boxMinLon ?spatialLocationBBMinLon .
?record aoprop:temporal ?temporal .
?temporal aoprop:uri ?temporal .
?temporal aoprop:periodName ?temporalPeriodName .
?temporal aoprop:from ?temporalFrom .
?temporal aoprop:until ?temporalUntil .
?record aoprop:archeologicalResourceType ?archeologicalResourceType .
?archeologicalResourceType aoprop:name ?archeologicalResourceTypeName .
?record aoprop:resourceType ?resourceType .
?record aoprop:nativeSubject ?nativeSubject .
?nativeSubject aoprop:prefLabel ?nativeSubjectPrefLabel .
?nativeSubject aoprop:rdfAbout ?nativeSubject .
?nativeSubject aoprop:aatSubjectsId ?aatSubjectsId .
?record aoprop:title ?title .
?record aoprop:description ?description .
?record aoprop:language ?language .
}
from <https://ariadne-infrastructure.eu/api_________::ariadne_plus::ads::aat>
from <https://ariadne-infrastructure.eu/api_________::ariadne_plus::ads::273>
#from onto:explain
where {
#mandatory statements in our model, to be added in all datasources
# aocat:has_access_rights ?accessRights ;
# aocat:has_creator / aocat:has_name ?contributorName ;
# aocat:has_creator / aocat:has_email ?contributorEmail ;
# aocat:has_native_subject / skos:prefLabel ?nativeSbj ;
# aocat:has_original_id ?originalId ;
#?record aocat:has_title ?title .
from <https://ariadne-infrastructure.eu/api_________::ariadne_plus::ads::271>
where {
?record aocat:has_language / skos:prefLabel ?language .
optional {
{
@ -140,11 +134,7 @@ where {
}
{
select *
where {
#mandatory statements in our model, to be added in all datasources
#?collection aocat:has_publisher / rdfs:label ?publisherName ;
# aocat:has_ARIADNE_subject ?archeologicalResourceType ;
# aocat:has_type / skos:prefLabel ?type .
where {
?record aocat:is_part_of ?collection .
?collection aocat:was_issued ?issued .
?collection aocat:was_modified ?modified .
@ -188,7 +178,6 @@ where {
?collection aocat:has_access_rights ?accessRights .
}
}
#?archeologicalResourceType skos:prefLabel ?archeologicalResourceTypeName .
}
}
union
@ -208,7 +197,7 @@ where {
?record aocat:has_spatial_coverage ?spatial .
?spatial aocat:has_latitude ?spatialLocationLat ;
aocat:has_longitude ?spatialLocationLon .
BIND(uri(concat('http://www.myprefix/location/', md5(concat(str(?spatialLocationLat), str(?spatialLocationLon))))) as ?location)
BIND(uri(concat('https://www.ariadne-infrastructure.eu/property/location/', md5(concat(str(?spatialLocationLat), str(?spatialLocationLon))))) as ?location)
}
union
{
@ -217,11 +206,12 @@ where {
aocat:has_bounding_box_max_lon ?spatialLocationBBMaxLon ;
aocat:has_bounding_box_min_lat ?spatialLocationBBMinLat ;
aocat:has_bounding_box_min_lon ?spatialLocationBBMinLon ;
BIND(uri(concat('http://www.myprefix/location/', md5(concat(str(?spatialLocationBBMaxLat), str(?spatialLocationBBMaxLon), str(?spatialLocationBBMinLat), str(?spatialLocationBBMinLon))))) as ?boxlocation)
BIND(uri(concat('https://www.ariadne-infrastructure.eu/property/location/', md5(concat(str(?spatialLocationBBMaxLat), str(?spatialLocationBBMaxLon), str(?spatialLocationBBMinLat), str(?spatialLocationBBMinLon))))) as ?boxlocation)
}
}
}
}
BIND("organization" as ?contributorType) .
BIND("organization" as ?publisherType) .
}