From aa1c6c2fda9a4debf6c7f5248f2256bb6bb19e39 Mon Sep 17 00:00:00 2001 From: Enrico Ottonello Date: Tue, 9 Jun 2020 11:39:56 +0200 Subject: [PATCH] added query to generate aat and periodo enriched graphs --- .../ariadneplus/gen_aatplus_graph.sparql | 33 ++++ .../ariadneplus/gen_periodoplus_graph.sparql | 23 +++ .../ariadneplus/read_record_data.sparql | 164 ++++++++++++++++++ .../parthenos/sparql/D14_Software.sparql | 106 ----------- .../sparql/E29_Design_or_Procedure.sparql | 51 ------ .../dnetlib/parthenos/sparql/E39_Actor.sparql | 68 -------- .../parthenos/sparql/E78_Collection.sparql | 73 -------- .../parthenos/sparql/PE18_Dataset.sparql | 138 --------------- .../parthenos/sparql/PE1_Service.sparql | 148 ---------------- .../parthenos/sparql/PE35_Project.sparql | 62 ------- .../parthenos/sparql/rdfs_rule_set_isql.txt | 76 -------- .../src/main/resources/query.txt | 51 +++--- 12 files changed, 246 insertions(+), 747 deletions(-) create mode 100644 dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/ariadneplus/gen_aatplus_graph.sparql create mode 100644 dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/ariadneplus/gen_periodoplus_graph.sparql create mode 100644 dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/ariadneplus/read_record_data.sparql delete mode 100644 dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/parthenos/sparql/D14_Software.sparql delete mode 100644 dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/parthenos/sparql/E29_Design_or_Procedure.sparql delete mode 100644 dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/parthenos/sparql/E39_Actor.sparql delete mode 100644 dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/parthenos/sparql/E78_Collection.sparql delete mode 100644 dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/parthenos/sparql/PE18_Dataset.sparql delete mode 100644 dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/parthenos/sparql/PE1_Service.sparql delete mode 100644 dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/parthenos/sparql/PE35_Project.sparql delete mode 100644 dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/parthenos/sparql/rdfs_rule_set_isql.txt diff --git a/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/ariadneplus/gen_aatplus_graph.sparql b/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/ariadneplus/gen_aatplus_graph.sparql new file mode 100644 index 0000000..8565b35 --- /dev/null +++ b/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/ariadneplus/gen_aatplus_graph.sparql @@ -0,0 +1,33 @@ +PREFIX aocat: +PREFIX skos: +PREFIX time: +PREFIX ariadneplus: +PREFIX rdf: +INSERT { + GRAPH { + ?record aocat:has_derived_subject ?aat . + } +} +USING +USING +WHERE { + { + ?record aocat:has_native_subject ?native_subject . + ?native_subject skos:exactMatch ?aat . + } + union + { + ?record aocat:has_native_subject ?native_subject . + ?native_subject skos:broadMatch ?aat . + } + union + { + ?record aocat:has_native_subject ?native_subject . + ?native_subject skos:closeMatch ?aat . + } + union + { + ?record aocat:has_native_subject ?native_subject . + ?native_subject skos:narrowMatch ?aat . + } +} diff --git a/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/ariadneplus/gen_periodoplus_graph.sparql b/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/ariadneplus/gen_periodoplus_graph.sparql new file mode 100644 index 0000000..77284a8 --- /dev/null +++ b/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/ariadneplus/gen_periodoplus_graph.sparql @@ -0,0 +1,23 @@ +PREFIX aocat: +PREFIX skos: +PREFIX time: +PREFIX ariadneplus: +INSERT { + GRAPH { + ?temporal aocat:has_period ?periodO . + ?temporal aocat:from ?temporalFrom . + ?temporal aocat:until ?temporalUntil . + } +} +WHERE { + ?temporal aocat:has_native_period ?native_period . + ?native_period skos:prefLabel ?native_label . + optional { + ?periodO skos:altLabel ?native_label . + ?periodO skos:inScheme . + ?periodO time:intervalStartedBy ?intervalStartedBy . + ?intervalStartedBy skos:prefLabel ?temporalFrom . + ?periodO time:intervalFinishedBy ?intervalFinishedBy . + ?intervalFinishedBy skos:prefLabel ?temporalUntil . + } +} diff --git a/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/ariadneplus/read_record_data.sparql b/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/ariadneplus/read_record_data.sparql new file mode 100644 index 0000000..2e94223 --- /dev/null +++ b/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/ariadneplus/read_record_data.sparql @@ -0,0 +1,164 @@ +PREFIX aocat: +PREFIX rdfs: +PREFIX skos: +PREFIX aoprop: +PREFIX onto: +PREFIX ariadneplus: +PREFIX time: + +CONSTRUCT { +?record aoprop:identifier ?record . +?record aoprop:originalId ?originalId . +?record aoprop:issued ?issued . +?record aoprop:modified ?modified . +?record aoprop:partOf ?partOf . +?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:spatialRegion ?spatialRegion . +?spatialRegion aoprop:placeName ?spatialPlaceName . +?spatialRegion aoprop:spatialCoordinateSystem ?spatialCoordinateSystem . +?record aoprop:spatialRegionPoint ?spatialRegionPoint . +?spatialRegionPoint aoprop:lat ?spatialLocationLat . +?spatialRegionPoint aoprop:lon ?spatialLocationLon . +?record aoprop:spatialRegionBox ?spatialRegionBox . +?spatialRegionBox aoprop:boxMaxLat ?spatialLocationBBMaxLat . +?spatialRegionBox aoprop:boxMaxLon ?spatialLocationBBMaxLon . +?spatialRegionBox aoprop:boxMinLat ?spatialLocationBBMinLat . +?spatialRegionBox aoprop:boxMinLon ?spatialLocationBBMinLon . +?record aoprop:uri ?temporal . +?temporal aoprop:periodName ?temporalPeriodName . +?temporal aoprop:from ?temporalFrom . +?temporal aoprop:until ?temporalUntil . +?record aoprop:uri ?temporalNative . +?temporalNative aoprop:periodName ?temporalNativePeriodName . +?record aoprop:archeologicalResourceType ?archeologicalResourceType . +?archeologicalResourceType aoprop:name ?archeologicalResourceTypeName . +?record aoprop:resourceType ?resourceType . +?record aoprop:nativeSubject ?nativeSubject . +?nativeSubject aoprop:prefLabel ?nativeSubjectPrefLabel . +?nativeSubject aoprop:rdfAbout ?nativeSubject . +?record aoprop:derivedSubject ?derivedSubject . +?derivedSubject aoprop:prefLabel ?derivedSubjectPrefLabel . +?derivedSubject aoprop:source "Getty AAT" . +?record aoprop:aatSubjects ?derivedSubject . +?derivedSubject aoprop:id ?derivedSubject . +?derivedSubject aoprop:label ?derivedSubjectPrefLabel . +?record aoprop:title ?title . +?record aoprop:description ?description . +?record aoprop:language ?language . +} +from +from +from +from +from +where { + ?record aocat:has_language / skos:prefLabel ?language . + ?record aocat:has_original_id ?originalId . + ?record aocat:is_part_of ?partOf . + ?record aocat:has_creator ?creator . + ?creator aocat:has_name ?creatorName . + ?record aocat:has_title ?title . + ?record aocat:has_type / skos:prefLabel ?resourceType . + ?record aocat:has_native_subject ?nativeSubject . + ?nativeSubject skos:prefLabel ?nativeSubjectPrefLabel . + optional { + ?record aocat:has_derived_subject ?derivedSubject . + ?derivedSubject skos:prefLabel ?derivedSubjectPrefLabel . + } + optional { + ?creator aocat:has_email ?creatorEmail . + } + optional { + ?record aocat:has_description ?description . + } + optional { + ?record aocat:has_access_policy / rdfs:label ?accessPolicy . + } + optional { + ?record aocat:has_landing_page / rdfs:label ?landingPage . + } + optional { + ?record aocat:has_temporal_coverage ?temporalNative . + ?temporalNative aocat:has_native_period / skos:prefLabel ?temporalNativePeriodName . + } + optional { + ?record aocat:has_temporal_coverage ?temporal . + ?temporal aocat:has_period / skos:prefLabel ?temporalPeriodName . + optional { + ?temporal aocat:from ?temporalFrom . + ?temporal aocat:until ?temporalUntil . + } + } + + { + select * + where { + ?record aocat:is_part_of ?collection . + ?collection aocat:was_issued ?issued . + ?collection aocat:was_modified ?modified . + ?collection aocat:has_contributor ?contributor . + ?contributor aocat:has_name ?contributorName . + ?collection aocat:has_responsible ?legalResponsible . + ?legalResponsible aocat:has_name ?legalResponsibleName . + ?collection aocat:has_owner ?owner . + ?owner aocat:has_name ?ownerName . + ?collection aocat:has_publisher ?publisher . + ?publisher aocat:has_name ?publisherName . + ?collection aocat:has_access_rights ?accessRights . + ?collection aocat:has_ARIADNE_subject ?archeologicalResourceType . + ?archeologicalResourceType skos:prefLabel ?archeologicalResourceTypeName . + optional { + ?contributor aocat:has_email ?contributorEmail . + } + optional { + ?legalResponsible aocat:has_email ?legalResponsibleEmail . + } + optional { + ?owner aocat:has_email ?ownerEmail . + } + optional { + ?publisher aocat:has_email ?publisherEmail . + } + } + } + { + select * + where { + ?record aocat:has_spatial_coverage ?spatialRegion . + ?spatialRegion aocat:has_place_name ?spatialPlaceName . + optional { + ?spatialRegion aocat:has_coordinate_system ?spatialCoordinateSystem . + } + optional { + ?record aocat:has_spatial_coverage ?spatialRegionPoint . + ?spatialRegionPoint aocat:has_latitude ?spatialLocationLat ; + aocat:has_longitude ?spatialLocationLon . + } + optional { + ?record aocat:has_spatial_coverage ?spatialRegionBox . + ?spatialRegionBox aocat:has_bounding_box_max_lat ?spatialLocationBBMaxLat ; + aocat:has_bounding_box_max_lon ?spatialLocationBBMaxLon ; + aocat:has_bounding_box_min_lat ?spatialLocationBBMinLat ; + aocat:has_bounding_box_min_lon ?spatialLocationBBMinLon ; + } + } + } + +} diff --git a/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/parthenos/sparql/D14_Software.sparql b/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/parthenos/sparql/D14_Software.sparql deleted file mode 100644 index f8fa1bd..0000000 --- a/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/parthenos/sparql/D14_Software.sparql +++ /dev/null @@ -1,106 +0,0 @@ -DEFINE input:inference 'ariadneplus_rules' - -CONSTRUCT { - <${subjectURL}> crm:P1_is_identified_by ?IDRes . - ?IDRes a crm:E42_Identifier . - ?IDRes rdfs:label ?ID_label . - - <${subjectURL}> crm:P102_has_title ?title . - <${subjectURL}> crm:P3_has_note ?description . - <${subjectURL}> a ?type . - <${subjectURL}> rdfs:label ?label . - - <${subjectURL}> crm:P129_is_about ?about . - ?about a ?aboutType . - ?about rdfs:label ?aboutLabel . - - <${subjectURL}> crm:P2_has_type ?e55TypeLabel . - - <${subjectURL}> crmpe:PP7i_is_software_object_hosted_by ?host . - <${subjectURL}> crmpe:PP32i_is_curated_by ?curatingService . - - <${subjectURL}> crmpe:PP17_has_snapshot ?snapshot1 . - <${subjectURL}> crmpe:PP17i_is_snapshot_of ?snapshot2 . - - <${subjectURL}> crmpe:PP21_has_software_part ?sw1 . - <${subjectURL}> crmpe:PP21i_is_software_part_of ?sw2 . - <${subjectURL}> crmpe:PP22_has_release ?sw3 . - <${subjectURL}> crmpe:PP22i_is_release_of ?sw4 . - - <${subjectURL}> ?adopter . - <${subjectURL}> ?creationtime . -} -WHERE { - <${subjectURL}> a crmdig:D14_Software . - <${subjectURL}> a ?type . - { - <${subjectURL}> crm:P1_is_identified_by ?IDRes . - ?IDRes a crm:E42_Identifier . - ?IDRes rdfs:label ?ID_label . - } - UNION -{ - <${subjectURL}> crm:P1_is_identified_by ?titleRes . - ?titleRes a crm:E41_Appellation . - ?titleRes rdfs:label ?title . -} -UNION{ - <${subjectURL}> crm:P3_has_note ?description . -} -UNION{ - <${subjectURL}> rdfs:label ?label . -} -UNION { - <${subjectURL}> crm:P2_has_type ?e55Type . - ?e55Type rdfs:label ?e55TypeLabel . -} - UNION{ - <${subjectURL}> crm:P129_is_about ?about . - ?about a ?aboutType . - ?about rdfs:label ?aboutLabel . - } - UNION{<${subjectURL}> crmpe:PP7i_is_software_object_hosted_by ?host . } - UNION{?host crmpe:PP7_hosts_software_object <${subjectURL}> . } - UNION{<${subjectURL}> crmpe:PP32i_is_curated_by ?curatingService .} - UNION{?curatingService crmpe:PP32_curates <${subjectURL}> .} - UNION{ - <${subjectURL}> crmpe:PP32i_is_curated_by ?curatingService . - ?curatingService crmpe:PP31_uses_curation_plan ?curationplan . - } -UNION{ - ?curatingService crmpe:PP32_curates <${subjectURL}> . - ?curatingService crmpe:PP31_uses_curation_plan ?curationplan . -} - UNION{<${subjectURL}> crmpe:PP17_has_snapshot ?snapshot1 .} - UNION{ ?snapshot1 crmpe:PP17i_is_snapshot_of <${subjectURL}> .} - UNION{<${subjectURL}> crmpe:PP17i_is_snapshot_of ?snapshot2 .} - UNION{ ?snapshot2 crmpe:PP17_has_snapshot <${subjectURL}> .} - - UNION{<${subjectURL}> crmpe:PP21_has_software_part ?sw1 .} - UNION{?sw1 crmpe:PP21i_is_software_part_of <${subjectURL}>.} - - UNION{ ?sw2 crmpe:PP21_has_software_part <${subjectURL}> .} - UNION{<${subjectURL}> crmpe:PP21i_is_software_part_of ?sw2 .} - - UNION{<${subjectURL}> crmpe:PP22_has_release ?sw3 .} - UNION{?sw3 crmpe:PP22i_is_release_of <${subjectURL}> .} - - UNION{<${subjectURL}> crmpe:PP22i_is_release_of ?sw4 .} - UNION{?sw4 crmpe:PP22_has_release <${subjectURL}> .} - - UNION{ - ?adopter crm:P94i_was_created_by ?event . - ?event crmdig:L23_used_software_or_firmware <${subjectURL}> . - } - UNION { - <${subjectURL}> crmdig:L23i_was_software_or_firmware_used_by ?event . - ?adopter crm:P94i_was_created_by ?event . - } - UNION{ - <${subjectURL}> crm:P94i_was_created_by ?event1 . - ?event1 crm:P2_has_type . - ?event1 crm:P4_has_time-span ?timespan . - ?timespan crm:P81_ongoing_throughout ?creationtime . - } -} -LIMIT 1000 \ No newline at end of file diff --git a/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/parthenos/sparql/E29_Design_or_Procedure.sparql b/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/parthenos/sparql/E29_Design_or_Procedure.sparql deleted file mode 100644 index 5ef1d16..0000000 --- a/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/parthenos/sparql/E29_Design_or_Procedure.sparql +++ /dev/null @@ -1,51 +0,0 @@ -DEFINE input:inference 'ariadneplus_rules' - -CONSTRUCT { -<${subjectURL}> crm:P1_is_identified_by ?IDRes . -?IDRes a crm:E42_Identifier . -?IDRes rdfs:label ?ID_label . - -<${subjectURL}> crm:P102_has_title ?title . -<${subjectURL}> crm:P3_has_note ?description . -<${subjectURL}> a ?type . -<${subjectURL}> rdfs:label ?label . - -<${subjectURL}> crm:P2_has_type ?e55TypeLabel . - -<${subjectURL}> ?adopter . -<${subjectURL}> ?creationtime . -} -WHERE { - <${subjectURL}> a crm:E29_Design_or_Procedure . - <${subjectURL}> a ?type . - { - <${subjectURL}> crm:P1_is_identified_by ?IDRes . - ?IDRes a crm:E42_Identifier . - ?IDRes rdfs:label ?ID_label . - } - UNION -{ - <${subjectURL}> crm:P1_is_identified_by ?titleRes . - ?titleRes a crm:E41_Appellation . - ?titleRes rdfs:label ?title . -} -UNION{ - <${subjectURL}> crm:P3_has_note ?description . -} -UNION{ - <${subjectURL}> rdfs:label ?label . -} -UNION { - <${subjectURL}> crm:P2_has_type ?e55Type . - ?e55Type rdfs:label ?e55TypeLabel . -} -UNION { - ?adopter crmpe:PP31_uses_curation_plan <${subjectURL}> . -} -UNION{ - <${subjectURL}> crm:P94i_was_created_by ?event1 . - ?event1 crm:P2_has_type . - ?event1 crm:P4_has_time-span ?timespan . - ?timespan crm:P81_ongoing_throughout ?creationtime . -} -} \ No newline at end of file diff --git a/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/parthenos/sparql/E39_Actor.sparql b/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/parthenos/sparql/E39_Actor.sparql deleted file mode 100644 index dfbad19..0000000 --- a/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/parthenos/sparql/E39_Actor.sparql +++ /dev/null @@ -1,68 +0,0 @@ -DEFINE input:inference 'ariadneplus_rules' - -CONSTRUCT { -<${subjectURL}> rdfs:label ?label . -<${subjectURL}> a ?type . -<${subjectURL}> crm:P2_has_type ?e55TypeLabel . - -<${subjectURL}> crm:P1_is_identified_by ?IDRes . -?IDRes a crm:E42_Identifier . -?IDRes rdfs:label ?ID_label . - -<${subjectURL}> crm:P102_has_title ?title . -<${subjectURL}> crm:P3_has_note ?description . - -<${subjectURL}> crm:P76_has_contact_point ?contactpoint . -?contactpoint crm:P2_has_type ?contactpointType . -?contactpoint rdfs:label ?contactpointLabel . -?contactpointType rdfs:label ?contactpointTypeLabel . - -<${subjectURL}> crm:P107_has_current_or_former_member ?member1 . -<${subjectURL}> crm:P107i_is_current_or_former_member_of ?team . -<${subjectURL}> crmpe:PP2i_provides ?service . - -<${subjectURL}> crmpe:PP44i_is_maintaining_team_of ?maintained . -} -WHERE { - <${subjectURL}> a crm:E39_Actor . - <${subjectURL}> a ?type . - { - <${subjectURL}> crm:P1_is_identified_by ?IDRes . - ?IDRes a crm:E42_Identifier . - ?IDRes rdfs:label ?ID_label . - } - UNION -{ - <${subjectURL}> crm:P1_is_identified_by ?titleRes . - ?titleRes a crm:E41_Appellation . - ?titleRes rdfs:label ?title . -} -UNION{ <${subjectURL}> crm:P3_has_note ?description .} -UNION{ <${subjectURL}> rdfs:label ?label .} -UNION { - <${subjectURL}> crm:P2_has_type ?e55Type . - ?e55Type rdfs:label ?e55TypeLabel . -} -UNION{ - <${subjectURL}> crm:P76_has_contact_point ?contactpoint . -} - UNION{ - <${subjectURL}> crm:P76_has_contact_point ?contactpoint . - ?contactpoint rdfs:label ?contactpointLabel . -} -UNION{ - <${subjectURL}> crm:P76_has_contact_point ?contactpoint . - ?contactpoint crm:P2_has_type ?contactpointType . - ?contactpointType rdfs:label ?contactpointTypeLabel . - } - UNION{ <${subjectURL}> crm:P107_has_current_or_former_member ?member1 .} - UNION{ ?member1 crm:P107_has_current_or_former_member <${subjectURL}> .} - UNION{ <${subjectURL}> crm:P107i_is_current_or_former_member_of ?team .} - UNION{ ?team crm:P107_has_current_or_former_member <${subjectURL}> .} - - UNION{ <${subjectURL}> crmpe:PP2i_provides ?service .} - UNION{ ?service crmpe:PP2_provided_by <${subjectURL}> .} - - UNION{ <${subjectURL}> crmpe:PP44i_is_maintaining_team_of ?maintained .} - UNION{ ?maintained crmpe:PP44_has_maintaining_team <${subjectURL}> .} -} diff --git a/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/parthenos/sparql/E78_Collection.sparql b/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/parthenos/sparql/E78_Collection.sparql deleted file mode 100644 index 98dd6ae..0000000 --- a/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/parthenos/sparql/E78_Collection.sparql +++ /dev/null @@ -1,73 +0,0 @@ -DEFINE input:inference 'ariadneplus_rules' - -CONSTRUCT { - <${subjectURL}> crm:P1_is_identified_by ?IDRes . - ?IDRes a crm:E42_Identifier . - ?IDRes rdfs:label ?ID_label . - - <${subjectURL}> crm:P102_has_title ?title . - <${subjectURL}> crm:P3_has_note ?description . - <${subjectURL}> a ?type . - <${subjectURL}> rdfs:label ?label . - - <${subjectURL}> crm:P129_is_about ?about . - ?about a ?aboutType . - ?about rdfs:label ?aboutLabel . - - <${subjectURL}> crm:P2_has_type ?e55TypeLabel . - - <${subjectURL}> crm:P46_is_composed_of ?Col_Part . - - <${subjectURL}> crmpe:PP4i_is_object_hosted_by ?host_serv . - <${subjectURL}> crmpe:PP32i_is_curated_by ?curator . - <${subjectURL}> ?creator . - - <${subjectURL}> crm:P72_has_language ?languageLabel . -} -WHERE { - <${subjectURL}> a crm:E78_Collection . - <${subjectURL}> a ?type . - { - <${subjectURL}> crm:P1_is_identified_by ?IDRes . - ?IDRes a crm:E42_Identifier . - ?IDRes rdfs:label ?ID_label . - } - UNION -{ - <${subjectURL}> crm:P1_is_identified_by ?titleRes . - ?titleRes a crm:E41_Appellation . - ?titleRes rdfs:label ?title . -} -UNION{ - <${subjectURL}> crm:P3_has_note ?description . -} -UNION{ - <${subjectURL}> rdfs:label ?label . -} -UNION{ -<${subjectURL}> crm:P129_is_about ?about . -?about a ?aboutType . -?about rdfs:label ?aboutLabel . -} -UNION { -<${subjectURL}> crm:P2_has_type ?e55Type . -?e55Type rdfs:label ?e55TypeLabel . -} -UNION{ <${subjectURL}> crm:P46_is_composed_of ?Col_Part .} -UNION{ ?Col_Part crm:P46i_forms_part_of <${subjectURL}> .} - -UNION{ <${subjectURL}> crmpe:PP4i_is_object_hosted_by ?host_serv .} -UNION{ <${subjectURL}> crmpe:PP32i_is_curated_by ?curator .} -UNION{ ?host_serv crmpe:PP4_hosts_object <${subjectURL}> .} -UNION{ ?curator crmpe:PP32_curates <${subjectURL}> .} - -UNION { - <${subjectURL}> crm:P94i_was_created_by ?Creation_event . - ?Creation_event crm:P14_carried_out_by ?creator . -} -UNION { - <${subjectURL}> crm:P72_has_language ?language . - ?language rdfs:label ?languageLabel . -} - -} LIMIT 30000 \ No newline at end of file diff --git a/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/parthenos/sparql/PE18_Dataset.sparql b/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/parthenos/sparql/PE18_Dataset.sparql deleted file mode 100644 index 1012e27..0000000 --- a/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/parthenos/sparql/PE18_Dataset.sparql +++ /dev/null @@ -1,138 +0,0 @@ -DEFINE input:inference 'ariadneplus_rules' - -CONSTRUCT { - <${subjectURL}> crm:P1_is_identified_by ?IDRes . - ?IDRes a crm:E42_Identifier . - ?IDRes rdfs:label ?ID_label . - - <${subjectURL}> crm:P102_has_title ?title . - <${subjectURL}> crm:P3_has_note ?description . - <${subjectURL}> a ?type . - <${subjectURL}> rdfs:label ?label . - - <${subjectURL}> crm:P129_is_about ?about . - ?about a ?aboutType . - ?about rdfs:label ?aboutLabel . - - <${subjectURL}> crm:P2_has_type ?e55TypeLabel . - - <${subjectURL}> crmpe:PP8i_is_dataset_hosted_by ?host . - <${subjectURL}> crmpe:PP32i_is_curated_by ?curator . - - <${subjectURL}> crm:P106i_forms_part_of ?container . - <${subjectURL}> crm:P106_is_composed_of ?d3 . - - <${subjectURL}> crmpe:PP39_is_metadata_for ?anotherdataset . - <${subjectURL}> crmpe:PP39i_has_metadata ?metadata . - - <${subjectURL}> crmpe:PP17i_is_snapshot_of ?snapshotted . - <${subjectURL}> crmpe:PP17_has_snapshot ?snapshot . - - <${subjectURL}> ?encoding_label . - <${subjectURL}> ?sw . - <${subjectURL}> ?creator . - <${subjectURL}> ?creationtime . - <${subjectURL}> ?updatetime . - <${subjectURL}> ?custodytime . - <${subjectURL}> ?custodialhistoryNote . - <${subjectURL}> ?curationtime . - <${subjectURL}> crm:P72_has_language ?languageLabel . -} -WHERE { - <${subjectURL}> a crmpe:PE18_Dataset . - <${subjectURL}> a ?type . - { - <${subjectURL}> crm:P1_is_identified_by ?IDRes . - ?IDRes a crm:E42_Identifier . - ?IDRes rdfs:label ?ID_label . - } - UNION -{ - <${subjectURL}> crm:P1_is_identified_by ?titleRes . - ?titleRes a crm:E41_Appellation . - ?titleRes rdfs:label ?title . -} -UNION{ - <${subjectURL}> crm:P3_has_note ?description . -} -UNION{ - <${subjectURL}> rdfs:label ?label . -} - UNION{ - <${subjectURL}> crm:P129_is_about ?about . - ?about a ?aboutType . - ?about rdfs:label ?aboutLabel . - } - UNION { - <${subjectURL}> crm:P2_has_type ?e55Type . - ?e55Type rdfs:label ?e55TypeLabel . - } - UNION{ <${subjectURL}> crmpe:PP8i_is_dataset_hosted_by ?host . } - UNION{ ?host crmpe:PP8_hosts_dataset <${subjectURL}> . } - UNION{ <${subjectURL}> crmpe:PP32i_is_curated_by ?curator .} - UNION{ ?curator crmpe:PP32_curates <${subjectURL}> .} - UNION{ <${subjectURL}> crmpe:PP32i_is_curated_by ?curator .} - UNION{ ?curator crmpe:PP32_curates <${subjectURL}> .} - UNION{ <${subjectURL}> crmpe:PP31_uses_curation_plan ?curationplan .} - UNION{ <${subjectURL}> crm:P106i_forms_part_of ?container .} - UNION{ ?container crm:P106_is_composed_of <${subjectURL}> .} - UNION{ <${subjectURL}> crm:P106_is_composed_of ?d3 .} - UNION{ ?d3 crm:P106i_forms_part_of <${subjectURL}> .} - UNION{ <${subjectURL}> crmpe:PP39_is_metadata_for ?anotherdataset .} - UNION{ ?anotherdataset crmpe:PP39i_has_metadata <${subjectURL}> .} - UNION{ <${subjectURL}> crmpe:PP39i_has_metadata ?metadata .} - UNION{ ?metadata crmpe:PP39_is_metadata_for <${subjectURL}> .} - UNION{ <${subjectURL}> crmpe:PP17_has_snapshot ?snapshot .} - UNION{ ?snapshot crmpe:PP17i_is_snapshot_of <${subjectURL}> .} - UNION{ <${subjectURL}> crmpe:PP17i_is_snapshot_of ?snapshotted .} - UNION{ ?snapshotted crmpe:PP17_has_snapshot <${subjectURL}> .} - UNION{ - <${subjectURL}> crm:P94i_was_created_by ?Creation_event . - ?Creation_event crm:P33_used_specific_technique ?technique . - ?technique crm:P2_has_type ?techniquetype . - ?techniquetype rdfs:label ?encoding_label . - } -UNION{ - <${subjectURL}> crm:P94i_was_created_by ?Creation_event . - ?Creation_event crm:P2_has_type . - ?Creation_event crmdig:L23_used_software_or_firmware ?sw . -} -UNION{ - <${subjectURL}> crm:P94i_was_created_by ?Creation_event . - ?Creation_event crm:P2_has_type . - ?Creation_event crm:P14_carried_out_by ?creator . - } -UNION{ - <${subjectURL}> crm:P94i_was_created_by ?event1 . - ?event1 crm:P2_has_type . - ?event1 crm:P4_has_time-span ?timespan . - ?timespan crm:P81_ongoing_throughout ?creationtime . - } -UNION{ - <${subjectURL}> crm:P94i_was_created_by ?updateEvent . - ?updateEvent crm:P2_has_type . - ?updateEvent crm:P4_has_time-span ?timespanUpdate . - ?timespanUpdate crm:P82_at_some_time_within ?updatetime . -} -UNION{ - <${subjectURL}> crm:P94i_was_created_by ?custodialhistory . - ?custodialhistory crm:P2_has_type . - ?custodialhistory crm:P3_has_note ?custodialhistoryNote . -} -UNION{ - <${subjectURL}> crm:P94i_was_created_by ?custodialhistory . - ?custodialhistory crm:P2_has_type . - ?custodialhistory crm:P4_has_time-span ?timespanCustody . - ?timespanCustody crm:P82_at_some_time_within ?custodytime . -} -UNION { - <${subjectURL}> ?hasCurationActivity ?curationActivity . - ?curationActivity a crm:E87_Curation_Activity . - ?curationActivity crm:P4_has_time-span ?curationActivitytimespan . - ?curationActivitytimespan crm:P82_at_some_time_within ?curationtime . -} -UNION { - <${subjectURL}> crm:P72_has_language ?language . - ?language rdfs:label ?languageLabel . -} -} \ No newline at end of file diff --git a/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/parthenos/sparql/PE1_Service.sparql b/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/parthenos/sparql/PE1_Service.sparql deleted file mode 100644 index 873ea06..0000000 --- a/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/parthenos/sparql/PE1_Service.sparql +++ /dev/null @@ -1,148 +0,0 @@ -DEFINE input:inference 'ariadneplus_rules' - -CONSTRUCT { -<${subjectURL}> crm:P1_is_identified_by ?IDRes . -?IDRes a crm:E42_Identifier . -?IDRes rdfs:label ?ID_label . - -<${subjectURL}> crm:P102_has_title ?title . -<${subjectURL}> crm:P3_has_note ?description . -<${subjectURL}> rdfs:label ?label . -<${subjectURL}> a ?type . -<${subjectURL}> crm:P2_has_type ?atypeLabel . - -<${subjectURL}> crmpe:PP2_provided_by ?provider . -?provider crm:P1_is_identified_by ?providerTitle . -?provider rdfs:label ?providerLabel . -?provider crm:P3_has_note ?providerDescr . -?provider crm:P76_has_contact_point ?contactpoint . -?contactpoint crm:P2_has_type ?contactpointType . -?contactpoint rdfs:label ?contactpointLabel . -?contactpointType rdfs:label ?contactpointTypeLabel . - -<${subjectURL}> crmpe:PP4_hosts_object ?object . - -<${subjectURL}> crmpe:PP28_has_designated_access_point ?accesspoint . -<${subjectURL}> crmpe:PP1i_is_currently_offered_by ?offerer . -<${subjectURL}> crmpe:PP45_has_competency ?competenceLabel . - -<${subjectURL}> crmpe:PP31_uses_curation_plan ?curationplan . - -<${subjectURL}> crmpe:PP29_uses_access_protocol ?protocol . -?protocol rdfs:label ?protocolLabel . - -<${subjectURL}> crmpe:PP32_curates ?object2 . - -<${subjectURL}> crmpe:PP15_delivers_on_request ?delivered . -<${subjectURL}> crmpe:PP14_runs_on_request ?ran . - -<${subjectURL}> crmpe:PP42_has_declarative_time ?declTime . - -<${subjectURL}> ?availabilityLabel . -<${subjectURL}> ?activitytypeLabel . - - <${subjectURL}> crm:P16_used_specific_object ?Conditions_of_Use . - ?Conditions_of_Use a crm:E30_Right . - ?Conditions_of_Use crm:P3_has_note ?Conditions_of_Use_Note . - ?Conditions_of_Use crm:P2_has_type ?Conditions_of_Use_Type . - ?Conditions_of_Use_Type rdfs:label ?Conditions_of_Use_Type_label . - -} -WHERE { - <${subjectURL}> a crmpe:PE1_Service . - <${subjectURL}> a ?type . - { - <${subjectURL}> crm:P1_is_identified_by ?IDRes . - ?IDRes a crm:E42_Identifier . - ?IDRes rdfs:label ?ID_label . - } - UNION -{ - <${subjectURL}> crm:P1_is_identified_by ?titleRes . - ?titleRes a crm:E41_Appellation . - ?titleRes rdfs:label ?title . - FILTER NOT EXISTS { ?titleRes a crm:E51_Contact_Point } -} -UNION{ - <${subjectURL}> crm:P3_has_note ?description . -} -UNION{ - <${subjectURL}> rdfs:label ?label . -} - UNION{ - <${subjectURL}> crm:P2_has_type ?atype . - ?atype rdfs:label ?atypeLabel . -} -UNION{ - <${subjectURL}> crm:P2_has_type ?availability . - ?availability rdfs:label ?availabilityLabel . - FILTER(STRSTARTS(STR(?availability), "http://ariadneplus.d4science.org/handle/AriadnePlus/REG/Concept/availabilitytype")) -} -UNION{ - <${subjectURL}> crm:P2_has_type ?activitytype . - ?activitytype rdfs:label ?activitytypeLabel . - FILTER(STRSTARTS(STR(?activitytype), "http://ariadneplus.d4science.org/handle/AriadnePlus/REG/Concept/activitytype")) -} -UNION { -<${subjectURL}> crmpe:PP2_provided_by ?provider . - ?provider crm:P1_is_identified_by ?providerTitleRes . - ?providerTitleRes rdfs:label ?providerTitle . -} -UNION { -<${subjectURL}> crmpe:PP2_provided_by ?provider . - ?provider crm:P3_has_note ?providerDescr . -} -UNION { -<${subjectURL}> crmpe:PP2_provided_by ?provider . - ?provider rdfs:label ?providerLabel . -} -UNION { -<${subjectURL}> crmpe:PP2_provided_by ?provider . - ?provider crm:P76_has_contact_point ?contactpoint . -?contactpoint rdfs:label ?contactpointLabel . -} -UNION { -<${subjectURL}> crmpe:PP2_provided_by ?provider . - ?provider crm:P76_has_contact_point ?contactpoint . - ?contactpoint crm:P2_has_type ?contactpointType . - ?contactpointType rdfs:label ?contactpointTypeLabel .} -UNION { <${subjectURL}> crmpe:PP28_has_designated_access_point ?accesspoint .} -UNION { ?accesspoint crmpe:PP28i_is_designated_access_point_of <${subjectURL}> .} -UNION { <${subjectURL}> crmpe:PP1i_is_currently_offered_by ?offerer .} -UNION { ?offerer crmpe:PP1_currently_offers <${subjectURL}> .} -UNION { - <${subjectURL}> crmpe:PP45_has_competency ?competence . - ?competence rdfs:label ?competenceLabel .} -UNION { <${subjectURL}> crmpe:PP4_hosts_object ?object .} -UNION { ?object crmpe:PP4i_is_object_hosted_by <${subjectURL}> .} - -UNION {<${subjectURL}> crmpe:PP31_uses_curation_plan ?curationplan .} -UNION { ?curationplan crmpe:PP31i_is_curation_plan_used_by <${subjectURL}> .} -UNION { - <${subjectURL}> crmpe:PP29_uses_access_protocol ?protocol . - ?protocol rdfs:label ?protocolLabel .} -UNION { - ?protocol crmpe:PP29i_is_access_protocol_used_by <${subjectURL}> . - ?protocol rdfs:label ?protocolLabel .} -UNION { <${subjectURL}> crmpe:PP32_curates ?object2 .} -UNION { ?object2 crmpe:PP32i_is_curated_by <${subjectURL}> .} -UNION { <${subjectURL}> crmpe:PP15_delivers_on_request ?delivered .} -UNION { ?delivered crmpe:PP15i_is_delivered_by <${subjectURL}>.} -UNION { <${subjectURL}> crmpe:PP14_runs_on_request ?ran .} -UNION { ?ran crmpe:PP14i_is_run_by <${subjectURL}>.} - UNION { - <${subjectURL}> crmpe:PP42_has_declarative_time ?declTime .} -UNION { - <${subjectURL}> crm:P16_used_specific_object ?Conditions_of_Use . - ?Conditions_of_Use a crm:E30_Right . - ?Conditions_of_Use crm:P3_has_note ?Conditions_of_Use_Note . -} -UNION { - <${subjectURL}> crm:P16_used_specific_object ?Conditions_of_Use . - ?Conditions_of_Use a crm:E30_Right . - ?Conditions_of_Use crm:P2_has_type ?Conditions_of_Use_Type . - ?Conditions_of_Use_Type rdfs:label ?Conditions_of_Use_Type_label . -} - -} - diff --git a/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/parthenos/sparql/PE35_Project.sparql b/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/parthenos/sparql/PE35_Project.sparql deleted file mode 100644 index 3695c2a..0000000 --- a/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/parthenos/sparql/PE35_Project.sparql +++ /dev/null @@ -1,62 +0,0 @@ -DEFINE input:inference 'ariadneplus_rules' - -CONSTRUCT { - <${subjectURL}> rdfs:label ?label . - -<${subjectURL}> crm:P1_is_identified_by ?IDRes . -?IDRes a crm:E42_Identifier . -?IDRes rdfs:label ?ID_label . - -<${subjectURL}> crm:P102_has_title ?title . - - <${subjectURL}> crm:P3_has_note ?description . - - <${subjectURL}> a ?type . - - <${subjectURL}> crmpe:PP1_currently_offers ?offeredservice . - -<${subjectURL}> crmpe:PP44_has_maintaining_team ?team . - ?team crm:P76_has_contact_point ?contactpoint . - ?contactpoint crm:P2_has_type ?contactpointType . - ?contactpoint rdfs:label ?contactpointLabel . - ?contactpointType rdfs:label ?contactpointTypeLabel . - - <${subjectURL}> crm:P4_has_time-span ?time_span . - ?time_span crm:P82a_begin_of_the_begin ?time_actual . -} -WHERE { - <${subjectURL}> a crmpe:PE35_Project . - <${subjectURL}> a ?type . - { - <${subjectURL}> crm:P1_is_identified_by ?IDRes . - ?IDRes a crm:E42_Identifier . - ?IDRes rdfs:label ?ID_label . - } - UNION - { - <${subjectURL}> crm:P1_is_identified_by ?titleRes . - ?titleRes a crm:E41_Appellation . - ?titleRes rdfs:label ?title . - } -UNION{ <${subjectURL}> crm:P3_has_note ?description .} -UNION{ <${subjectURL}> rdfs:label ?label .} - -UNION{ - <${subjectURL}> crmpe:PP1_currently_offers ?offeredservice . -} -UNION{ - <${subjectURL}> crmpe:PP44_has_maintaining_team ?team . - } - UNION{ - <${subjectURL}> crmpe:PP44_has_maintaining_team ?team . - ?team crm:P76_has_contact_point ?contactpoint . - ?contactpoint crm:P2_has_type ?contactpointType . - ?contactpoint rdfs:label ?contactpointLabel . - ?contactpointType rdfs:label ?contactpointTypeLabel . - } -UNION { - <${subjectURL}> crm:P4_has_time-span ?time_span . - ?time_span crm:P82a_begin_of_the_begin ?time_actual . - } - -} diff --git a/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/parthenos/sparql/rdfs_rule_set_isql.txt b/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/parthenos/sparql/rdfs_rule_set_isql.txt deleted file mode 100644 index e505fd8..0000000 --- a/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/parthenos/sparql/rdfs_rule_set_isql.txt +++ /dev/null @@ -1,76 +0,0 @@ -To check available rules: SELECT * from DB.DBA.SYS_RDF_SCHEMA; - -#### ARIADNEPLUS RULES #### - -### ORIGINAL WITH OFFICIALLY PUBLISHED SCHEMAS - -SPARQL CLEAR GRAPH ; -sparql load into ; -rdfs_rule_set ('ariadneplus_rules', 'http://www.cidoc-crm.org/cidoc-crm/') ; - -SPARQL CLEAR GRAPH ; -sparql load into ; -rdfs_rule_set ('ariadneplus_rules', 'http://www.ics.forth.gr/isl/CRMext/CRMdig.rdfs/') ; - -SPARQL CLEAR GRAPH ; -sparql load into ; -rdfs_rule_set ('ariadneplus_rules', 'http://ariadneplus.d4science.org/CRMext/CRMpe.rdfs/') ; - - -### USING SCHEMAS AVAILABLE FROM THE WORKSPACE - -SPARQL CLEAR GRAPH ; -sparql load into ; -rdfs_rule_set ('ariadneplus_rules', 'http://www.cidoc-crm.org/cidoc-crm/') ; - -SPARQL CLEAR GRAPH ; -sparql load into ; -rdfs_rule_set ('ariadneplus_rules', 'http://www.ics.forth.gr/isl/CRMext/CRMdig.rdfs/') ; - -SPARQL CLEAR GRAPH ; -sparql load into ; -rdfs_rule_set ('ariadneplus_rules', 'http://ariadneplus.d4science.org/CRMext/CRMpe.rdfs/') ; - -#### EXTENDED RULES #### - -# CRMext4SKOSandLabel_v1.4___23-03-2016180729___3031___20-09-2016163145___12893.rdfs -sparql load into ; -# CRMpc_v1.1.1.rdfs -sparql load into ; - -rdfs_rule_set ('extended_rules', 'http://www.cidoc-crm.org/cidoc-crm/') ; -rdfs_rule_set ('extended_rules', 'http://www.ics.forth.gr/isl/CRMext/CRMdig.rdfs/') ; -rdfs_rule_set ('extended_rules', 'http://ariadneplus.d4science.org/CRMext/CRMpe.rdfs/') ; - -SPARQL CLEAR GRAPH ; -sparql load into ; -rdfs_rule_set ('extended_rules', 'https://vocabs.dariah.eu/bbt/') ; - -SPARQL CLEAR GRAPH ; -sparql load into ; -rdfs_rule_set ('extended_rules', 'http://www.cidoc-crm.org/cidoc-crm/CRMarchaeo/') ; - -SPARQL CLEAR GRAPH ; -sparql load into ; -rdfs_rule_set ('extended_rules', 'http://www.cidoc-crm.org/cidoc-crm/CRMgeo/') ; - -SPARQL CLEAR GRAPH ; -sparql load into ; -rdfs_rule_set ('extended_rules', 'http://www.cidoc-crm.org/cidoc-crm/CRMsci/') ; - -SPARQL CLEAR GRAPH ; -sparql load into ; -rdfs_rule_set ('extended_rules', 'http://iflastandards.info/ns/fr/frbr/frbroo/') ; - -SPARQL CLEAR GRAPH ; -sparql load into ; -rdfs_rule_set ('extended_rules', 'http://www.w3.org/2004/02/skos/core#') ; - - - - - - - - - diff --git a/dnet-ariadneplus-graphdb-publisher/src/main/resources/query.txt b/dnet-ariadneplus-graphdb-publisher/src/main/resources/query.txt index 268fafe..0e669bd 100644 --- a/dnet-ariadneplus-graphdb-publisher/src/main/resources/query.txt +++ b/dnet-ariadneplus-graphdb-publisher/src/main/resources/query.txt @@ -45,21 +45,29 @@ CONSTRUCT { ?temporal aoprop:periodName ?temporalPeriodName . ?temporal aoprop:from ?temporalFrom . ?temporal aoprop:until ?temporalUntil . +?record aoprop:uri ?temporalNative . +?temporalNative aoprop:periodName ?temporalNativePeriodName . ?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:derivedSubject ?derivedSubject . +?derivedSubject aoprop:prefLabel ?derivedSubjectPrefLabel . +?derivedSubject aoprop:source "Getty AAT" . +?record aoprop:aatSubjects ?derivedSubject . +?derivedSubject aoprop:id ?derivedSubject . +?derivedSubject aoprop:label ?derivedSubjectPrefLabel . ?record aoprop:title ?title . ?record aoprop:description ?description . ?record aoprop:language ?language . } from -from -from -from +from +from +from +from where { ?record aocat:has_language / skos:prefLabel ?language . ?record aocat:has_original_id ?originalId . @@ -68,19 +76,15 @@ where { ?creator aocat:has_name ?creatorName . ?record aocat:has_title ?title . ?record aocat:has_type / skos:prefLabel ?resourceType . + ?record aocat:has_native_subject ?nativeSubject . + ?nativeSubject skos:prefLabel ?nativeSubjectPrefLabel . + optional { + ?record aocat:has_derived_subject ?derivedSubject . + ?derivedSubject skos:prefLabel ?derivedSubjectPrefLabel . + } optional { ?creator aocat:has_email ?creatorEmail . } - optional { - ?record aocat:has_native_subject ?nativeSubject . - ?nativeSubject skos:prefLabel ?nativeSubjectPrefLabel . - optional { - ?nativeSubject skos:exactMatch ?aatSubjectsId . - } - optional { - ?nativeSubject skos:closeMatch ?aatSubjectsId . - } - } optional { ?record aocat:has_description ?description . } @@ -90,22 +94,19 @@ where { optional { ?record aocat:has_landing_page / rdfs:label ?landingPage . } - optional { - ?record aocat:has_temporal_coverage ?temporal . - ?temporal aocat:has_period / rdfs:label ?temporalPeriodName . + optional { + ?record aocat:has_temporal_coverage ?temporalNative . + ?temporalNative aocat:has_native_period / skos:prefLabel ?temporalNativePeriodName . } optional { ?record aocat:has_temporal_coverage ?temporal . - ?temporal aocat:has_native_period ?nativePeriod . - ?nativePeriod skos:prefLabel ?temporalPeriodName . + ?temporal aocat:has_period / skos:prefLabel ?temporalPeriodName . optional { - ?nativePeriod skos:exactMatch ?periodORef . - ?periodORef time:intervalStartedBy ?intervalStartedBy . - ?intervalStartedBy skos:prefLabel ?temporalFrom . - ?periodORef time:intervalFinishedBy ?intervalFinishedBy . - ?intervalFinishedBy skos:prefLabel ?temporalUntil . - } + ?temporal aocat:from ?temporalFrom . + ?temporal aocat:until ?temporalUntil . + } } + { select * where {