diff --git a/anno-gui/src/main/java/org/genesys2/anno/converter/RowConverter.java b/anno-gui/src/main/java/org/genesys2/anno/converter/RowConverter.java index dc672bc25fe2fe7b24125c62bce52774e5e7785a..d4f74dda58310b1262a315285fbf51b1e67b0506 100644 --- a/anno-gui/src/main/java/org/genesys2/anno/converter/RowConverter.java +++ b/anno-gui/src/main/java/org/genesys2/anno/converter/RowConverter.java @@ -352,6 +352,9 @@ public class RowConverter { if (rdfValues == null) { return null; } + if (rdfValues instanceof String && StringUtils.isBlank(rdfValues.toString())) { + return null; + } if (targetType == String.class) { return new TextNode(rdfValues.toString()); } diff --git a/anno-gui/src/main/java/org/genesys2/anno/predefined/GenesysJSON.java b/anno-gui/src/main/java/org/genesys2/anno/predefined/GenesysJSON.java index 7c5c2f5f9b2ca67d2a21ba1e4770a9ac08d0f753..4a12e53a3eaf6dd1e95aa904b8b677f12df8d670 100644 --- a/anno-gui/src/main/java/org/genesys2/anno/predefined/GenesysJSON.java +++ b/anno-gui/src/main/java/org/genesys2/anno/predefined/GenesysJSON.java @@ -100,6 +100,9 @@ public class GenesysJSON { JsonField doi = new JsonField(Api1Constants.Accession.DOI, RdfMCPD.DOI).setRequired(false); columns.add(doi); + JsonField dataProviderId = new JsonField(Api1Constants.Accession.DATA_PROVIDER_ID, RdfMCPD.DATA_PROVIDER_ID).setRequired(false); + columns.add(dataProviderId); + JsonField acceNumb = new JsonField(Api1Constants.Accession.ACCENUMB, RdfMCPD.ACCENUMB).setRequired(true); columns.add(acceNumb); diff --git a/anno-gui/src/main/java/org/genesys2/anno/predefined/MCPD.java b/anno-gui/src/main/java/org/genesys2/anno/predefined/MCPD.java index 1511eb18864702c1736535c28ba21e6a1bf4491c..faef3623f5919b4a85f0ad8f299b766d0c249b1f 100644 --- a/anno-gui/src/main/java/org/genesys2/anno/predefined/MCPD.java +++ b/anno-gui/src/main/java/org/genesys2/anno/predefined/MCPD.java @@ -30,6 +30,13 @@ public class MCPD { public MCPD() { List columns = new ArrayList(); + + ColumnDef dataProviderId = new ColumnDef("DATA_PROVIDER_ID", "Data provider ID", ColumnDataType.TEXT, true, RdfMCPD.DATA_PROVIDER_ID).setIncludeNull(false); + columns.add(dataProviderId); + + ColumnDef doi = new ColumnDef("DOI", "Digital object identifier", ColumnDataType.TEXT, true, RdfMCPD.DOI); + columns.add(doi); + ColumnDef instCode = new ColumnDef("INSTCODE", "Institute code", ColumnDataType.TEXT, false, RdfMCPD.INSTCODE); instCode.getValidators().add(new FaoWiewsInstCodeValidator()); columns.add(instCode); @@ -38,9 +45,6 @@ public class MCPD { newInstCode.getValidators().add(new FaoWiewsInstCodeValidator()); columns.add(newInstCode); - ColumnDef doi = new ColumnDef("DOI", "Digital object identifier", ColumnDataType.TEXT, true, RdfMCPD.DOI); - columns.add(doi); - ColumnDef acceNumb = new ColumnDef("ACCENUMB", "Accession number", ColumnDataType.TEXT, true, RdfMCPD.ACCENUMB); columns.add(acceNumb); diff --git a/anno-gui/src/main/java/org/genesys2/anno/predefined/RdfMCPD.java b/anno-gui/src/main/java/org/genesys2/anno/predefined/RdfMCPD.java index d71718b66b6d829d299f06d7d2955e669e10e41e..5ba6cdf1f8d18fba2779cdbe983cac85ac829f32 100644 --- a/anno-gui/src/main/java/org/genesys2/anno/predefined/RdfMCPD.java +++ b/anno-gui/src/main/java/org/genesys2/anno/predefined/RdfMCPD.java @@ -21,6 +21,7 @@ public class RdfMCPD { public static final String INSTCODE = "http://rs.tdwg.org/dwc/terms/institutionCode"; public static final String INSTCODE_NEW = "https://www.genesys-pgr.org/rdf/mcpd#newInstituteCode"; public static final String DOI = "http://prismstandard.org/namespaces/1.2/basic/doi"; + public static final String DATA_PROVIDER_ID = "https://www.genesys-pgr.org/rdf/mcpd#dataProviderId"; public static final String ACCENUMB = "http://purl.org/germplasm/germplasmTerm#germplasmID"; public static final String ACCENUMB_NEW = "https://www.genesys-pgr.org/rdf/mcpd#newAcceNumb";