From e6896239942f83c45a4791e7d4d8b8e84e7cfc48 Mon Sep 17 00:00:00 2001 From: Enrico Ottonello Date: Wed, 8 Jul 2020 10:50:14 +0200 Subject: [PATCH] all ES fields are now mapped --- .../ariadneplus/elasticsearch/BulkUpload.java | 27 ++++++++++++++++--- .../elasticsearch/model/AgentInfo.java | 6 ++--- .../model/AriadneCatalogEntry.java | 19 +++++++------ .../ariadneplus/elasticsearch/model/Dex.java | 4 +-- .../elasticsearch/model/Distribution.java | 10 +++---- .../model/ItemMetadataStructure.java | 2 +- .../elasticsearch/model/MetadataRecord.java | 2 +- .../elasticsearch/model/Spatial.java | 7 ++--- .../reader/RunSPARQLQueryService.java | 1 + .../sparql/read_record_data_template.sparql | 1 + 10 files changed, 53 insertions(+), 26 deletions(-) diff --git a/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/elasticsearch/BulkUpload.java b/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/elasticsearch/BulkUpload.java index cf4b20f..53af97b 100644 --- a/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/elasticsearch/BulkUpload.java +++ b/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/elasticsearch/BulkUpload.java @@ -1,8 +1,6 @@ package eu.dnetlib.ariadneplus.elasticsearch; -import eu.dnetlib.ariadneplus.elasticsearch.model.AgentInfo; -import eu.dnetlib.ariadneplus.elasticsearch.model.AriadneCatalogEntry; -import eu.dnetlib.ariadneplus.elasticsearch.model.Spatial; +import eu.dnetlib.ariadneplus.elasticsearch.model.*; import eu.dnetlib.ariadneplus.reader.ResourceManager; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -77,6 +75,29 @@ public class BulkUpload { if (uniqueIsPartOf!=null) { ace.setIsPartOf(Arrays.asList(uniqueIsPartOf)); } + if (ace.getContributor()!=null) { + ace.getContributor().clear(); + ace.setContributor(ace.getCreator()); + } + Distribution distribution = new Distribution(); + AgentInfo distrPublisher = new AgentInfo(); + distrPublisher.setEmail(""); + distrPublisher.setName(""); + distrPublisher.setType(""); + distribution.setPublisher(Arrays.asList(distrPublisher)); + ace.setDistribution(Arrays.asList(distribution)); + ItemMetadataStructure ims = new ItemMetadataStructure(); + ace.setHasItemMetadataStructure(Arrays.asList(ims)); + MetadataRecord mr = new MetadataRecord(); + Dex dex = new Dex(); + mr.setConformsTo(Arrays.asList(dex)); + ace.setHasMetadataRecord(Arrays.asList(mr)); + ace.setKeyword(Arrays.asList(new String(""))); + AgentInfo sr = new AgentInfo(); + ace.setScientificResponsible(Arrays.asList(sr)); + AgentInfo tr = new AgentInfo(); + ace.setTechnicalResponsible(Arrays.asList(tr)); + AgentInfo testPublisher = new AgentInfo(); testPublisher.setName("TEST"); ace.getPublisher().add(testPublisher); diff --git a/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/elasticsearch/model/AgentInfo.java b/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/elasticsearch/model/AgentInfo.java index 08e9e17..349c89c 100644 --- a/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/elasticsearch/model/AgentInfo.java +++ b/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/elasticsearch/model/AgentInfo.java @@ -6,9 +6,9 @@ import com.google.gson.JsonElement; import java.util.Map; public class AgentInfo { - private String email; - private String name; - private String phone; + private String email = new String(""); + private String name = new String(""); + private String phone = new String(""); private String type = new String(""); public AgentInfo() { diff --git a/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/elasticsearch/model/AriadneCatalogEntry.java b/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/elasticsearch/model/AriadneCatalogEntry.java index 805d9d7..226edee 100644 --- a/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/elasticsearch/model/AriadneCatalogEntry.java +++ b/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/elasticsearch/model/AriadneCatalogEntry.java @@ -10,7 +10,6 @@ public class AriadneCatalogEntry { private String accessPolicy; private String accessRights; private ArchaeologicalResourceType archaeologicalResourceType; - private String contactPoint; private List contributor; private List creator; private List derivedSubject; @@ -18,7 +17,6 @@ public class AriadneCatalogEntry { private List distribution; private List publisher; private String title; - private String extent; private List hasItemMetadataStructure; private List hasMetadataRecord; private String identifier; @@ -33,13 +31,7 @@ public class AriadneCatalogEntry { private List nativeSubject; private String originalId; private List owner; - private String packageId = new String("");; - private String placeName; - private String postcode; - private String providerId = new String("");; - private String rdfAbout; private String resourceType; - private String rights; private List scientificResponsible; private List spatial; // private List spatialRegion; @@ -47,6 +39,17 @@ public class AriadneCatalogEntry { private List technicalResponsible; private List temporal; + private String accrualPeriodicity = new String(""); + private String audience = new String(""); + private String contactPoint = new String(""); + private String extent = new String(""); + private String providerId = new String(""); + private String packageId = new String(""); + private String placeName = new String(""); + private String postcode = new String(""); + private String rdfAbout = new String(""); + private String rights = new String(""); + public List getContributor() { return contributor; } diff --git a/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/elasticsearch/model/Dex.java b/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/elasticsearch/model/Dex.java index 5784e03..8efc857 100644 --- a/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/elasticsearch/model/Dex.java +++ b/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/elasticsearch/model/Dex.java @@ -3,8 +3,8 @@ package eu.dnetlib.ariadneplus.elasticsearch.model; import com.google.gson.Gson; public class Dex { - private String characterSet; - private String description; + private String characterSet = new String(""); + private String description = new String(""); public String getCharacterSet() { return characterSet; diff --git a/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/elasticsearch/model/Distribution.java b/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/elasticsearch/model/Distribution.java index cd9d163..3c86a89 100644 --- a/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/elasticsearch/model/Distribution.java +++ b/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/elasticsearch/model/Distribution.java @@ -5,12 +5,12 @@ import com.google.gson.Gson; import java.util.List; public class Distribution { - private String accessURL; - private String description; - private String issued; - private String modified; + private String accessURL = new String(""); + private String description = new String(""); + private String issued = new String("9999"); + private String modified = new String("9999"); private List publisher; - private String title; + private String title = new String(""); public String getTitle() { return title; diff --git a/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/elasticsearch/model/ItemMetadataStructure.java b/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/elasticsearch/model/ItemMetadataStructure.java index b344686..fe28cf3 100644 --- a/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/elasticsearch/model/ItemMetadataStructure.java +++ b/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/elasticsearch/model/ItemMetadataStructure.java @@ -3,7 +3,7 @@ package eu.dnetlib.ariadneplus.elasticsearch.model; import com.google.gson.Gson; public class ItemMetadataStructure { - private String characterSet; + private String characterSet = new String(""); public String getCharacterSet() { return characterSet; diff --git a/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/elasticsearch/model/MetadataRecord.java b/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/elasticsearch/model/MetadataRecord.java index 8a02e9e..dcd9946 100644 --- a/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/elasticsearch/model/MetadataRecord.java +++ b/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/elasticsearch/model/MetadataRecord.java @@ -6,7 +6,7 @@ import java.util.List; public class MetadataRecord { private List conformsTo; - private String xmlDoc; + private String xmlDoc = new String(""); public List getConformsTo() { return conformsTo; diff --git a/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/elasticsearch/model/Spatial.java b/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/elasticsearch/model/Spatial.java index 530606b..60a6979 100644 --- a/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/elasticsearch/model/Spatial.java +++ b/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/elasticsearch/model/Spatial.java @@ -7,17 +7,18 @@ import java.util.Map; public class Spatial { - private String address; + private String address = new String(""); private String boundingBoxMaxLat; private String boundingBoxMaxLon; private String boundingBoxMinLat; private String boundingBoxMinLon; - private String coordinateSystem = new String("");; - private String country = new String("");; + private String coordinateSystem = new String(""); + private String country = new String(""); private AriadneGeoPoint location; private String placeName; private String lat; private String lon; + private String postcode = new String(""); public String getAddress() { return address; diff --git a/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/reader/RunSPARQLQueryService.java b/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/reader/RunSPARQLQueryService.java index 6e20098..b9f095d 100644 --- a/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/reader/RunSPARQLQueryService.java +++ b/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/reader/RunSPARQLQueryService.java @@ -94,6 +94,7 @@ public class RunSPARQLQueryService { if (isCollection) { parser.setCollection(true); } + log.debug("rdf > json : "+recordWriter.toString()); parser.parse(recordWriter.toString()); resourceManager.manage(parser); bulkUpload.index(resourceManager, isCollection); diff --git a/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/ariadneplus/sparql/read_record_data_template.sparql b/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/ariadneplus/sparql/read_record_data_template.sparql index 798e5cb..210a47b 100644 --- a/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/ariadneplus/sparql/read_record_data_template.sparql +++ b/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/ariadneplus/sparql/read_record_data_template.sparql @@ -45,6 +45,7 @@ CONSTRUCT { ?temporal aoprop:periodName ?temporalPeriodName . ?temporal aoprop:from ?temporalFrom . ?temporal aoprop:until ?temporalUntil . +?temporal aoprop:uri ?temporal . %record aoprop:uri ?temporalNative . ?temporalNative aoprop:periodName ?temporalNativePeriodName . %record aoprop:archeologicalResourceType ?archeologicalResourceType .