You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jena.apache.org by jp...@apache.org on 2013/09/06 04:52:12 UTC
svn commit: r1520478 - in /jena/trunk/jena-spatial/src: main/java/examples/
main/java/org/apache/jena/query/spatial/
main/java/org/apache/jena/query/spatial/assembler/
test/java/org/apache/jena/query/spatial/
test/java/org/apache/jena/query/spatial/ass...
Author: jpz6311whu
Date: Fri Sep 6 02:52:11 2013
New Revision: 1520478
URL: http://svn.apache.org/r1520478
Log:
make the unit tests pass with or without JTS in classpath.
Modified:
jena/trunk/jena-spatial/src/main/java/examples/JenaSpatialExample1.java
jena/trunk/jena-spatial/src/main/java/org/apache/jena/query/spatial/SpatialQuery.java
jena/trunk/jena-spatial/src/main/java/org/apache/jena/query/spatial/assembler/EntityDefinitionAssembler.java
jena/trunk/jena-spatial/src/test/java/org/apache/jena/query/spatial/AbstractTestDatasetWithSpatialIndex.java
jena/trunk/jena-spatial/src/test/java/org/apache/jena/query/spatial/AbstractTestIndexingSpatialData.java
jena/trunk/jena-spatial/src/test/java/org/apache/jena/query/spatial/TestIndexingSpatialDataWithLucene.java
jena/trunk/jena-spatial/src/test/java/org/apache/jena/query/spatial/TestIndexingSpatialDataWithSolr.java
jena/trunk/jena-spatial/src/test/java/org/apache/jena/query/spatial/assembler/TestEntityDefinitionAssembler.java
Modified: jena/trunk/jena-spatial/src/main/java/examples/JenaSpatialExample1.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-spatial/src/main/java/examples/JenaSpatialExample1.java?rev=1520478&r1=1520477&r2=1520478&view=diff
==============================================================================
--- jena/trunk/jena-spatial/src/main/java/examples/JenaSpatialExample1.java (original)
+++ jena/trunk/jena-spatial/src/main/java/examples/JenaSpatialExample1.java Fri Sep 6 02:52:11 2013
@@ -143,7 +143,11 @@ public class JenaSpatialExample1 {
private static Dataset joinDataset(Dataset baseDataset, File indexDir) throws IOException{
EntityDefinition entDef = new EntityDefinition("entityField", "geoField");
- entDef.setSpatialContextFactory("com.spatial4j.core.context.jts.JtsSpatialContextFactory");
+
+ // you need JTS lib in the classpath to run the examples
+ entDef.setSpatialContextFactory(SpatialQuery.JTS_SPATIAL_CONTEXT_FACTORY_CLASS);
+
+ // set custom goe predicates
entDef.addSpatialPredicatePair(ResourceFactory.createResource("http://localhost/jena_example/#latitude_1"), ResourceFactory.createResource("http://localhost/jena_example/#longitude_1"));
entDef.addSpatialPredicatePair(ResourceFactory.createResource("http://localhost/jena_example/#latitude_2"), ResourceFactory.createResource("http://localhost/jena_example/#longitude_2"));
entDef.addWKTPredicate(ResourceFactory.createResource("http://localhost/jena_example/#wkt_1"));
Modified: jena/trunk/jena-spatial/src/main/java/org/apache/jena/query/spatial/SpatialQuery.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-spatial/src/main/java/org/apache/jena/query/spatial/SpatialQuery.java?rev=1520478&r1=1520477&r2=1520478&view=diff
==============================================================================
--- jena/trunk/jena-spatial/src/main/java/org/apache/jena/query/spatial/SpatialQuery.java (original)
+++ jena/trunk/jena-spatial/src/main/java/org/apache/jena/query/spatial/SpatialQuery.java Fri Sep 6 02:52:11 2013
@@ -38,7 +38,6 @@ import com.hp.hpl.jena.sparql.pfunction.
import com.hp.hpl.jena.sparql.util.Symbol;
import com.hp.hpl.jena.tdb.TDB;
import com.spatial4j.core.context.SpatialContext;
-import com.spatial4j.core.context.jts.JtsSpatialContext;
public class SpatialQuery
{
@@ -58,6 +57,9 @@ public class SpatialQuery
public static SpatialContext ctx = SpatialContext.GEO;
+ // an optional feature for WKT literals, loaded when necessary, but not required
+ public static final String JTS_SPATIAL_CONTEXT_FACTORY_CLASS = "com.spatial4j.core.context.jts.JtsSpatialContextFactory";
+
static { init() ; }
public static void init()
Modified: jena/trunk/jena-spatial/src/main/java/org/apache/jena/query/spatial/assembler/EntityDefinitionAssembler.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-spatial/src/main/java/org/apache/jena/query/spatial/assembler/EntityDefinitionAssembler.java?rev=1520478&r1=1520477&r2=1520478&view=diff
==============================================================================
--- jena/trunk/jena-spatial/src/main/java/org/apache/jena/query/spatial/assembler/EntityDefinitionAssembler.java (original)
+++ jena/trunk/jena-spatial/src/main/java/org/apache/jena/query/spatial/assembler/EntityDefinitionAssembler.java Fri Sep 6 02:52:11 2013
@@ -129,7 +129,11 @@ public class EntityDefinitionAssembler e
} else {
QuerySolution qsol4 = results4.get(0);
String spatialContextFactory = qsol4.getLiteral("factory").getLexicalForm() ;
- docDef.setSpatialContextFactory(spatialContextFactory);
+ try {
+ docDef.setSpatialContextFactory(spatialContextFactory);
+ }catch (NoClassDefFoundError e){
+ Log.warn(this, "Custom SpatialContextFactory lib is not ready in classpath:"+ e.getMessage()) ;
+ }
return docDef ;
}
}
Modified: jena/trunk/jena-spatial/src/test/java/org/apache/jena/query/spatial/AbstractTestDatasetWithSpatialIndex.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-spatial/src/test/java/org/apache/jena/query/spatial/AbstractTestDatasetWithSpatialIndex.java?rev=1520478&r1=1520477&r2=1520478&view=diff
==============================================================================
--- jena/trunk/jena-spatial/src/test/java/org/apache/jena/query/spatial/AbstractTestDatasetWithSpatialIndex.java (original)
+++ jena/trunk/jena-spatial/src/test/java/org/apache/jena/query/spatial/AbstractTestDatasetWithSpatialIndex.java Fri Sep 6 02:52:11 2013
@@ -99,7 +99,7 @@ public abstract class AbstractTestDatase
}
if (throwException){
- fail("An exception is supposed to be thrown!");
+ fail("An exception is supposed to be thrown for spatial query!");
}
assertEquals( expectedNumResults > 0, results.hasNext());
int count;
Modified: jena/trunk/jena-spatial/src/test/java/org/apache/jena/query/spatial/AbstractTestIndexingSpatialData.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-spatial/src/test/java/org/apache/jena/query/spatial/AbstractTestIndexingSpatialData.java?rev=1520478&r1=1520477&r2=1520478&view=diff
==============================================================================
--- jena/trunk/jena-spatial/src/test/java/org/apache/jena/query/spatial/AbstractTestIndexingSpatialData.java (original)
+++ jena/trunk/jena-spatial/src/test/java/org/apache/jena/query/spatial/AbstractTestIndexingSpatialData.java Fri Sep 6 02:52:11 2013
@@ -5,7 +5,11 @@ import java.util.HashSet;
import java.util.Set;
import org.apache.jena.atlas.lib.StrUtils;
+import org.apache.jena.atlas.logging.Log;
import org.junit.Test;
+import static org.junit.Assert.fail;
+
+import com.spatial4j.core.exception.InvalidShapeException;
public class AbstractTestIndexingSpatialData extends
AbstractTestDatasetWithSpatialIndex {
@@ -31,6 +35,17 @@ public class AbstractTestIndexingSpatial
@Test
public void testIndexingWKTLiteral() {
+ boolean jts_context_ready = false;
+ try {
+ SpatialIndex index = (SpatialIndex) dataset.getContext().get(
+ SpatialQuery.spatialIndex);
+ index.getDocDef().setSpatialContextFactory(
+ SpatialQuery.JTS_SPATIAL_CONTEXT_FACTORY_CLASS);
+ jts_context_ready = true;
+ }catch (NoClassDefFoundError e){
+ Log.warn(this, "JTS lib is not ready in classpath! An exception should be thrown later on!");
+ }
+
final String turtle = StrUtils
.strjoinNL(
TURTLE_PROLOG,
@@ -48,7 +63,17 @@ public class AbstractTestIndexingSpatial
expectedURIs
.addAll(Arrays
.asList((new String[] { "http://example.org/data/resource/testIndexingWKTLiteral" })));
- doTestSearch(turtle, queryString, expectedURIs);
+
+ try {
+ doTestSearch(turtle, queryString, expectedURIs);
+ if (!jts_context_ready){
+ fail("An exception is supposed to be thrown for reading WKT shapes without JTS!");
+ }
+ }catch (InvalidShapeException e){
+ if (jts_context_ready){
+ fail("The exception is not supposed to be thrown: "+ e.getMessage());
+ }
+ }
}
}
Modified: jena/trunk/jena-spatial/src/test/java/org/apache/jena/query/spatial/TestIndexingSpatialDataWithLucene.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-spatial/src/test/java/org/apache/jena/query/spatial/TestIndexingSpatialDataWithLucene.java?rev=1520478&r1=1520477&r2=1520478&view=diff
==============================================================================
--- jena/trunk/jena-spatial/src/test/java/org/apache/jena/query/spatial/TestIndexingSpatialDataWithLucene.java (original)
+++ jena/trunk/jena-spatial/src/test/java/org/apache/jena/query/spatial/TestIndexingSpatialDataWithLucene.java Fri Sep 6 02:52:11 2013
@@ -38,12 +38,6 @@ public class TestIndexingSpatialDataWith
public void init() throws IOException {
dataset = SpatialSearchUtil
.initInMemoryDatasetWithLuceneSpatitalIndex(INDEX_DIR);
-
- SpatialIndex index = (SpatialIndex) dataset.getContext().get(
- SpatialQuery.spatialIndex);
- index.getDocDef().setSpatialContextFactory(
- "com.spatial4j.core.context.jts.JtsSpatialContextFactory");
-
}
@After
Modified: jena/trunk/jena-spatial/src/test/java/org/apache/jena/query/spatial/TestIndexingSpatialDataWithSolr.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-spatial/src/test/java/org/apache/jena/query/spatial/TestIndexingSpatialDataWithSolr.java?rev=1520478&r1=1520477&r2=1520478&view=diff
==============================================================================
--- jena/trunk/jena-spatial/src/test/java/org/apache/jena/query/spatial/TestIndexingSpatialDataWithSolr.java (original)
+++ jena/trunk/jena-spatial/src/test/java/org/apache/jena/query/spatial/TestIndexingSpatialDataWithSolr.java Fri Sep 6 02:52:11 2013
@@ -29,12 +29,6 @@ public class TestIndexingSpatialDataWith
@Before
public void init() throws IOException {
dataset = SpatialSearchUtil.initInMemoryDatasetWithSolrSpatitalIndex();
-
- SpatialIndex index = (SpatialIndex) dataset.getContext().get(
- SpatialQuery.spatialIndex);
- index.getDocDef().setSpatialContextFactory(
- "com.spatial4j.core.context.jts.JtsSpatialContextFactory");
-
}
@After
Modified: jena/trunk/jena-spatial/src/test/java/org/apache/jena/query/spatial/assembler/TestEntityDefinitionAssembler.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-spatial/src/test/java/org/apache/jena/query/spatial/assembler/TestEntityDefinitionAssembler.java?rev=1520478&r1=1520477&r2=1520478&view=diff
==============================================================================
--- jena/trunk/jena-spatial/src/test/java/org/apache/jena/query/spatial/assembler/TestEntityDefinitionAssembler.java (original)
+++ jena/trunk/jena-spatial/src/test/java/org/apache/jena/query/spatial/assembler/TestEntityDefinitionAssembler.java Fri Sep 6 02:52:11 2013
@@ -19,7 +19,9 @@
package org.apache.jena.query.spatial.assembler;
import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.fail;
+import org.apache.jena.atlas.logging.Log;
import org.apache.jena.query.spatial.EntityDefinition;
import org.apache.jena.query.spatial.SpatialIndexException;
import org.apache.jena.query.spatial.SpatialQuery;
@@ -30,13 +32,12 @@ import com.hp.hpl.jena.rdf.model.ModelFa
import com.hp.hpl.jena.rdf.model.RDFNode;
import com.hp.hpl.jena.rdf.model.Resource;
import com.hp.hpl.jena.rdf.model.ResourceFactory;
-import com.spatial4j.core.context.jts.JtsSpatialContext;
/**
* Test assembler for EntityDefinition
*/
public class TestEntityDefinitionAssembler {
-
+
private static final String TESTBASE = "http://example.org/test/";
private static final Resource spec0;
private static final Resource spec1;
@@ -45,159 +46,190 @@ public class TestEntityDefinitionAssembl
private static final Resource specNoEntityField;
private static final Resource specNoGeoField;
-
- @Test public void EntityHasGeoield() {
+ @Test
+ public void EntityHasGeoield() {
EntityDefinitionAssembler emAssembler = new EntityDefinitionAssembler();
EntityDefinition entityDef = emAssembler.open(null, spec0, null);
assertEquals(SPEC0_GEO_FIELD, entityDef.getGeoField());
}
-
- @Test public void EntityHasEntityField() {
+
+ @Test
+ public void EntityHasEntityField() {
EntityDefinitionAssembler emAssembler = new EntityDefinitionAssembler();
EntityDefinition entityDef = emAssembler.open(null, spec0, null);
- assertEquals(SPEC0_ENTITY_FIELD, entityDef.getEntityField());
+ assertEquals(SPEC0_ENTITY_FIELD, entityDef.getEntityField());
}
-
- @Test public void EntityHasPair() {
+
+ @Test
+ public void EntityHasPair() {
EntityDefinitionAssembler emAssembler = new EntityDefinitionAssembler();
EntityDefinition entityDef = emAssembler.open(null, spec1, null);
assertEquals(1, entityDef.getCustomSpatialPredicatePairCount());
- assertEquals(true, entityDef.hasSpatialPredicatePair(SPEC1_LATITUDE.asNode(), SPEC1_LONGITUDE.asNode()));
-
+ assertEquals(true, entityDef.hasSpatialPredicatePair(
+ SPEC1_LATITUDE.asNode(), SPEC1_LONGITUDE.asNode()));
+
}
-
- @Test public void EntityHasWKT() {
+
+ @Test
+ public void EntityHasWKT() {
EntityDefinitionAssembler emAssembler = new EntityDefinitionAssembler();
EntityDefinition entityDef = emAssembler.open(null, spec1, null);
assertEquals(1, entityDef.getCustomWKTPredicateCount());
assertEquals(true, entityDef.isWKTPredicate(SPEC1_WKT.asNode()));
-
+
}
-
- @Test public void EntityHasMultiplePairsAndWKTs() {
+ @Test
+ public void EntityHasMultiplePairsAndWKTs() {
EntityDefinitionAssembler emAssembler = new EntityDefinitionAssembler();
EntityDefinition entityDef = emAssembler.open(null, spec2, null);
assertEquals(2, entityDef.getCustomSpatialPredicatePairCount());
- assertEquals(true, entityDef.hasSpatialPredicatePair(SPEC2_LATITUDE_1.asNode(), SPEC2_LONGITUDE_1.asNode()));
- assertEquals(true, entityDef.hasSpatialPredicatePair(SPEC2_LATITUDE_2.asNode(), SPEC2_LONGITUDE_2.asNode()));
- assertEquals(false, entityDef.hasSpatialPredicatePair(SPEC2_LATITUDE_1.asNode(), SPEC2_LONGITUDE_2.asNode()));
- assertEquals(false, entityDef.hasSpatialPredicatePair(SPEC2_LATITUDE_2.asNode(), SPEC2_LONGITUDE_1.asNode()));
+ assertEquals(true, entityDef.hasSpatialPredicatePair(
+ SPEC2_LATITUDE_1.asNode(), SPEC2_LONGITUDE_1.asNode()));
+ assertEquals(true, entityDef.hasSpatialPredicatePair(
+ SPEC2_LATITUDE_2.asNode(), SPEC2_LONGITUDE_2.asNode()));
+ assertEquals(false, entityDef.hasSpatialPredicatePair(
+ SPEC2_LATITUDE_1.asNode(), SPEC2_LONGITUDE_2.asNode()));
+ assertEquals(false, entityDef.hasSpatialPredicatePair(
+ SPEC2_LATITUDE_2.asNode(), SPEC2_LONGITUDE_1.asNode()));
assertEquals(2, entityDef.getCustomWKTPredicateCount());
assertEquals(true, entityDef.isWKTPredicate(SPEC2_WKT_1.asNode()));
assertEquals(true, entityDef.isWKTPredicate(SPEC2_WKT_2.asNode()));
assertEquals(false, entityDef.isWKTPredicate(SPEC1_WKT.asNode()));
}
-
- @Test public void EntityHasSpatialContextFactory() {
+
+ @Test
+ public void EntityHasSpatialContextFactory() {
+ boolean jts_lib_ready = false;
+ try {
+ Class.forName("com.vividsolutions.jts.geom.Geometry");
+ jts_lib_ready = true;
+ } catch (ClassNotFoundException e) {
+ Log.warn(this,
+ "JTS lib is not ready in classpath! An exception should be thrown later on!");
+ }
+
EntityDefinitionAssembler emAssembler = new EntityDefinitionAssembler();
EntityDefinition entityDef = emAssembler.open(null, spec3, null);
- assertEquals(JtsSpatialContext.GEO.getClass().toString(), SpatialQuery.ctx.getClass().toString());
+ if (jts_lib_ready) {
+ assertEquals("com.spatial4j.core.context.jts.JtsSpatialContext",
+ SpatialQuery.ctx.getClass().getName());
+ } else {
+ assertEquals("com.spatial4j.core.context.SpatialContext",
+ SpatialQuery.ctx.getClass().getName());
+ }
+
}
-
- @Test(expected=SpatialIndexException.class) public void errorOnNoEntityField() {
+
+ @Test(expected = SpatialIndexException.class)
+ public void errorOnNoEntityField() {
EntityDefinitionAssembler emAssembler = new EntityDefinitionAssembler();
emAssembler.open(null, specNoEntityField, null);
}
-
- @Test(expected=SpatialIndexException.class) public void errorOnNoGeoField() {
+
+ @Test(expected = SpatialIndexException.class)
+ public void errorOnNoGeoField() {
EntityDefinitionAssembler emAssembler = new EntityDefinitionAssembler();
emAssembler.open(null, specNoGeoField, null);
}
-
private static final String SPEC0_ENTITY_FIELD = "spec0EntityField";
private static final String SPEC0_GEO_FIELD = "spec0GeoField";
-
- private static final String SPEC1_ENTITY_FIELD = "spec1EntityField";
+
+ private static final String SPEC1_ENTITY_FIELD = "spec1EntityField";
private static final String SPEC1_GEO_FIELD = "spec1GeoField";
- private static final Resource SPEC1_LATITUDE = ResourceFactory.createResource(TESTBASE+"latitude");
- private static final Resource SPEC1_LONGITUDE = ResourceFactory.createResource(TESTBASE+"longitude");
- private static final Resource SPEC1_WKT = ResourceFactory.createResource(TESTBASE+"wkt");
-
+ private static final Resource SPEC1_LATITUDE = ResourceFactory
+ .createResource(TESTBASE + "latitude");
+ private static final Resource SPEC1_LONGITUDE = ResourceFactory
+ .createResource(TESTBASE + "longitude");
+ private static final Resource SPEC1_WKT = ResourceFactory
+ .createResource(TESTBASE + "wkt");
+
private static final String SPEC2_ENTITY_FIELD = "spec2EntityField";
private static final String SPEC2_GEO_FIELD = "spec2DefaultField";
- private static final Resource SPEC2_LATITUDE_1 = ResourceFactory.createResource(TESTBASE+"latitude_1");
- private static final Resource SPEC2_LONGITUDE_1 = ResourceFactory.createResource(TESTBASE+"longitude_1");
- private static final Resource SPEC2_LATITUDE_2 = ResourceFactory.createResource(TESTBASE+"latitude_2");
- private static final Resource SPEC2_LONGITUDE_2 = ResourceFactory.createResource(TESTBASE+"longitude_2");
- private static final Resource SPEC2_WKT_1 = ResourceFactory.createResource(TESTBASE+"wkt_1");
- private static final Resource SPEC2_WKT_2 = ResourceFactory.createResource(TESTBASE+"wkt_2");
-
- private static final String SPEC3_SPATIALCONTEXTFACTORY = "com.spatial4j.core.context.jts.JtsSpatialContextFactory";
-
+ private static final Resource SPEC2_LATITUDE_1 = ResourceFactory
+ .createResource(TESTBASE + "latitude_1");
+ private static final Resource SPEC2_LONGITUDE_1 = ResourceFactory
+ .createResource(TESTBASE + "longitude_1");
+ private static final Resource SPEC2_LATITUDE_2 = ResourceFactory
+ .createResource(TESTBASE + "latitude_2");
+ private static final Resource SPEC2_LONGITUDE_2 = ResourceFactory
+ .createResource(TESTBASE + "longitude_2");
+ private static final Resource SPEC2_WKT_1 = ResourceFactory
+ .createResource(TESTBASE + "wkt_1");
+ private static final Resource SPEC2_WKT_2 = ResourceFactory
+ .createResource(TESTBASE + "wkt_2");
+
static {
-
+
// create a mininal specification
Model model = ModelFactory.createDefaultModel();
model = ModelFactory.createDefaultModel();
spec0 = model.createResource(TESTBASE + "spec0")
- .addProperty(SpatialVocab.pEntityField, SPEC0_ENTITY_FIELD)
- .addProperty(SpatialVocab.pGeoField, SPEC0_GEO_FIELD)
- ;
-
+ .addProperty(SpatialVocab.pEntityField, SPEC0_ENTITY_FIELD)
+ .addProperty(SpatialVocab.pGeoField, SPEC0_GEO_FIELD);
+
// create a simple pair specification
model = ModelFactory.createDefaultModel();
- spec1 = model.createResource(TESTBASE + "spec1")
- .addProperty(SpatialVocab.pEntityField, SPEC1_ENTITY_FIELD)
- .addProperty(SpatialVocab.pGeoField, SPEC1_GEO_FIELD)
- .addProperty(SpatialVocab.pHasSpatialPredicatePairs,
- model.createList(
- new RDFNode[] {
- model.createResource()
- .addProperty(SpatialVocab.pLatitude, SPEC1_LATITUDE)
- .addProperty(SpatialVocab.pLongitude, SPEC1_LONGITUDE)
- }))
- .addProperty(SpatialVocab.pHasWKTPredicates,
- model.createList(
- new RDFNode[] {
- SPEC1_WKT
- }))
- ;
-
- // create an entity definition specification with multiple pairs and wkts
- model = ModelFactory.createDefaultModel();
- spec2 = model.createResource(TESTBASE + "spec2")
- .addProperty(SpatialVocab.pEntityField, SPEC2_ENTITY_FIELD)
- .addProperty(SpatialVocab.pGeoField, SPEC2_GEO_FIELD)
- .addProperty(SpatialVocab.pHasSpatialPredicatePairs,
- model.createList(
- new RDFNode[] {
- model.createResource()
- .addProperty(SpatialVocab.pLatitude, SPEC2_LATITUDE_1)
- .addProperty(SpatialVocab.pLongitude, SPEC2_LONGITUDE_1),
- model.createResource()
- .addProperty(SpatialVocab.pLatitude, SPEC2_LATITUDE_2)
- .addProperty(SpatialVocab.pLongitude, SPEC2_LONGITUDE_2)
- }))
- .addProperty(SpatialVocab.pHasWKTPredicates,
- model.createList(
- new RDFNode[] {
- SPEC2_WKT_1, SPEC2_WKT_2
- }))
- ;
-
+ spec1 = model
+ .createResource(TESTBASE + "spec1")
+ .addProperty(SpatialVocab.pEntityField, SPEC1_ENTITY_FIELD)
+ .addProperty(SpatialVocab.pGeoField, SPEC1_GEO_FIELD)
+ .addProperty(
+ SpatialVocab.pHasSpatialPredicatePairs,
+ model.createList(new RDFNode[] { model
+ .createResource()
+ .addProperty(SpatialVocab.pLatitude,
+ SPEC1_LATITUDE)
+ .addProperty(SpatialVocab.pLongitude,
+ SPEC1_LONGITUDE) }))
+ .addProperty(SpatialVocab.pHasWKTPredicates,
+ model.createList(new RDFNode[] { SPEC1_WKT }));
+
+ // create an entity definition specification with multiple pairs and
+ // wkts
+ model = ModelFactory.createDefaultModel();
+ spec2 = model
+ .createResource(TESTBASE + "spec2")
+ .addProperty(SpatialVocab.pEntityField, SPEC2_ENTITY_FIELD)
+ .addProperty(SpatialVocab.pGeoField, SPEC2_GEO_FIELD)
+ .addProperty(
+ SpatialVocab.pHasSpatialPredicatePairs,
+ model.createList(new RDFNode[] {
+ model.createResource()
+ .addProperty(SpatialVocab.pLatitude,
+ SPEC2_LATITUDE_1)
+ .addProperty(SpatialVocab.pLongitude,
+ SPEC2_LONGITUDE_1),
+ model.createResource()
+ .addProperty(SpatialVocab.pLatitude,
+ SPEC2_LATITUDE_2)
+ .addProperty(SpatialVocab.pLongitude,
+ SPEC2_LONGITUDE_2) }))
+ .addProperty(
+ SpatialVocab.pHasWKTPredicates,
+ model.createList(new RDFNode[] { SPEC2_WKT_1,
+ SPEC2_WKT_2 }));
+
// create an entity definition specification with spatialContextFactory
model = ModelFactory.createDefaultModel();
- spec3 = model.createResource(TESTBASE + "spec0")
- .addProperty(SpatialVocab.pEntityField, SPEC0_ENTITY_FIELD)
- .addProperty(SpatialVocab.pGeoField, SPEC0_GEO_FIELD)
- .addProperty(SpatialVocab.pSpatialContextFactory, SPEC3_SPATIALCONTEXTFACTORY)
- ;
-
+ spec3 = model
+ .createResource(TESTBASE + "spec0")
+ .addProperty(SpatialVocab.pEntityField, SPEC0_ENTITY_FIELD)
+ .addProperty(SpatialVocab.pGeoField, SPEC0_GEO_FIELD)
+ .addProperty(SpatialVocab.pSpatialContextFactory,
+ SpatialQuery.JTS_SPATIAL_CONTEXT_FACTORY_CLASS);
+
// bad assembler spec
model = ModelFactory.createDefaultModel();
- specNoEntityField =
- model.createResource(TESTBASE + "specNoEntityField")
- .addProperty(SpatialVocab.pGeoField, SPEC0_GEO_FIELD)
- ;
-
+ specNoEntityField = model
+ .createResource(TESTBASE + "specNoEntityField").addProperty(
+ SpatialVocab.pGeoField, SPEC0_GEO_FIELD);
+
// bad assembler spec
model = ModelFactory.createDefaultModel();
- specNoGeoField =
- model.createResource(TESTBASE + "specNoGeoField")
- .addProperty(SpatialVocab.pEntityField, SPEC0_ENTITY_FIELD)
- ;
-
+ specNoGeoField = model.createResource(TESTBASE + "specNoGeoField")
+ .addProperty(SpatialVocab.pEntityField, SPEC0_ENTITY_FIELD);
+
}
}