From 9775a4dd4ae805b6e15877e74317af5b7b69ab7e Mon Sep 17 00:00:00 2001 From: Juanje Mendoza Date: Thu, 28 May 2026 09:45:29 +0200 Subject: [PATCH] include void:uriSpace as an alternative for vann:preferredNamespaceURI. Fixes #73 --- src/main/java/entities/Ontology.java | 1 + src/main/java/fair/Constants.java | 5 ++--- src/test/java/fair/FOOPSTest.java | 19 +++++++++++++++++++ src/test/resources/test_void_urispace.ttl | 11 +++++++++++ 4 files changed, 33 insertions(+), 3 deletions(-) create mode 100644 src/test/resources/test_void_urispace.ttl diff --git a/src/main/java/entities/Ontology.java b/src/main/java/entities/Ontology.java index df2c3496..4b154389 100644 --- a/src/main/java/entities/Ontology.java +++ b/src/main/java/entities/Ontology.java @@ -269,6 +269,7 @@ private void completeMetadata(OWLAnnotation a) { this.namespacePrefix = Utils.getValueAsLiteralOrURI(a.getValue()); this.supportedMetadata.add(Constants.FOOPS_NS_PREFIX); break; + case Constants.PROP_VOID_URI_SPACE: case Constants.PROP_VANN_URI: value = Utils.getValueAsLiteralOrURI(a.getValue()); this.namespaceUri = value; diff --git a/src/main/java/fair/Constants.java b/src/main/java/fair/Constants.java index 85d1cec1..bef5c020 100644 --- a/src/main/java/fair/Constants.java +++ b/src/main/java/fair/Constants.java @@ -342,8 +342,6 @@ public class Constants { public static final String PREFIX_CC = "http://prefix.cc/"; //to do: ontobee (http://www.ontobee.org/sparql), bioportal, - - /* FAIR Categories*/ public static final String FINDABLE = "Findable"; public static final String ACCESSIBLE = "Accessible"; @@ -371,6 +369,7 @@ public class Constants { public static final String NS_DCTERMS = "http://purl.org/dc/terms/"; public static final String NS_OWL = "http://www.w3.org/2002/07/owl#"; public static final String NS_VANN = "http://purl.org/vocab/vann/"; + public static final String NS_VOID = "http://rdfs.org/ns/void#"; // public static final String NS_VAEM = // "http://www.linkedmodel.org/schema/vaem#"; public static final String NS_PROV = "http://www.w3.org/ns/prov#"; @@ -492,7 +491,7 @@ public class Constants { public static final String PROP_VANN_PREFIX = NS_VANN + "preferredNamespacePrefix"; public static final String PROP_VANN_URI = NS_VANN + "preferredNamespaceUri"; - + public static final String PROP_VOID_URI_SPACE = NS_VOID + "uriSpace"; public static final String PROP_SKOS_NOTE = NS_SKOS + "note"; public static final String PROP_PAV_CREATED_BY = NS_PAV + "createdBy"; diff --git a/src/test/java/fair/FOOPSTest.java b/src/test/java/fair/FOOPSTest.java index 7ffdb51f..9c403125 100644 --- a/src/test/java/fair/FOOPSTest.java +++ b/src/test/java/fair/FOOPSTest.java @@ -412,4 +412,23 @@ public void testVersionInJsonLdResultSetOutput(){ } } + /** + * This test verifies that void:uriSpace is recognized + * as an alternative to vann:preferredNamespaceUri for the namespace URI. + */ + @Test + public void testVoidUriSpaceRecognized(){ + try { + ClassLoader classLoader = getClass().getClassLoader(); + File is = new File(classLoader.getResource("test_void_urispace.ttl").getFile()); + FOOPS f = new FOOPS(is.toString(), true); + assertEquals("http://example.org/test_void#", f.getOntology().getNamespaceUri()); + assertTrue(f.getOntology().getSupportedMetadata().contains(Constants.FOOPS_NS_URI)); + f.removeTemporaryFolders(); + } catch (Exception e) { + logger.error("Could not load the resource file", e); + fail(); + } + } + } diff --git a/src/test/resources/test_void_urispace.ttl b/src/test/resources/test_void_urispace.ttl new file mode 100644 index 00000000..b780177c --- /dev/null +++ b/src/test/resources/test_void_urispace.ttl @@ -0,0 +1,11 @@ +@prefix owl: . +@prefix rdfs: . +@prefix void: . +@prefix dc: . + + + a owl:Ontology ; + dc:title "Test void:uriSpace" ; + dc:description "Test ontology" ; + void:uriSpace "http://example.org/test_void#" ; + rdfs:comment "Void URI Space" . \ No newline at end of file