You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jena.apache.org by an...@apache.org on 2014/12/23 18:59:01 UTC
[05/15] jena git commit: Updates for RDF 1.1
Updates for RDF 1.1
Project: http://git-wip-us.apache.org/repos/asf/jena/repo
Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/a29b1c9d
Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/a29b1c9d
Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/a29b1c9d
Branch: refs/heads/master
Commit: a29b1c9d2d6ca93bf05ad10cb5c7e635f5406cf6
Parents: e0cfdb2
Author: Andy Seaborne <an...@apache.org>
Authored: Tue Dec 23 14:24:07 2014 +0000
Committer: Andy Seaborne <an...@apache.org>
Committed: Tue Dec 23 14:24:07 2014 +0000
----------------------------------------------------------------------
.../jena/query/spatial/SpatialIndexContext.java | 9 +++---
.../jena/query/spatial/SpatialValueUtil.java | 32 ++++++++++++--------
.../pfunction/DirectionWithPointPFBase.java | 4 +--
.../SpatialOperationWithBoxPFBase.java | 8 ++---
.../SpatialOperationWithCircleBase.java | 6 ++--
5 files changed, 32 insertions(+), 27 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jena/blob/a29b1c9d/jena-spatial/src/main/java/org/apache/jena/query/spatial/SpatialIndexContext.java
----------------------------------------------------------------------
diff --git a/jena-spatial/src/main/java/org/apache/jena/query/spatial/SpatialIndexContext.java b/jena-spatial/src/main/java/org/apache/jena/query/spatial/SpatialIndexContext.java
index 42c8b76..c609237 100644
--- a/jena-spatial/src/main/java/org/apache/jena/query/spatial/SpatialIndexContext.java
+++ b/jena-spatial/src/main/java/org/apache/jena/query/spatial/SpatialIndexContext.java
@@ -51,7 +51,7 @@ public class SpatialIndexContext {
String x = SpatialQueryFuncs.subjectToString(s) ;
Log.info(getClass(), "Subject: "+x) ;
- if (defn.isSpatialPredicate(p) && SpatialValueUtil.isDecimal(o.getLiteral())) {
+ if (defn.isSpatialPredicate(p) && SpatialValueUtil.isDecimal(o)) {
boolean isLat = defn.isLatitudePredicate(p);
@@ -73,11 +73,10 @@ public class SpatialIndexContext {
if (theOtherValue != null) {
if (isLat) {
indexer.add(x, SpatialQuery.ctx.makePoint(
- theOtherValue, Double.parseDouble(o
- .getLiteralLexicalForm())));
+ theOtherValue,
+ Double.parseDouble(o.getLiteralLexicalForm())));
} else {
- indexer.add(x, SpatialQuery.ctx.makePoint(Double
- .parseDouble(o.getLiteralLexicalForm()),
+ indexer.add(x, SpatialQuery.ctx.makePoint(Double.parseDouble(o.getLiteralLexicalForm()),
theOtherValue));
}
toRemove = pairValue;
http://git-wip-us.apache.org/repos/asf/jena/blob/a29b1c9d/jena-spatial/src/main/java/org/apache/jena/query/spatial/SpatialValueUtil.java
----------------------------------------------------------------------
diff --git a/jena-spatial/src/main/java/org/apache/jena/query/spatial/SpatialValueUtil.java b/jena-spatial/src/main/java/org/apache/jena/query/spatial/SpatialValueUtil.java
index ab3c9d9..ddf246b 100644
--- a/jena-spatial/src/main/java/org/apache/jena/query/spatial/SpatialValueUtil.java
+++ b/jena-spatial/src/main/java/org/apache/jena/query/spatial/SpatialValueUtil.java
@@ -18,22 +18,28 @@
package org.apache.jena.query.spatial;
-import com.hp.hpl.jena.datatypes.RDFDatatype;
-import com.hp.hpl.jena.datatypes.xsd.XSDDatatype;
-import com.hp.hpl.jena.graph.impl.LiteralLabel;
+import com.hp.hpl.jena.datatypes.RDFDatatype ;
+import com.hp.hpl.jena.datatypes.xsd.XSDDatatype ;
+import com.hp.hpl.jena.graph.Node ;
+import com.hp.hpl.jena.graph.impl.LiteralLabel ;
+import com.hp.hpl.jena.sparql.util.NodeUtils ;
public class SpatialValueUtil {
- public static boolean isDecimal(LiteralLabel literal) {
- RDFDatatype dtype = literal.getDatatype();
- if (dtype == null) {
- try {
- Double.parseDouble(literal.getLexicalForm());
- return true;
- } catch (NumberFormatException e) {
- return false;
- }
- }
+ /** Does the LiteralLabel look like a decimal?
+ * (Maybe a string - if so, OK if it parses as a decimal)
+ */
+ public static boolean isDecimal(Node n) {
+ if ( NodeUtils.isSimpleString(n) || NodeUtils.isLangString(n) ) {
+ try {
+ Double.parseDouble(n.getLiteralLexicalForm()) ;
+ return true;
+ } catch (NumberFormatException e) {
+ return false;
+ }
+ }
+
+ RDFDatatype dtype = n.getLiteralDatatype();
if ((dtype.equals(XSDDatatype.XSDfloat))
|| (dtype.equals(XSDDatatype.XSDdecimal))
|| (dtype.equals(XSDDatatype.XSDdouble) || (dtype
http://git-wip-us.apache.org/repos/asf/jena/blob/a29b1c9d/jena-spatial/src/main/java/org/apache/jena/query/spatial/pfunction/DirectionWithPointPFBase.java
----------------------------------------------------------------------
diff --git a/jena-spatial/src/main/java/org/apache/jena/query/spatial/pfunction/DirectionWithPointPFBase.java b/jena-spatial/src/main/java/org/apache/jena/query/spatial/pfunction/DirectionWithPointPFBase.java
index 10a69db..0d80e1f 100644
--- a/jena-spatial/src/main/java/org/apache/jena/query/spatial/pfunction/DirectionWithPointPFBase.java
+++ b/jena-spatial/src/main/java/org/apache/jena/query/spatial/pfunction/DirectionWithPointPFBase.java
@@ -83,7 +83,7 @@ public abstract class DirectionWithPointPFBase extends SpatialOperationPFBase {
log.warn("Latitude is not a literal " + list);
return null;
}
- if (!SpatialValueUtil.isDecimal(x.getLiteral())) {
+ if (!SpatialValueUtil.isDecimal(x)) {
log.warn("Latitude is not a decimal " + list);
return null;
}
@@ -96,7 +96,7 @@ public abstract class DirectionWithPointPFBase extends SpatialOperationPFBase {
log.warn("Longitude is not a literal " + list);
return null;
}
- if (!SpatialValueUtil.isDecimal(x.getLiteral())) {
+ if (!SpatialValueUtil.isDecimal(x)) {
log.warn("Longitude is not a decimal " + list);
return null;
}
http://git-wip-us.apache.org/repos/asf/jena/blob/a29b1c9d/jena-spatial/src/main/java/org/apache/jena/query/spatial/pfunction/SpatialOperationWithBoxPFBase.java
----------------------------------------------------------------------
diff --git a/jena-spatial/src/main/java/org/apache/jena/query/spatial/pfunction/SpatialOperationWithBoxPFBase.java b/jena-spatial/src/main/java/org/apache/jena/query/spatial/pfunction/SpatialOperationWithBoxPFBase.java
index 1f24dab..695712e 100644
--- a/jena-spatial/src/main/java/org/apache/jena/query/spatial/pfunction/SpatialOperationWithBoxPFBase.java
+++ b/jena-spatial/src/main/java/org/apache/jena/query/spatial/pfunction/SpatialOperationWithBoxPFBase.java
@@ -80,7 +80,7 @@ public abstract class SpatialOperationWithBoxPFBase extends SpatialOperationPFBa
log.warn("Latitude 1 is not a literal " + list);
return null;
}
- if (!SpatialValueUtil.isDecimal(x.getLiteral())) {
+ if (!SpatialValueUtil.isDecimal(x)) {
log.warn("Latitude 1 is not a decimal " + list);
return null;
}
@@ -93,7 +93,7 @@ public abstract class SpatialOperationWithBoxPFBase extends SpatialOperationPFBa
log.warn("Longitude 1 is not a literal " + list);
return null;
}
- if (!SpatialValueUtil.isDecimal(x.getLiteral())) {
+ if (!SpatialValueUtil.isDecimal(x)) {
log.warn("Longitude 1 is not a decimal " + list);
return null;
}
@@ -106,7 +106,7 @@ public abstract class SpatialOperationWithBoxPFBase extends SpatialOperationPFBa
log.warn("Latitude 2 is not a literal " + list);
return null;
}
- if (!SpatialValueUtil.isDecimal(x.getLiteral())) {
+ if (!SpatialValueUtil.isDecimal(x)) {
log.warn("Latitude 2 is not a decimal " + list);
return null;
}
@@ -119,7 +119,7 @@ public abstract class SpatialOperationWithBoxPFBase extends SpatialOperationPFBa
log.warn("Longitude 2 is not a literal " + list);
return null;
}
- if (!SpatialValueUtil.isDecimal(x.getLiteral())) {
+ if (!SpatialValueUtil.isDecimal(x)) {
log.warn("Longitude 2 is not a decimal " + list);
return null;
}
http://git-wip-us.apache.org/repos/asf/jena/blob/a29b1c9d/jena-spatial/src/main/java/org/apache/jena/query/spatial/pfunction/SpatialOperationWithCircleBase.java
----------------------------------------------------------------------
diff --git a/jena-spatial/src/main/java/org/apache/jena/query/spatial/pfunction/SpatialOperationWithCircleBase.java b/jena-spatial/src/main/java/org/apache/jena/query/spatial/pfunction/SpatialOperationWithCircleBase.java
index 4023ab4..24b809e 100644
--- a/jena-spatial/src/main/java/org/apache/jena/query/spatial/pfunction/SpatialOperationWithCircleBase.java
+++ b/jena-spatial/src/main/java/org/apache/jena/query/spatial/pfunction/SpatialOperationWithCircleBase.java
@@ -83,7 +83,7 @@ public abstract class SpatialOperationWithCircleBase extends SpatialOperationPFB
log.warn("Latitude is not a literal " + list);
return null;
}
- if (!SpatialValueUtil.isDecimal(x.getLiteral())) {
+ if (!SpatialValueUtil.isDecimal(x)) {
log.warn("Latitude is not a decimal " + list);
return null;
}
@@ -96,7 +96,7 @@ public abstract class SpatialOperationWithCircleBase extends SpatialOperationPFB
log.warn("Longitude is not a literal " + list);
return null;
}
- if (!SpatialValueUtil.isDecimal(x.getLiteral())) {
+ if (!SpatialValueUtil.isDecimal(x)) {
log.warn("Longitude is not a decimal " + list);
return null;
}
@@ -110,7 +110,7 @@ public abstract class SpatialOperationWithCircleBase extends SpatialOperationPFB
log.warn("Radius is not a literal " + list);
return null;
}
- if (!SpatialValueUtil.isDecimal(x.getLiteral())) {
+ if (!SpatialValueUtil.isDecimal(x)) {
log.warn("Radius is not a decimal " + list);
return null;
}