From b98c10c35bf324229aa6bbde2b4df8ab505f770d Mon Sep 17 00:00:00 2001 From: Xiaochi Zhou Date: Tue, 20 May 2025 19:46:32 +0100 Subject: [PATCH] removed uk.ac.cam.cares.jps.base.query.sparql - removed source code and tests --- .../base/query/sparql/JenaModelWrapper.java | 345 --------------- .../cares/jps/base/query/sparql/Paths.java | 11 - .../jps/base/query/sparql/PrefixToUrlMap.java | 107 ----- .../cares/jps/base/query/sparql/Prefixes.java | 76 ---- .../jps/base/query/sparql/QueryBuilder.java | 73 ---- .../query/sparql/JenaModelWrapperTest.java | 396 ------------------ .../jps/base/query/sparql/PathsTest.java | 35 -- .../base/query/sparql/PrefixToUrlMapTest.java | 71 ---- .../jps/base/query/sparql/PrefixesTest.java | 47 --- .../base/query/sparql/QueryBuilderTest.java | 42 -- 10 files changed, 1203 deletions(-) delete mode 100644 src/main/java/uk/ac/cam/cares/jps/base/query/sparql/JenaModelWrapper.java delete mode 100644 src/main/java/uk/ac/cam/cares/jps/base/query/sparql/Paths.java delete mode 100644 src/main/java/uk/ac/cam/cares/jps/base/query/sparql/PrefixToUrlMap.java delete mode 100644 src/main/java/uk/ac/cam/cares/jps/base/query/sparql/Prefixes.java delete mode 100644 src/main/java/uk/ac/cam/cares/jps/base/query/sparql/QueryBuilder.java delete mode 100644 src/test/java/uk/ac/cam/cares/jps/base/query/sparql/JenaModelWrapperTest.java delete mode 100644 src/test/java/uk/ac/cam/cares/jps/base/query/sparql/PathsTest.java delete mode 100644 src/test/java/uk/ac/cam/cares/jps/base/query/sparql/PrefixToUrlMapTest.java delete mode 100644 src/test/java/uk/ac/cam/cares/jps/base/query/sparql/PrefixesTest.java delete mode 100644 src/test/java/uk/ac/cam/cares/jps/base/query/sparql/QueryBuilderTest.java diff --git a/src/main/java/uk/ac/cam/cares/jps/base/query/sparql/JenaModelWrapper.java b/src/main/java/uk/ac/cam/cares/jps/base/query/sparql/JenaModelWrapper.java deleted file mode 100644 index 56720aa15..000000000 --- a/src/main/java/uk/ac/cam/cares/jps/base/query/sparql/JenaModelWrapper.java +++ /dev/null @@ -1,345 +0,0 @@ -package uk.ac.cam.cares.jps.base.query.sparql; - -import java.util.ArrayList; -import java.util.List; -import java.util.UUID; - -import org.apache.jena.ontology.DatatypeProperty; -import org.apache.jena.ontology.Individual; -import org.apache.jena.ontology.ObjectProperty; -import org.apache.jena.ontology.OntClass; -import org.apache.jena.ontology.OntModel; -import org.apache.jena.ontology.OntResource; -import org.apache.jena.rdf.model.*; - -import uk.ac.cam.cares.jps.base.exception.JPSRuntimeException; - -public class JenaModelWrapper { - - private OntModel model = null; - private String iri = null; - private String startSubject = null; - - public JenaModelWrapper(OntModel model, String iri) { - this.model = model; - this.iri = iri; - } - - public OntModel getModel() { - return model; - } - - public RDFNode getPropertyValue(String startSubject, String... path) { - - this.startSubject = startSubject; - - Individual currentSubject = model.getIndividual(startSubject); - Property currentProp = null; - RDFNode currentObject = null; - - int i = 0; - while (i < path.length - 1) { - - String propAsString = concat(path[i], path[i+1]); - - // check whether the next string is a class or the next property - boolean noClassRestriction = true; - String classAsString = null; - if (i+2 < path.length) { - String prefix = PrefixToUrlMap.getPrefixUrl(path[i+2]); - if (prefix == null) { - // i.e. no prefix for property but a class URL is given - noClassRestriction = false; - classAsString = path[i+2]; - } - } - - currentProp = model.getProperty(propAsString); - - List objects = listProperyValues(currentSubject, currentProp); - if (objects.isEmpty()) { - currentObject = null; - break; - } - - // navigate one property further - if (noClassRestriction) { - currentObject = objects.get(0); - } else { - OntClass c = model.getOntClass(classAsString); - for (RDFNode current : objects) { - if (((OntResource) current).hasRDFType(c)) { - currentObject = current; - break; - } - } - } - - if (i < path.length - 2) { - // continue navigation - currentSubject = ((OntResource) currentObject).asIndividual(); - } - - if (noClassRestriction) { - i += 2; - } else { - i += 3; - } - } - - return currentObject; - } - - public RDFNode getPropertyValueWithoutType(String startSubject, String... path) { - - this.startSubject = startSubject; - - Individual currentSubject = model.getIndividual(startSubject); - Property currentProp = null; - RDFNode currentObject = null; - - for (int i=0; i0) { - path = iri.substring(0, i) + "#"; - } else { - path = iri + "#"; - } - - return path + UUID.randomUUID().toString(); - } -} diff --git a/src/main/java/uk/ac/cam/cares/jps/base/query/sparql/Paths.java b/src/main/java/uk/ac/cam/cares/jps/base/query/sparql/Paths.java deleted file mode 100644 index 099513a0a..000000000 --- a/src/main/java/uk/ac/cam/cares/jps/base/query/sparql/Paths.java +++ /dev/null @@ -1,11 +0,0 @@ -package uk.ac.cam.cares.jps.base.query.sparql; - -public interface Paths extends Prefixes { - - String CLASS = "CLASS"; - - String[] PVALNUMVAL = new String[] {OCPSYST, "hasValue", OCPSYST, "numericalValue"}; - - String[] PGISCOORDX = {OCPSPAC, "hasGISCoordinateSystem", OCPSPAC, "hasProjectedCoordinate_x", OCPSYST, "hasValue", OCPSYST, "numericalValue"}; - String[] PGISCOORDY = {OCPSPAC, "hasGISCoordinateSystem", OCPSPAC, "hasProjectedCoordinate_y", OCPSYST, "hasValue", OCPSYST, "numericalValue"}; -} diff --git a/src/main/java/uk/ac/cam/cares/jps/base/query/sparql/PrefixToUrlMap.java b/src/main/java/uk/ac/cam/cares/jps/base/query/sparql/PrefixToUrlMap.java deleted file mode 100644 index 6b0f420cd..000000000 --- a/src/main/java/uk/ac/cam/cares/jps/base/query/sparql/PrefixToUrlMap.java +++ /dev/null @@ -1,107 +0,0 @@ -package uk.ac.cam.cares.jps.base.query.sparql; - -import java.util.HashMap; -import java.util.Map; - -public class PrefixToUrlMap implements Prefixes { - - private static PrefixToUrlMap instance; - private Map mapPrefixToUrl = new HashMap(); - - private PrefixToUrlMap() { - } - - public static synchronized PrefixToUrlMap getInstance() { - if (instance == null) { - instance = new PrefixToUrlMap(); - instance.init(); - } - return instance; - } - - private synchronized void init() { - - //prefixes for standard ontologies - mapPrefixToUrl.put(DBPEDIA_O, "http://dbpedia.org/ontology/"); - mapPrefixToUrl.put(DBPEDIA_P, "http://dbpedia.org/property/"); - mapPrefixToUrl.put(DBPEDIA_R, "http://dbpedia.org/resource/"); - mapPrefixToUrl.put(DC, "http://purl.org/dc/elements/1.1/"); - mapPrefixToUrl.put(DCAM, "http://purl.org/dc/dcam/"); - mapPrefixToUrl.put(DCTERMS, "http://purl.org/dc/terms/"); - mapPrefixToUrl.put(FOAF, "http://xmlns.com/foaf/0.1/"); - mapPrefixToUrl.put(OWL, "http://www.w3.org/2002/07/owl#"); - mapPrefixToUrl.put(RDF, "http://www.w3.org/1999/02/22-rdf-syntax-ns#"); - mapPrefixToUrl.put(RDFS, "http://www.w3.org/2000/01/rdf-schema#"); - mapPrefixToUrl.put(SKOS, "http://www.w3.org/2004/02/skos/core#"); - mapPrefixToUrl.put(TIME, "https://www.w3.org/2006/time#"); - mapPrefixToUrl.put(WIKIDATA, "http://www.wikidata.org/entity/"); - mapPrefixToUrl.put(WIKIDATAT, "http://www.wikidata.org/prop/direct/"); - mapPrefixToUrl.put(XSD, "http://www.w3.org/2001/XMLSchema#"); - - // prefixes for OntoCape - mapPrefixToUrl.put(OCPBEHA, "http://www.theworldavatar.com/ontology/ontocape/chemical_process_system/CPS_behavior/behavior.owl#"); - mapPrefixToUrl.put(OCPPERF, "http://www.theworldavatar.com/ontology/ontocape/chemical_process_system/CPS_performance/economic_performance.owl#"); - mapPrefixToUrl.put(OCPGEOM, "http://www.theworldavatar.com/ontology/ontocape/supporting_concepts/geometry/geometry.owl#"); - mapPrefixToUrl.put(OCPMATE, "http://www.theworldavatar.com/ontology/ontocape/material/material.owl#"); - mapPrefixToUrl.put(OCPMATH, "http://www.theworldavatar.com/ontology/ontocape/model/mathematical_model.owl#"); - mapPrefixToUrl.put(OCPPHAS, "http://www.theworldavatar.com/ontology/ontocape/material/phase_system/phase_system.owl#"); - mapPrefixToUrl.put(OCPSPAC, "http://www.theworldavatar.com/ontology/ontocape/supporting_concepts/space_and_time/space_and_time_extended.owl#"); - mapPrefixToUrl.put(OCPSYST, "http://www.theworldavatar.com/ontology/ontocape/upper_level/system.owl#"); - mapPrefixToUrl.put(OCPTECH, "http://www.theworldavatar.com/ontology/ontocape/upper_level/technical_system.owl#"); - mapPrefixToUrl.put(OCPTOPO, "http://www.theworldavatar.com/ontology/meta_model/topology/topology.owl#"); - //########the following are added by @wx243 - mapPrefixToUrl.put(OCPDSIU, "http://www.theworldavatar.com/ontology/ontocape/supporting_concepts/SI_unit/derived_SI_units.owl#"); - mapPrefixToUrl.put(OCPST, "http://www.theworldavatar.com/ontology/ontocape/supporting_concepts/space_and_time/space_and_time.owl#"); - mapPrefixToUrl.put(OCPNTSYS, "http://www.theworldavatar.com/ontology/ontocape/upper_level/network_system.owl#"); - mapPrefixToUrl.put(OCPPHYDMS, "http://www.theworldavatar.com/ontology/ontocape/supporting_concepts/physical_dimension/physical_dimension.owl#"); - mapPrefixToUrl.put(OCPCOORSYS, "http://www.theworldavatar.com/ontology/ontocape/upper_level/coordinate_system.owl#"); - mapPrefixToUrl.put(OCPSIU, "http://www.theworldavatar.com/ontology/ontocape/supporting_concepts/SI_unit/SI_unit.owl#"); - mapPrefixToUrl.put(OCPMATHRLT, "http://www.theworldavatar.com/ontology/ontocape/supporting_concepts/mathematical_relation/mathematical_relation.owl#"); - mapPrefixToUrl.put(MATAMDLTOPO, "http://www.theworldavatar.com/ontology/meta_model/topology/topology.owl#"); - - // prefixes for OntoPowerSys - mapPrefixToUrl.put(OPSBEHA, "http://www.theworldavatar.com/ontology/ontopowsys/PowSysBehavior.owl#"); - mapPrefixToUrl.put(OPSMODE, "http://www.theworldavatar.com/ontology/ontopowsys/model/PowerSystemModel.owl#"); - mapPrefixToUrl.put(OPSREAL, "http://www.theworldavatar.com/ontology/ontopowsys/PowSysRealization.owl#"); - //########the following are added by @wx243 - mapPrefixToUrl.put(OPSFUNC, "http://www.theworldavatar.com/ontology/ontopowsys/PowSysFunction.owl#"); - mapPrefixToUrl.put(OPSPERFM, "http://www.theworldavatar.com/ontology/ontopowsys/PowSysPerformance.owl#"); - - // prefixes for other JPS ontologies - mapPrefixToUrl.put(JPSAGEN, "http://www.theworldavatar.com/ontology/ontoagent/MSM.owl#"); - mapPrefixToUrl.put(JPSLAND, "http://www.theworldavatar.com/ontology/ontoland/OntoLand.owl#"); - mapPrefixToUrl.put(ONTOCITYGML, "http://www.theworldavatar.com/ontology/ontocitygml/citieskg/OntoCityGML.owl#"); - mapPrefixToUrl.put(ONTOSPECIES, "http://www.theworldavatar.com/ontology/ontospecies/OntoSpecies.owl#"); - - // special prefixes - // Blazegraph Geo Service - mapPrefixToUrl.put(BLAZEGRAPH_GEO, "http://www.bigdata.com/rdf/geospatial#"); - - // prefixes for OntoEIP - mapPrefixToUrl.put(OEIPSYSREAL, "http://www.theworldavatar.com/ontology/ontoeip/system_aspects/system_realization.owl#"); - mapPrefixToUrl.put(OEIPSYSFUNC, "http://www.theworldavatar.com/ontology/ontoeip/system_aspects/system_function.owl#"); - mapPrefixToUrl.put(OEIPPOWPLANT, "http://www.theworldavatar.com/ontology/ontoeip/powerplants/PowerPlant.owl#"); - mapPrefixToUrl.put(OEIPUPSV1, "http://www.theworldavatar.com/ontology/ontoeip/upper_level/system_v1.owl#"); - mapPrefixToUrl.put(OEISYSPERFM, "http://www.theworldavatar.com/ontology/ontoeip/system_aspects/system_performance.owl#"); - mapPrefixToUrl.put(OEISYSRQRM, "http://www.theworldavatar.com/ontology/ontoeip/system_aspects/system_requirement.owl#"); - - - - } - - public static String getPrefixUrl(String prefix) { - return getInstance().mapPrefixToUrl.get(prefix); - } - - public static String getPrefixForSPARQL(String prefix) { - return "PREFIX " + prefix + ":<" + PrefixToUrlMap.getPrefixUrl(prefix) + ">\r\n"; - } - - public static String getPrefixesForSPARQL(String... prefixes) { - StringBuffer b = new StringBuffer(); - for (String prefix : prefixes) { - b.append(getPrefixForSPARQL(prefix)); - } - return b.toString(); - } -} \ No newline at end of file diff --git a/src/main/java/uk/ac/cam/cares/jps/base/query/sparql/Prefixes.java b/src/main/java/uk/ac/cam/cares/jps/base/query/sparql/Prefixes.java deleted file mode 100644 index b2c1eaaa8..000000000 --- a/src/main/java/uk/ac/cam/cares/jps/base/query/sparql/Prefixes.java +++ /dev/null @@ -1,76 +0,0 @@ -package uk.ac.cam.cares.jps.base.query.sparql; - -/** - * This interface defines common prefixes for standard ontologies and JPS specific prefixes. - * The JPS specific prefixes start with 3 letters that describe the "category" and - * that are followed by 4 letters that usually coincide with the first four letters of the OWL file itself, e.g. - * OCPMATH defines the prefix for http://www.theworldavatar.com/ontology/ontocape/model/mathematical_model.owl#" - * where OPC stands for OntoCAPE and MATH for mathematical_model.owl. - */ -public interface Prefixes { - - // standard ontologies - String DBPEDIA_O = "dbpediao"; - String DBPEDIA_P = "dbpediap"; - String DBPEDIA_R = "dbpediar"; - String DC = "dc"; - String DCAM = "dcam"; - String DCTERMS = "dcterms"; - String FOAF = "foaf"; - String OWL = "owl"; - String RDF = "rdf"; - String RDFS = "rdfs"; - String SKOS = "skos"; - String WIKIDATA = "wd"; - String WIKIDATAT = "wdt"; - String XSD = "xsd"; - String TIME = "time"; - - // OntoCape OCP - String OCPBEHA = "OCPBEHA"; - String OCPGEOM = "OCPGEOM"; - String OCPMATE = "OCPMATE"; - String OCPMATH = "OCPMATH"; - String OCPPERF = "OCPPERF"; - String OCPPHAS = "OCPPHAS"; - String OCPSPAC = "OCPSPAC"; - String OCPSYST = "OCPSYST"; - String OCPTECH = "OCPTECH"; - String OCPTOPO = "OCPTOPO"; - //****(the following are added by @wx243)**** - String OCPDSIU = "OCPDSIU"; - String OCPST = "OCPST"; - String OCPNTSYS = "OCPNS"; - String OCPPHYDMS = "OCPPHYDMS"; - String OCPCOORSYS = "OCPCOORSYS"; - String OCPSIU = "OCPSIU"; - String OCPMATHRLT = "OCPMATHRLT"; - String MATAMDLTOPO = "MATAMDLTOPO"; - - // OntoPowerSys OPS - String OPSBEHA = "OPSBEHA"; - String OPSMODE = "OPSMODE"; - String OPSREAL = "OPSREAL"; - //****OntoEIP OEIP (the following are added by @wx243)**** - String OPSFUNC = "OPSFUNC"; - String OPSPERFM = "OPSPERFM"; - - // other JPS ontologies - String JPSAGEN = "JPSAGEN"; - String JPSLAND = "JPSLAND"; - String ONTOCITYGML = "OCGML"; - String ONTOSPECIES = "OSPECIES"; - - // special prefixes - String BLAZEGRAPH_GEO = "BLAZEGEO"; - - //****OntoEIP OEIP (the following are added by @wx243)**** - String OEIPSYSREAL = "OEIPSYSREAL"; - String OEIPSYSFUNC = "OEIPSYSFUNC"; - String OEIPPOWPLANT = "OEIPPOWPLANT"; - String OEIPUPSV1 = "OEIPUPSV1"; - String OEISYSPERFM = "OEISYSPERFM"; - String OEISYSRQRM = "OEISYSRQRM"; - - -} diff --git a/src/main/java/uk/ac/cam/cares/jps/base/query/sparql/QueryBuilder.java b/src/main/java/uk/ac/cam/cares/jps/base/query/sparql/QueryBuilder.java deleted file mode 100644 index e3d8b47d9..000000000 --- a/src/main/java/uk/ac/cam/cares/jps/base/query/sparql/QueryBuilder.java +++ /dev/null @@ -1,73 +0,0 @@ -package uk.ac.cam.cares.jps.base.query.sparql; - -import java.util.ArrayList; -import java.util.List; - -public class QueryBuilder { - - private final static String BREAK = "\r\n"; - private final static String POINT = " .\r\n"; - - StringBuffer select = null; - List prefixes = new ArrayList(); - List wherestatements = new ArrayList(); - - public StringBuffer select(String... varNames) { - select = new StringBuffer("SELECT "); - for(String current : varNames) { - select.append(current).append(" "); - } - return select; - } - - public StringBuffer a(String fromVar, String prefix, String classname) { - addPrefix(prefix); - StringBuffer b = new StringBuffer(fromVar).append(" a ").append(prefix).append(":").append(classname); - wherestatements.add(b); - return b; - } - - public StringBuffer prop(String fromVar, String toVar, String... path) { - - StringBuffer b = new StringBuffer(fromVar).append(" "); - - for (int i=0; i0) { - b.append("/"); - } - String prefix = path[i]; - addPrefix(prefix); - String property = path[i+1]; - b.append(prefix).append(":").append(property); - } - b.append(" ").append(toVar); - - wherestatements.add(b); - return b; - } - - private void addPrefix(String prefix) { - if (!prefixes.contains(prefix)) { - prefixes.add(prefix); - } - } - - public StringBuffer build() { - StringBuffer b = new StringBuffer(); - for (String current : prefixes) { - String url = PrefixToUrlMap.getPrefixUrl(current); - b.append("PREFIX ").append(current).append(":<").append(url).append("> ").append(BREAK); - } - - b.append(select).append(BREAK); - b.append("WHERE {").append(BREAK); - - for (StringBuffer current : wherestatements) { - b.append(current).append(POINT); - } - - b.append("}"); - - return b; - } -} diff --git a/src/test/java/uk/ac/cam/cares/jps/base/query/sparql/JenaModelWrapperTest.java b/src/test/java/uk/ac/cam/cares/jps/base/query/sparql/JenaModelWrapperTest.java deleted file mode 100644 index 92f2a9fb5..000000000 --- a/src/test/java/uk/ac/cam/cares/jps/base/query/sparql/JenaModelWrapperTest.java +++ /dev/null @@ -1,396 +0,0 @@ -package uk.ac.cam.cares.jps.base.query.sparql; - - - -import java.lang.reflect.Field; -import java.lang.reflect.InvocationTargetException; -import java.lang.reflect.Method; -import java.util.ArrayList; -import java.util.List; -import java.util.UUID; - -import org.apache.jena.ontology.DatatypeProperty; -import org.apache.jena.ontology.Individual; -import org.apache.jena.ontology.ObjectProperty; -import org.apache.jena.ontology.OntClass; -import org.apache.jena.ontology.OntModel; -import org.apache.jena.rdf.model.ModelFactory; -import org.apache.jena.rdf.model.Property; -import org.apache.jena.rdf.model.RDFNode; -import org.junit.Assert; -import org.junit.Test; - - - -public class JenaModelWrapperTest { - private OntModel ontModel=ModelFactory.createOntologyModel(); - private String iri="testIri"; - private String startSubject="testStartSubject"; - - @Test - public void testConstructor(){ - JenaModelWrapper jmw= new JenaModelWrapper(ontModel,iri); - OntModel actual_om=jmw.getModel(); - String actual_iri=this.iri; - Assert.assertEquals(ontModel,actual_om); - Assert.assertEquals(iri,actual_iri); - } - @Test - public void testConcat(){ - String expected="http://www.w3.org/2002/07/owl#"+"testName"; - String actual=JenaModelWrapper.concat(Prefixes.OWL,"testName"); - Assert.assertEquals(expected,actual); - } - @Test//This unit test is for the public static newIri() method in the JenaModelWrapper class - public void testNewIri1() { - String str="test"; - String iri=JenaModelWrapper.newIri(str); - String[] arr=iri.split("#"); - Assert.assertEquals(str,arr[0]); - try{ - UUID uuid = UUID.fromString(arr[1]); - } catch (IllegalArgumentException exception){ - //handle the case where string is not valid UUID - System.out.println("The UUID provided is invalid"); - } - } - @Test//This unit test is for the private newIri() method in the JenaModelWrapper class - public void testNewIri2() throws NoSuchMethodException, InvocationTargetException, IllegalAccessException, NoSuchFieldException { - //distinguish between two cases one where this.iri is not null and when it is not. - - //not null case - JenaModelWrapper jmw= new JenaModelWrapper(ontModel,iri); - Assert.assertNotNull(jmw.getClass().getDeclaredMethod("newIri")); - Method newIri=jmw.getClass().getDeclaredMethod("newIri"); - newIri.setAccessible(true); - String actual_iri=(String) newIri.invoke(jmw); - - //Check if the returned object consists of the iri and a valid UUID separated by a hash mark. - String[] arr=actual_iri.split("#"); - Assert.assertEquals(this.iri,arr[0]); - try{ - UUID uuid = UUID.fromString(arr[1]); - } catch (IllegalArgumentException exception){ - //handle the case where string is not valid UUID - System.out.println("The UUID provided is invalid"); - } - - //null case - //Use reflection to set iri field to null - Class obj=jmw.getClass(); - Field field = obj.getDeclaredField("iri"); - field.setAccessible(true); - field.set(jmw, null); - - Field field1 = obj.getDeclaredField("startSubject"); - field1.setAccessible(true); - field1.set(jmw, startSubject); - - String iri_1=(String) newIri.invoke(jmw); - - //Check if the returned object consists of the iri and a valid UUID separated by a hash mark. - String[] arr_1=iri_1.split("#"); - Assert.assertEquals(startSubject,arr_1[0]); - try{ - UUID uuid = UUID.fromString(arr_1[1]); - } catch (IllegalArgumentException exception){ - //handle the case where string is not valid UUID - System.out.println("The UUID provided is invalid"); - } - } - @Test - public void testCreateIndividual(){ - JenaModelWrapper jmw= new JenaModelWrapper(ontModel,iri); - OntModel m= jmw.getModel(); - OntClass c=m.createClass("http://dbpedia.org/ontology/testClass"); - Individual expected= c.createIndividual("http://dbpedia.org/ontology/ind1"); - Individual actual=jmw.createIndividual(Prefixes.DBPEDIA_O,"testClass"); - Assert.assertEquals(expected.getOntClass(),actual.getOntClass()); - } - @Test - public void testListPropertyValues() throws NoSuchMethodException, InvocationTargetException, IllegalAccessException { - JenaModelWrapper jmw= new JenaModelWrapper(ontModel,iri); - Assert.assertNotNull(jmw.getClass().getDeclaredMethod("listProperyValues", Individual.class, Property.class)); - Method lpv=jmw.getClass().getDeclaredMethod("listProperyValues", Individual.class, Property.class); - lpv.setAccessible(true); - - //Manually, create a list of RDFNodes based on one property p1. - String ns="http://example.org/"; - OntModel m= jmw.getModel(); - OntClass c=m.createClass(ns+"test"); - Property p1= m.createProperty(ns+"prop1"); - Individual ind=c.createIndividual(ns+"ind1"); - ind.addProperty(p1,"val"); - - List expected= new ArrayList<>(); - expected.add(ind.getPropertyValue(p1)); - - List actual= ((List) lpv.invoke(jmw,ind,p1)); - Assert.assertEquals(expected,actual); - - } - @Test - public void testCreateObject() throws NoSuchMethodException, InvocationTargetException, IllegalAccessException { - //Four cases need to be distinguished. - //In all four cases, whenever createObject() is invoked, the first argument passed is null since the first argument is never used - //in the createObject() method. Maybe the method can be rewritten? - - JenaModelWrapper jmw= new JenaModelWrapper(ontModel,iri); - Assert.assertNotNull(jmw.getClass().getDeclaredMethod("createObject", Individual.class, Property.class, int.class, String[].class)); - Method co=jmw.getClass().getDeclaredMethod("createObject", Individual.class, Property.class, int.class, String[].class); - co.setAccessible(true); - - - String ns="http://dbpedia.org/ontology/"; - - //null case - String[] path = {"OCPSPAC", "hasGISCoordinateSystem", "OCPSPAC", "hasProjectedCoordinate_x", "OCPSYST", "hasValue", "OCPSYST", "numericalValue"}; - OntModel m= jmw.getModel(); - ObjectProperty p1= m.createObjectProperty(ns+"prop1"); - - - int position=7; - RDFNode actual= ((RDFNode) co.invoke(jmw,null,p1,position,path)); - Assert.assertNull(actual); - - //first test to see if class is part of path - String []path1 = {"OCPSPAC", "hasGISCoordinateSystem", "hasProjectedCoordinate_x", "CLASS", Prefixes.DBPEDIA_O, "test/", "OCPSYST", "hasValue","OCPSYST","numericalValue"}; - int position1=1; - - String iri_val="http://dbpedia.org/ontology/"; - OntClass cc=m.createClass(iri_val+"test/"); - - RDFNode actual_1=(RDFNode) co.invoke(jmw,null,p1,position1,path1); - - //Check if the returned object consists of the iri and a valid UUID separated by a hash mark. - String str=actual_1.toString(); - String[] arr=str.split("#"); - Assert.assertEquals(arr[0],this.iri); - try{ - UUID uuid = UUID.fromString(arr[1]); - } catch (IllegalArgumentException exception){ - //handle the case where string is not valid UUID - System.out.println("The UUID provided is invalid"); - } - - //test to see if the class is given by the domain of the successive property - OntClass ccc= - m.createClass("http://www.theworldavatar.com/ontology/ontocape/supporting_concepts/space_and_time/space_and_time_extended.owl#"+ - "Coordinates"); - ObjectProperty hasProjectedCoordinate_x= - m.createObjectProperty("http://www.theworldavatar.com/ontology/ontocape/supporting_concepts/space_and_time/space_and_time_extended.owl#" + - "hasProjectedCoordinate_x"); - hasProjectedCoordinate_x.addDomain(ccc); - int position2=0; - RDFNode actual_2=(RDFNode) co.invoke(jmw,null,p1,position2,path); - - //Check if the returned object consists of the iri and a valid UUID separated by a hash mark. - String str_2=actual_2.toString(); - String[] arr_1=str_2.split("#"); - Assert.assertEquals(arr_1[0],this.iri); - try{ - UUID uuid_1 = UUID.fromString(arr_1[1]); - } catch (IllegalArgumentException exception){ - //handle the case where string is not valid UUID - System.out.println("The UUID provided is invalid"); - } - - // test to see if the class is given by the range of the current property - OntClass cccc= - m.createClass("http://www.theworldavatar.com/ontology/ontocape/upper_level/system.owl#"+ - "NUM_VAL"); - ObjectProperty numericalValue= - m.createObjectProperty("http://www.theworldavatar.com/ontology/ontocape/upper_level/system.owl#" + - "numericalValue"); - numericalValue.addRange(cccc); - RDFNode actual_3=(RDFNode) co.invoke(jmw,null,numericalValue,position,path); - - //Check if the returned object consists of the iri and a valid UUID separated by a hash mark. - String str_3=actual_3.toString(); - String[] arr_2=str_3.split("#"); - Assert.assertEquals(arr_2[0],this.iri); - try{ - UUID uuid_2 = UUID.fromString(arr_2[1]); - } catch (IllegalArgumentException exception){ - //handle the case where string is not valid UUID - System.out.println("The UUID provided is invalid"); - } - } - - @Test - public void testGetPropertyValue() { - //path taken from Paths.java interface - String[] path = {Prefixes.OCPSPAC, "hasGISCoordinateSystem", Prefixes.OCPSPAC, "hasProjectedCoordinate_x", Prefixes.OCPSYST, "hasValue", - Prefixes.OCPSYST, "numericalValue"}; - JenaModelWrapper jmw = new JenaModelWrapper(ontModel, iri); - OntModel m = jmw.getModel(); - OntClass c = m.createClass("http://dbpedia.org/ontology/testClass"); - String startSubject = "http://dbpedia.org/ontology/ind1"; - String sub1 = "http://dbpedia.org/ontology/ind2"; - String sub2 = "http://dbpedia.org/ontology/ind3"; - String sub3 = "http://dbpedia.org/ontology/ind4"; - Individual ind = c.createIndividual(startSubject); - Individual ind2 = c.createIndividual(sub1); - Individual ind3 = c.createIndividual(sub2); - Individual ind4 = c.createIndividual(sub3); - - Property hasGISCoordinateSystem = m.createProperty("http://www.theworldavatar.com/ontology/ontocape/supporting_concepts/space_and_time/space_and_time_extended.owl#" + - "hasGISCoordinateSystem"); - Property hasProjectedCoordinate_x = m.createProperty("http://www.theworldavatar.com/ontology/ontocape/supporting_concepts/space_and_time/space_and_time_extended.owl#" + - "hasProjectedCoordinate_x"); - Property hasValue = m.createProperty("http://www.theworldavatar.com/ontology/ontocape/upper_level/system.owl#" + - "hasValue"); - Property numericalValue = m.createProperty("http://www.theworldavatar.com/ontology/ontocape/upper_level/system.owl#" + - "numericalValue"); - - ind.addProperty(hasGISCoordinateSystem, ind2); - ind2.addProperty(hasProjectedCoordinate_x, ind3); - ind3.addProperty(hasValue, ind4); - ind4.addProperty(numericalValue, "42.5"); - - RDFNode obj = jmw.getPropertyValue(startSubject, path); - Double actual = obj.asLiteral().getDouble(); - Double expected = 42.5; - - Assert.assertEquals(expected, actual, 1e-15); - - } - - @Test - public void testGetPropertyValuesWithoutTypes(){ - //path taken from Paths.java interface - String[] path = {Prefixes.OCPSPAC, "hasGISCoordinateSystem", Prefixes.OCPSPAC, "hasProjectedCoordinate_x", Prefixes.OCPSYST, "hasValue", - Prefixes.OCPSYST, "numericalValue"}; - JenaModelWrapper jmw = new JenaModelWrapper(ontModel, iri); - OntModel m = jmw.getModel(); - OntClass c = m.createClass("http://dbpedia.org/ontology/testClass"); - String startSubject = "http://dbpedia.org/ontology/ind1"; - String sub1 = "http://dbpedia.org/ontology/ind2"; - String sub2 = "http://dbpedia.org/ontology/ind3"; - String sub3 = "http://dbpedia.org/ontology/ind4"; - Individual ind = c.createIndividual(startSubject); - Individual ind2 = c.createIndividual(sub1); - Individual ind3 = c.createIndividual(sub2); - Individual ind4 = c.createIndividual(sub3); - - Property hasGISCoordinateSystem = m.createProperty("http://www.theworldavatar.com/ontology/ontocape/supporting_concepts/space_and_time/space_and_time_extended.owl#" + - "hasGISCoordinateSystem"); - Property hasProjectedCoordinate_x = m.createProperty("http://www.theworldavatar.com/ontology/ontocape/supporting_concepts/space_and_time/space_and_time_extended.owl#" + - "hasProjectedCoordinate_x"); - Property hasValue = m.createProperty("http://www.theworldavatar.com/ontology/ontocape/upper_level/system.owl#" + - "hasValue"); - Property numericalValue = m.createProperty("http://www.theworldavatar.com/ontology/ontocape/upper_level/system.owl#" + - "numericalValue"); - - ind.addProperty(hasGISCoordinateSystem, ind2); - ind2.addProperty(hasProjectedCoordinate_x, ind3); - ind3.addProperty(hasValue, ind4); - ind4.addProperty(numericalValue, "42.5"); - - RDFNode obj = jmw.getPropertyValue(startSubject, path); - Double actual = obj.asLiteral().getDouble(); - Double expected = 42.5; - - Assert.assertEquals(expected, actual, 1e-15); - } - - @Test - public void testSetPropertyValues(){ - //path taken from Paths.java interface - String[] path = {Prefixes.OCPSPAC, "hasGISCoordinateSystem", Prefixes.OCPSPAC, "hasProjectedCoordinate_x", Prefixes.OCPSYST, "hasValue", - Prefixes.OCPSYST, "numericalValue"}; - JenaModelWrapper jmw = new JenaModelWrapper(ontModel, iri); - OntModel m = jmw.getModel(); - OntClass c = m.createClass("http://dbpedia.org/ontology/testClass"); - - String startSubject = "http://dbpedia.org/ontology/ind1"; - String sub1 = "http://dbpedia.org/ontology/ind2"; - String sub2 = "http://dbpedia.org/ontology/ind3"; - String sub3 = "http://dbpedia.org/ontology/ind4"; - String dummy= "http://testdummy.com"; - - Individual ind = c.createIndividual(startSubject); - Individual ind2 = c.createIndividual(sub1); - Individual ind3 = c.createIndividual(sub2); - Individual ind4 = c.createIndividual(sub3); - Individual ind5= c.createIndividual(dummy); - - ObjectProperty hasGISCoordinateSystem = m.createObjectProperty("http://www.theworldavatar.com/ontology/ontocape/supporting_concepts/space_and_time/space_and_time_extended.owl#" + - "hasGISCoordinateSystem"); - ObjectProperty hasProjectedCoordinate_x = m.createObjectProperty("http://www.theworldavatar.com/ontology/ontocape/supporting_concepts/space_and_time/space_and_time_extended.owl#" + - "hasProjectedCoordinate_x"); - ObjectProperty hasValue = m.createObjectProperty("http://www.theworldavatar.com/ontology/ontocape/upper_level/system.owl#" + - "hasValue"); - DatatypeProperty numericalValue = m.createDatatypeProperty("http://www.theworldavatar.com/ontology/ontocape/upper_level/system.owl#" + - "numericalValue"); - - ind.addProperty(hasGISCoordinateSystem, ind2); - ind2.addProperty(hasProjectedCoordinate_x, ind3); - ind3.addProperty(hasValue, ind4); - ind4.addProperty(numericalValue, "42.5"); - - //testing for a literal by passing a double value as the destObj argument - double expected=52.65; - RDFNode obj = jmw.setPropertyValue(startSubject, expected,path); - double actual=obj.asLiteral().getDouble(); - - Assert.assertEquals(expected,actual,1e-15); - - //testing for resource by passing an individual object as the destObj argument - String []path1={Prefixes.OCPSPAC, "hasGISCoordinateSystem"}; - RDFNode obj_uri = jmw.setPropertyValue(startSubject,ind5,path1); - String actual_uri=obj_uri.asResource().getURI(); - String expected_uri=ind5.getURI(); - Assert.assertEquals(expected_uri,actual_uri); - } - - @Test - public void testSetPropertyValuesWithoutTypes(){ - //path taken from Paths.java interface - String[] path = {Prefixes.OCPSPAC, "hasGISCoordinateSystem", Prefixes.OCPSPAC, "hasProjectedCoordinate_x", Prefixes.OCPSYST, "hasValue", - Prefixes.OCPSYST, "numericalValue"}; - JenaModelWrapper jmw = new JenaModelWrapper(ontModel, iri); - OntModel m = jmw.getModel(); - OntClass c = m.createClass("http://dbpedia.org/ontology/testClass"); - - String startSubject = "http://dbpedia.org/ontology/ind1"; - String sub1 = "http://dbpedia.org/ontology/ind2"; - String sub2 = "http://dbpedia.org/ontology/ind3"; - String sub3 = "http://dbpedia.org/ontology/ind4"; - String dummy= "http://testdummy.com"; - - Individual ind = c.createIndividual(startSubject); - Individual ind2 = c.createIndividual(sub1); - Individual ind3 = c.createIndividual(sub2); - Individual ind4 = c.createIndividual(sub3); - Individual ind5= c.createIndividual(dummy); - - ObjectProperty hasGISCoordinateSystem = m.createObjectProperty("http://www.theworldavatar.com/ontology/ontocape/supporting_concepts/space_and_time/space_and_time_extended.owl#" + - "hasGISCoordinateSystem"); - ObjectProperty hasProjectedCoordinate_x = m.createObjectProperty("http://www.theworldavatar.com/ontology/ontocape/supporting_concepts/space_and_time/space_and_time_extended.owl#" + - "hasProjectedCoordinate_x"); - ObjectProperty hasValue = m.createObjectProperty("http://www.theworldavatar.com/ontology/ontocape/upper_level/system.owl#" + - "hasValue"); - DatatypeProperty numericalValue = m.createDatatypeProperty("http://www.theworldavatar.com/ontology/ontocape/upper_level/system.owl#" + - "numericalValue"); - - ind.addProperty(hasGISCoordinateSystem, ind2); - ind2.addProperty(hasProjectedCoordinate_x, ind3); - ind3.addProperty(hasValue, ind4); - ind4.addProperty(numericalValue, "42.5"); - - //testing for a literal by passing a double value as the destObj argument - double expected=52.65; - RDFNode obj = jmw.setPropertyValueWithoutTypes(startSubject, expected,path); - double actual=obj.asLiteral().getDouble(); - - Assert.assertEquals(expected,actual,1e-15); - - //testing for resource by passing an individual object as the destObj argument - String []path1={Prefixes.OCPSPAC, "hasGISCoordinateSystem"}; - RDFNode obj_uri = jmw.setPropertyValueWithoutTypes(startSubject,ind5,path1); - String actual_uri=obj_uri.asResource().getURI(); - String expected_uri=ind5.getURI(); - Assert.assertEquals(expected_uri,actual_uri); - } -} diff --git a/src/test/java/uk/ac/cam/cares/jps/base/query/sparql/PathsTest.java b/src/test/java/uk/ac/cam/cares/jps/base/query/sparql/PathsTest.java deleted file mode 100644 index b169cbfd2..000000000 --- a/src/test/java/uk/ac/cam/cares/jps/base/query/sparql/PathsTest.java +++ /dev/null @@ -1,35 +0,0 @@ -package uk.ac.cam.cares.jps.base.query.sparql; - -import static org.junit.jupiter.api.Assertions.assertEquals; - -import org.junit.Test; - -public class PathsTest { - - @Test - //A simple test, since Paths.java only defines several strings. Only possible confusion are OCPSYST and OCPSPAC, but those are still just strings (see Prefixes.java) - //Hence the only thing to test is if those strings actually are the input strings - public void TestPaths() { - assertEquals("CLASS", Paths.CLASS); - assertEquals("OCPSYST",Paths.PVALNUMVAL[0]); - assertEquals("hasValue",Paths.PVALNUMVAL[1]); - assertEquals("OCPSYST",Paths.PVALNUMVAL[2]); - assertEquals("numericalValue",Paths.PVALNUMVAL[3]); - assertEquals("OCPSPAC", Paths.PGISCOORDX[0]); - assertEquals("hasGISCoordinateSystem", Paths.PGISCOORDX[1]); - assertEquals("OCPSPAC", Paths.PGISCOORDX[2]); - assertEquals("hasProjectedCoordinate_x", Paths.PGISCOORDX[3]); - assertEquals("OCPSYST", Paths.PGISCOORDX[4]); - assertEquals("hasValue", Paths.PGISCOORDX[5]); - assertEquals("OCPSYST", Paths.PGISCOORDX[6]); - assertEquals("numericalValue", Paths.PGISCOORDX[7]); - assertEquals("OCPSPAC", Paths.PGISCOORDY[0]); - assertEquals("hasGISCoordinateSystem", Paths.PGISCOORDY[1]); - assertEquals("OCPSPAC", Paths.PGISCOORDY[2]); - assertEquals("hasProjectedCoordinate_y", Paths.PGISCOORDY[3]); - assertEquals("OCPSYST", Paths.PGISCOORDY[4]); - assertEquals("hasValue", Paths.PGISCOORDY[5]); - assertEquals("OCPSYST", Paths.PGISCOORDY[6]); - assertEquals("numericalValue", Paths.PGISCOORDY[7]); - } -} \ No newline at end of file diff --git a/src/test/java/uk/ac/cam/cares/jps/base/query/sparql/PrefixToUrlMapTest.java b/src/test/java/uk/ac/cam/cares/jps/base/query/sparql/PrefixToUrlMapTest.java deleted file mode 100644 index 767602187..000000000 --- a/src/test/java/uk/ac/cam/cares/jps/base/query/sparql/PrefixToUrlMapTest.java +++ /dev/null @@ -1,71 +0,0 @@ -package uk.ac.cam.cares.jps.base.query.sparql; - - -import org.junit.Assert; -import org.junit.Test; - -public class PrefixToUrlMapTest { - //Test getPrefixUrl() - @Test - public void testgetPrefixUrl() - { - //prefixes for standard ontologies - Assert.assertEquals("http://dbpedia.org/ontology/",PrefixToUrlMap.getPrefixUrl("dbpediao")); - Assert.assertEquals("http://dbpedia.org/property/",PrefixToUrlMap.getPrefixUrl("dbpediap")); - Assert.assertEquals("http://dbpedia.org/resource/",PrefixToUrlMap.getPrefixUrl("dbpediar")); - Assert.assertEquals("http://purl.org/dc/elements/1.1/",PrefixToUrlMap.getPrefixUrl("dc")); - Assert.assertEquals("http://purl.org/dc/dcam/",PrefixToUrlMap.getPrefixUrl("dcam")); - Assert.assertEquals("http://purl.org/dc/terms/",PrefixToUrlMap.getPrefixUrl("dcterms")); - Assert.assertEquals("http://xmlns.com/foaf/0.1/",PrefixToUrlMap.getPrefixUrl("foaf")); - Assert.assertEquals("http://www.w3.org/2002/07/owl#",PrefixToUrlMap.getPrefixUrl("owl")); - Assert.assertEquals("http://www.w3.org/1999/02/22-rdf-syntax-ns#",PrefixToUrlMap.getPrefixUrl("rdf")); - Assert.assertEquals("http://www.w3.org/2000/01/rdf-schema#",PrefixToUrlMap.getPrefixUrl("rdfs")); - Assert.assertEquals("http://www.w3.org/2004/02/skos/core#",PrefixToUrlMap.getPrefixUrl("skos")); - Assert.assertEquals("https://www.w3.org/2006/time#",PrefixToUrlMap.getPrefixUrl("time")); - Assert.assertEquals("http://www.w3.org/2001/XMLSchema#",PrefixToUrlMap.getPrefixUrl("xsd")); - - // prefixes for OntoCape - Assert.assertEquals("http://www.theworldavatar.com/ontology/ontocape/chemical_process_system/CPS_behavior/behavior.owl#",PrefixToUrlMap.getPrefixUrl("OCPBEHA")); - Assert.assertEquals("http://www.theworldavatar.com/ontology/ontocape/supporting_concepts/geometry/geometry.owl#",PrefixToUrlMap.getPrefixUrl("OCPGEOM")); - Assert.assertEquals("http://www.theworldavatar.com/ontology/ontocape/material/material.owl#",PrefixToUrlMap.getPrefixUrl("OCPMATE")); - Assert.assertEquals("http://www.theworldavatar.com/ontology/ontocape/model/mathematical_model.owl#",PrefixToUrlMap.getPrefixUrl("OCPMATH")); - Assert.assertEquals("http://www.theworldavatar.com/ontology/ontocape/material/phase_system/phase_system.owl#",PrefixToUrlMap.getPrefixUrl("OCPPHAS")); - Assert.assertEquals("http://www.theworldavatar.com/ontology/ontocape/supporting_concepts/space_and_time/space_and_time_extended.owl#",PrefixToUrlMap.getPrefixUrl("OCPSPAC")); - Assert.assertEquals("http://www.theworldavatar.com/ontology/ontocape/upper_level/system.owl#",PrefixToUrlMap.getPrefixUrl("OCPSYST")); - Assert.assertEquals("http://www.theworldavatar.com/ontology/ontocape/upper_level/technical_system.owl#",PrefixToUrlMap.getPrefixUrl("OCPTECH")); - Assert.assertEquals("http://www.theworldavatar.com/ontology/meta_model/topology/topology.owl#",PrefixToUrlMap.getPrefixUrl("OCPTOPO")); - - // prefixes for OntoPowerSys - Assert.assertEquals("http://www.theworldavatar.com/ontology/ontopowsys/PowSysBehavior.owl#",PrefixToUrlMap.getPrefixUrl("OPSBEHA")); - Assert.assertEquals("http://www.theworldavatar.com/ontology/ontopowsys/model/PowerSystemModel.owl#",PrefixToUrlMap.getPrefixUrl("OPSMODE")); - Assert.assertEquals("http://www.theworldavatar.com/ontology/ontopowsys/PowSysRealization.owl#",PrefixToUrlMap.getPrefixUrl("OPSREAL")); - - // prefixes for other JPS ontologies - Assert.assertEquals("http://www.theworldavatar.com/ontology/ontoagent/MSM.owl#",PrefixToUrlMap.getPrefixUrl("JPSAGEN")); - Assert.assertEquals("http://www.theworldavatar.com/ontology/ontoland/OntoLand.owl#",PrefixToUrlMap.getPrefixUrl("JPSLAND")); - - } - - //Test getPrefixForSPARQL() - @Test - public void testgetPrefixforSPARQL() - { - //prefixes for standard ontologies - //Test whether the string contains the appropriate characters such as PREFIX, : , < , > - Assert.assertTrue(PrefixToUrlMap.getPrefixForSPARQL("dbpediao").contains("PREFIX")); - Assert.assertTrue(PrefixToUrlMap.getPrefixForSPARQL("dbpediao").contains(":<")); - Assert.assertTrue(PrefixToUrlMap.getPrefixForSPARQL("dbpediao").contains(">")); - //Test whether getPrefixForSPARQL method is able to build the string correctly - Assert.assertEquals("PREFIX dbpediao:\r\n",PrefixToUrlMap.getPrefixForSPARQL("dbpediao")); - - } - - @Test - public void testGetPrefixesForSPARQL() { - String actual = PrefixToUrlMap.getPrefixesForSPARQL(Prefixes.DC, Prefixes.WIKIDATAT, Prefixes.WIKIDATA); - String expected = "PREFIX dc:\r\n" - + "PREFIX wdt:\r\n" - + "PREFIX wd:\r\n"; - Assert.assertEquals(expected, actual); - } -} \ No newline at end of file diff --git a/src/test/java/uk/ac/cam/cares/jps/base/query/sparql/PrefixesTest.java b/src/test/java/uk/ac/cam/cares/jps/base/query/sparql/PrefixesTest.java deleted file mode 100644 index a79d71a7b..000000000 --- a/src/test/java/uk/ac/cam/cares/jps/base/query/sparql/PrefixesTest.java +++ /dev/null @@ -1,47 +0,0 @@ -package uk.ac.cam.cares.jps.base.query.sparql; - - -import junit.framework.TestCase; - -public class PrefixesTest extends TestCase { - - public void testPrefixes() { - - - // Test standard ontologies - assertEquals(Prefixes.DBPEDIA_O,"dbpediao"); - assertEquals(Prefixes.DBPEDIA_P,"dbpediap"); - assertEquals(Prefixes.DBPEDIA_R,"dbpediar"); - assertEquals(Prefixes.DC,"dc"); - assertEquals(Prefixes.DCAM,"dcam"); - assertEquals(Prefixes.DCTERMS,"dcterms"); - assertEquals(Prefixes.FOAF,"foaf"); - assertEquals(Prefixes.OWL,"owl"); - assertEquals(Prefixes.RDF,"rdf"); - assertEquals(Prefixes.RDFS,"rdfs"); - assertEquals(Prefixes.SKOS,"skos"); - assertEquals(Prefixes.XSD,"xsd"); - assertEquals(Prefixes.TIME,"time"); - - // Test OntoCape OCP - assertEquals(Prefixes.OCPBEHA,"OCPBEHA"); - assertEquals(Prefixes.OCPGEOM,"OCPGEOM"); - assertEquals(Prefixes.OCPMATE,"OCPMATE"); - assertEquals(Prefixes.OCPMATH,"OCPMATH"); - assertEquals(Prefixes.OCPPHAS,"OCPPHAS"); - assertEquals(Prefixes.OCPSPAC,"OCPSPAC"); - assertEquals(Prefixes.OCPSYST,"OCPSYST"); - assertEquals(Prefixes.OCPTECH,"OCPTECH"); - assertEquals(Prefixes.OCPTOPO,"OCPTOPO"); - - // Test OntoPowerSys OPS - assertEquals(Prefixes.OPSBEHA,"OPSBEHA"); - assertEquals(Prefixes.OPSMODE,"OPSMODE"); - assertEquals(Prefixes.OPSREAL,"OPSREAL"); - - // Test other JPS ontologies - assertEquals(Prefixes.JPSAGEN,"JPSAGEN"); - assertEquals(Prefixes.JPSLAND,"JPSLAND"); - } - -} diff --git a/src/test/java/uk/ac/cam/cares/jps/base/query/sparql/QueryBuilderTest.java b/src/test/java/uk/ac/cam/cares/jps/base/query/sparql/QueryBuilderTest.java deleted file mode 100644 index a8d6249b7..000000000 --- a/src/test/java/uk/ac/cam/cares/jps/base/query/sparql/QueryBuilderTest.java +++ /dev/null @@ -1,42 +0,0 @@ -package uk.ac.cam.cares.jps.base.query.sparql; - -import org.junit.Assert; -import org.junit.Test; - - - -public class QueryBuilderTest { - private QueryBuilder qbuilder = new QueryBuilder(); - - @Test - public void testSelect() { - Assert.assertEquals("SELECT ?x ", qbuilder.select("?x").toString()); - } - - @Test - public void testA() { - Assert.assertEquals("?o a owl:test", qbuilder.a("?o", "owl", "test").toString()); - } - - @Test - public void testProp() { - //test single path - Assert.assertEquals("?o rdfs:jps ?x", qbuilder.prop("?o", "?x", "rdfs", "jps").toString()); - //test several path - Assert.assertEquals("?o rdf:worldavatar/rdfs:jps ?x", qbuilder.prop("?o", "?x", "rdf", "worldavatar", "rdfs", "jps").toString()); - } - - @Test - public void testBuild() throws Exception { - String b = "PREFIX owl: \r\n" + - "PREFIX rdf: \r\n" + - "PREFIX rdfs: \r\n" + - "SELECT ?x \r\nWHERE {\r\n?o a owl:test .\r\n?o rdf:worldavatar/rdfs:jps ?x .\r\n}"; - - qbuilder.select("?x"); - qbuilder.a("?o", "owl", "test"); - qbuilder.prop("?o", "?x", "rdf", "worldavatar", "rdfs", "jps"); - - Assert.assertEquals(b, qbuilder.build().toString()); - } -} \ No newline at end of file