From 5682cc4bd23b3a273616c46c8ae4356ed1646eb6 Mon Sep 17 00:00:00 2001 From: Enrico Ottonello Date: Fri, 2 Apr 2021 12:46:07 +0200 Subject: [PATCH] added multiple descriptions for arup --- .../ariadneplus/reader/ResourceManager.java | 10 +++++++++- .../enrich/ARUP/ordered_sparql_insert_arup.sparql | 14 ++++++++++++++ .../ariadneplus/GraphDbReaderAndESIndexTest.java | 13 +++++++++++-- 3 files changed, 34 insertions(+), 3 deletions(-) diff --git a/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/reader/ResourceManager.java b/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/reader/ResourceManager.java index 9c343a7..5072839 100644 --- a/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/reader/ResourceManager.java +++ b/dnet-ariadneplus-graphdb-publisher/src/main/java/eu/dnetlib/ariadneplus/reader/ResourceManager.java @@ -7,6 +7,7 @@ import java.util.ArrayList; import java.util.LinkedHashMap; import java.util.List; import java.util.Set; +import java.util.stream.Collectors; import javax.annotation.PostConstruct; @@ -124,7 +125,14 @@ public class ResourceManager { if (!map.hasExternalReference()){ Method setField = c.getMethod("set" + map.getClass_field(), Class.forName(map.getElement_type())); - setField.invoke(class_instance, getFieldValue(values.get(0))); + if (map.getClass_field().equals("Description")) { + setField.invoke(class_instance, values.stream().map(value -> { + return getFieldValue(value); + }).collect(Collectors.joining(" \n"))); + } + else { + setField.invoke(class_instance, getFieldValue(values.get(0))); + } } else{ if(propertiesMap.get(map.getExternal_reference()).getClass_type().equals("prototype")){ diff --git a/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/ariadneplus/sparql/enrich/ARUP/ordered_sparql_insert_arup.sparql b/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/ariadneplus/sparql/enrich/ARUP/ordered_sparql_insert_arup.sparql index 62f389f..34cecf4 100644 --- a/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/ariadneplus/sparql/enrich/ARUP/ordered_sparql_insert_arup.sparql +++ b/dnet-ariadneplus-graphdb-publisher/src/main/resources/eu/dnetlib/ariadneplus/sparql/enrich/ARUP/ordered_sparql_insert_arup.sparql @@ -537,6 +537,20 @@ WHERE { ?record aocat:is_about ?document . }; +PREFIX aocat: +PREFIX rdf: +INSERT { + GRAPH { + ?record aocat:has_creator ?creator . + } +} +USING +WHERE { + ?record aocat:is_about ?about . + ?about rdf:type aocat:AO_Document . + ?about aocat:has_creator ?creator . +}; + PREFIX aocat: PREFIX rdf: PREFIX skos: diff --git a/dnet-ariadneplus-graphdb-publisher/test/java/eu/dnetlib/ariadneplus/GraphDbReaderAndESIndexTest.java b/dnet-ariadneplus-graphdb-publisher/test/java/eu/dnetlib/ariadneplus/GraphDbReaderAndESIndexTest.java index e40740c..eb485b1 100644 --- a/dnet-ariadneplus-graphdb-publisher/test/java/eu/dnetlib/ariadneplus/GraphDbReaderAndESIndexTest.java +++ b/dnet-ariadneplus-graphdb-publisher/test/java/eu/dnetlib/ariadneplus/GraphDbReaderAndESIndexTest.java @@ -32,7 +32,6 @@ public class GraphDbReaderAndESIndexTest { private RunSPARQLQueryService runSPQRLQuery; @Test - @Ignore public void uploadAMCRFieldworkTest() throws Exception { boolean isRecord = true; String recordId = "https://ariadne-infrastructure.eu/aocat/Resource/AMCR/E61E0F4E-268F-39E4-8EDB-A431AFC505AA"; @@ -42,7 +41,6 @@ public class GraphDbReaderAndESIndexTest { } @Test - @Ignore public void uploadAMCRDocumentTest() throws Exception { boolean isRecord = true; String recordId = "https://ariadne-infrastructure.eu/aocat/Collection/AMCR/FC59581D-DC3A-31DA-922A-98DE764F3D76"; @@ -61,6 +59,16 @@ public class GraphDbReaderAndESIndexTest { readAndIndexTest(isRecord, recordId, datasource, collectionId); } + @Test + @Ignore + public void uploadAMCRIndividualFindTest() throws Exception { + boolean isRecord = true; + String recordId = "https://ariadne-infrastructure.eu/aocat/Resource/AMCR/98D717C4-410F-35C6-8072-FABA7686B4A3"; + String datasource = "amcr"; + String collectionId = "oai"; + readAndIndexTest(isRecord, recordId, datasource, collectionId); + } + @Test @Ignore public void uploadADSRecordTest() throws Exception { @@ -122,6 +130,7 @@ public class GraphDbReaderAndESIndexTest { } @Test + @Ignore public void uploadADSArchivesBoundingBoxTest() throws Exception { boolean isRecord = true; String recordId = "https://ariadne-infrastructure.eu/aocat/Resource/90D1C95D-E249-3E74-92D9-B58FDF690CC7";