From 9ef063d502f352cc1143b5117d22debe36abf6e8 Mon Sep 17 00:00:00 2001 From: Alessia Bardi Date: Wed, 7 Sep 2022 17:29:54 +0300 Subject: [PATCH 1/2] #7861#note-8 instance url from handle --- .../dhp/oa/graph/raw/OdfToOafMapper.java | 14 +++- .../dnetlib/dhp/oa/graph/raw/MappersTest.java | 3 + .../eu/dnetlib/dhp/oa/graph/raw/riunet.xml | 64 ++++++------------- 3 files changed, 35 insertions(+), 46 deletions(-) diff --git a/dhp-workflows/dhp-graph-mapper/src/main/java/eu/dnetlib/dhp/oa/graph/raw/OdfToOafMapper.java b/dhp-workflows/dhp-graph-mapper/src/main/java/eu/dnetlib/dhp/oa/graph/raw/OdfToOafMapper.java index 1bbeac9fb..3dc510423 100644 --- a/dhp-workflows/dhp-graph-mapper/src/main/java/eu/dnetlib/dhp/oa/graph/raw/OdfToOafMapper.java +++ b/dhp-workflows/dhp-graph-mapper/src/main/java/eu/dnetlib/dhp/oa/graph/raw/OdfToOafMapper.java @@ -25,7 +25,8 @@ import eu.dnetlib.dhp.schema.oaf.utils.IdentifierFactory; public class OdfToOafMapper extends AbstractMdRecordToOafMapper { - public static final String HTTP_DX_DOI_PREIFX = "https://dx.doi.org/"; + public static final String HTTP_DOI_PREIFX = "https://doi.org/"; + public static final String HTTP_HANDLE_PREIFX = "http://hdl.handle.net/"; public OdfToOafMapper(final VocabularyGroup vocs, final boolean invisible, final boolean shouldHashId, final boolean forceOrginalId) { @@ -172,10 +173,17 @@ public class OdfToOafMapper extends AbstractMdRecordToOafMapper { } for (final Object o : doc .selectNodes("//*[local-name()='alternateIdentifier' and ./@alternateIdentifierType='DOI']")) { - url.add(HTTP_DX_DOI_PREIFX + ((Node) o).getText().trim()); + url.add(HTTP_DOI_PREIFX + ((Node) o).getText().trim()); } for (final Object o : doc.selectNodes("//*[local-name()='identifier' and ./@identifierType='DOI']")) { - url.add(HTTP_DX_DOI_PREIFX + ((Node) o).getText().trim()); + url.add(HTTP_DOI_PREIFX + ((Node) o).getText().trim()); + } + for (final Object o : doc + .selectNodes("//*[local-name()='alternateIdentifier' and ./@alternateIdentifierType='Handle']")) { + url.add(HTTP_HANDLE_PREIFX + ((Node) o).getText().trim()); + } + for (final Object o : doc.selectNodes("//*[local-name()='identifier' and ./@identifierType='Handle']")) { + url.add(HTTP_HANDLE_PREIFX + ((Node) o).getText().trim()); } if (!url.isEmpty()) { instance.setUrl(new ArrayList<>()); diff --git a/dhp-workflows/dhp-graph-mapper/src/test/java/eu/dnetlib/dhp/oa/graph/raw/MappersTest.java b/dhp-workflows/dhp-graph-mapper/src/test/java/eu/dnetlib/dhp/oa/graph/raw/MappersTest.java index b4ee7e740..955ef1d42 100644 --- a/dhp-workflows/dhp-graph-mapper/src/test/java/eu/dnetlib/dhp/oa/graph/raw/MappersTest.java +++ b/dhp-workflows/dhp-graph-mapper/src/test/java/eu/dnetlib/dhp/oa/graph/raw/MappersTest.java @@ -942,6 +942,9 @@ class MappersTest { System.out.println("***************"); System.out.println(new ObjectMapper().writeValueAsString(list)); System.out.println("***************"); + final Publication p = (Publication) list.get(0); + assertNotNull(p.getInstance().get(0).getUrl().get(0)); + } private void assertValidId(final String id) { diff --git a/dhp-workflows/dhp-graph-mapper/src/test/resources/eu/dnetlib/dhp/oa/graph/raw/riunet.xml b/dhp-workflows/dhp-graph-mapper/src/test/resources/eu/dnetlib/dhp/oa/graph/raw/riunet.xml index 57c1c51b5..ed195ba7b 100644 --- a/dhp-workflows/dhp-graph-mapper/src/test/resources/eu/dnetlib/dhp/oa/graph/raw/riunet.xml +++ b/dhp-workflows/dhp-graph-mapper/src/test/resources/eu/dnetlib/dhp/oa/graph/raw/riunet.xml @@ -21,72 +21,50 @@ - 10.4995/ijpme.2020.12944 - - 10251/148537 - + 10251/178464 + - journal article - VoR + lecture - http://creativecommons.org/licenses/by-nc-nd/4.0/ + http://creativecommons.org/licenses/by-nc/4.0/ open access - Production planning in 3D printing factories + Discurso de inauguración del curso academico 1990-1991 de la Universitat Politècnica de València - [EN] Production planning in 3D printing factories brings new challenges among which the scheduling of parts to be produced stands out. A main issue is to increase the efficiency of the plant and 3D printers productivity. Planning, scheduling, and nesting in 3D printing are recurrent problems in the search for new techniques to promote the development of this technology. In this work, we address the problem for the suppliers that have to schedule their daily production. This problem is part of the LONJA3D model, a managed 3D printing market where the parts ordered by the customers are reorganized into new batches so that suppliers can optimize their production capacity. In this paper, we propose a method derived from the design of combinatorial auctions to solve the nesting problem in 3D printing. First, we propose the use of a heuristic to create potential manufacturing batches. Then, we compute the expected return for each batch. The selected batch should generate the highest income. Several experiments have been tested to validate the process. This method is a first approach to the planning problem in 3D printing and further research is proposed to improve the procedure. - This research has been partially financed by the project: “Lonja de Impresión 3D para la Industria 4.0 y la Empresa Digital (LONJA3D)” funded by the Regional Government of Castile and Leon and the European Regional Development Fund (ERDF, FEDER) with grant VA049P17. + [ES] Discurso de Justo Nieto en el acto de inauguración del curso académico 1990-1991 + [EN] Inaugural speech by Justo Nieto at the opening ceremony of the 1990-1991 academic year - eng - Universitat Politècnica de València + spa application/pdf - 716912 + 5055377 - - - Junta de Castilla y León - http://dx.doi.org/10.13039/501100014180 - VA049P17 - - - De Antón, J. - - - Senovilla, J. - - - González, J.M. - - - Acebes, F. - - - Pajares, J. + Nieto Nieto, Justo - 2020-07-18 + 1991 - Additive manufacturing - Production planning - Packing problem - Optimization - Nesting + Justo Nieto Nieto (Discursos) + Universitat Politècnica de València (UPV) + Presentación inaugural + Curso académico 1990-91 + Discurso inaugural + Inaugural speech + Inaugural presentation - 10.4995/ijpme.2020.12944 - 10251/148537 + 10251/178464 0038 - 2020-07-18 + 1991-01-01 OPEN - eng + spa From a539c6ccaf96a5577933a6f159465ba385002be3 Mon Sep 17 00:00:00 2001 From: Alessia Bardi Date: Fri, 9 Sep 2022 12:16:28 +0200 Subject: [PATCH 2/2] https for handle URLs --- .../main/java/eu/dnetlib/dhp/oa/graph/raw/OdfToOafMapper.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dhp-workflows/dhp-graph-mapper/src/main/java/eu/dnetlib/dhp/oa/graph/raw/OdfToOafMapper.java b/dhp-workflows/dhp-graph-mapper/src/main/java/eu/dnetlib/dhp/oa/graph/raw/OdfToOafMapper.java index 3dc510423..6f1236fff 100644 --- a/dhp-workflows/dhp-graph-mapper/src/main/java/eu/dnetlib/dhp/oa/graph/raw/OdfToOafMapper.java +++ b/dhp-workflows/dhp-graph-mapper/src/main/java/eu/dnetlib/dhp/oa/graph/raw/OdfToOafMapper.java @@ -26,7 +26,7 @@ import eu.dnetlib.dhp.schema.oaf.utils.IdentifierFactory; public class OdfToOafMapper extends AbstractMdRecordToOafMapper { public static final String HTTP_DOI_PREIFX = "https://doi.org/"; - public static final String HTTP_HANDLE_PREIFX = "http://hdl.handle.net/"; + public static final String HTTP_HANDLE_PREIFX = "https://hdl.handle.net/"; public OdfToOafMapper(final VocabularyGroup vocs, final boolean invisible, final boolean shouldHashId, final boolean forceOrginalId) {