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/11/23 12:04:04 UTC
[1/6] jena git commit: Put message in exception.
Repository: jena
Updated Branches:
refs/heads/master 7cf034e58 -> a1f70e027
Put message in exception.
Project: http://git-wip-us.apache.org/repos/asf/jena/repo
Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/c23422af
Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/c23422af
Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/c23422af
Branch: refs/heads/master
Commit: c23422af18ac84cce2a540fab436471f8cc812a4
Parents: 7cf034e
Author: Andy Seaborne <an...@apache.org>
Authored: Sat Nov 22 15:58:04 2014 +0000
Committer: Andy Seaborne <an...@apache.org>
Committed: Sat Nov 22 15:58:04 2014 +0000
----------------------------------------------------------------------
.../org/apache/jena/riot/ErrorHandlerTestLib.java | 15 ++++++++-------
1 file changed, 8 insertions(+), 7 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jena/blob/c23422af/jena-arq/src/test/java/org/apache/jena/riot/ErrorHandlerTestLib.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/test/java/org/apache/jena/riot/ErrorHandlerTestLib.java b/jena-arq/src/test/java/org/apache/jena/riot/ErrorHandlerTestLib.java
index 2f739fe..9e48127 100644
--- a/jena-arq/src/test/java/org/apache/jena/riot/ErrorHandlerTestLib.java
+++ b/jena-arq/src/test/java/org/apache/jena/riot/ErrorHandlerTestLib.java
@@ -23,27 +23,28 @@ import java.util.List ;
import org.apache.jena.riot.system.ErrorHandler ;
+/** Error handled to convert anything to an exception */
public class ErrorHandlerTestLib
{
- public static class ExFatal extends RuntimeException {}
+ public static class ExFatal extends RuntimeException { ExFatal(String msg) { super(msg) ; } }
- public static class ExError extends RuntimeException {}
+ public static class ExError extends RuntimeException { ExError(String msg) { super(msg) ; } }
- public static class ExWarning extends RuntimeException {}
+ public static class ExWarning extends RuntimeException { ExWarning(String msg) { super(msg) ; } }
public static class ErrorHandlerEx implements ErrorHandler
{
@Override
public void warning(String message, long line, long col)
- { throw new ExWarning() ; }
+ { throw new ExWarning(message) ; }
@Override
public void error(String message, long line, long col)
- { throw new ExError() ; }
+ { throw new ExError(message) ; }
@Override
public void fatal(String message, long line, long col)
- { throw new ExFatal() ; }
+ { throw new ExFatal(message) ; }
}
// Error handler that records messages
@@ -61,7 +62,7 @@ public class ErrorHandlerTestLib
@Override
public void fatal(String message, long line, long col)
- { msgs.add(message) ; throw new ExFatal() ; }
+ { msgs.add(message) ; throw new ExFatal(message) ; }
}
}
[2/6] jena git commit: JENA-816 : Checking literals (RDF 1.0 and 1.1
forms)
Posted by an...@apache.org.
JENA-816 : Checking literals (RDF 1.0 and 1.1 forms)
Project: http://git-wip-us.apache.org/repos/asf/jena/repo
Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/707ecb9f
Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/707ecb9f
Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/707ecb9f
Branch: refs/heads/master
Commit: 707ecb9f81668ca24a88edb17c51b6e77105c734
Parents: c23422a
Author: Andy Seaborne <an...@apache.org>
Authored: Sat Nov 22 16:54:57 2014 +0000
Committer: Andy Seaborne <an...@apache.org>
Committed: Sat Nov 22 16:54:57 2014 +0000
----------------------------------------------------------------------
.../jena/riot/checker/CheckerLiterals.java | 164 ++++++++++---------
1 file changed, 89 insertions(+), 75 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jena/blob/707ecb9f/jena-arq/src/main/java/org/apache/jena/riot/checker/CheckerLiterals.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/main/java/org/apache/jena/riot/checker/CheckerLiterals.java b/jena-arq/src/main/java/org/apache/jena/riot/checker/CheckerLiterals.java
index ca5cf6b..4fa8f53 100644
--- a/jena-arq/src/main/java/org/apache/jena/riot/checker/CheckerLiterals.java
+++ b/jena-arq/src/main/java/org/apache/jena/riot/checker/CheckerLiterals.java
@@ -16,8 +16,9 @@
* limitations under the License.
*/
-package org.apache.jena.riot.checker;
+package org.apache.jena.riot.checker ;
+import java.util.Objects ;
import java.util.regex.Pattern ;
import org.apache.jena.riot.SysRIOT ;
@@ -28,91 +29,88 @@ import org.apache.xerces.impl.dv.ValidationContext ;
import org.apache.xerces.impl.dv.XSSimpleType ;
import org.apache.xerces.impl.validation.ValidationState ;
+import com.hp.hpl.jena.JenaRuntime ;
import com.hp.hpl.jena.datatypes.RDFDatatype ;
import com.hp.hpl.jena.datatypes.xsd.impl.XSDAbstractDateTimeType ;
import com.hp.hpl.jena.datatypes.xsd.impl.XSDBaseNumericType ;
import com.hp.hpl.jena.datatypes.xsd.impl.XSDDouble ;
import com.hp.hpl.jena.datatypes.xsd.impl.XSDFloat ;
import com.hp.hpl.jena.graph.Node ;
+import com.hp.hpl.jena.sparql.graph.NodeConst ;
-public class CheckerLiterals implements NodeChecker
-{
+public class CheckerLiterals implements NodeChecker {
// A flag to enable the test suite to read bad data.
public static boolean WarnOnBadLiterals = true ;
-
- private ErrorHandler handler ;
- public CheckerLiterals(ErrorHandler handler)
- {
+
+ private ErrorHandler handler ;
+
+ public CheckerLiterals(ErrorHandler handler) {
this.handler = handler ;
}
-
+
@Override
- public boolean check(Node node, long line, long col)
- { return node.isLiteral() && checkLiteral(node, handler, line, col) ; }
-
+ public boolean check(Node node, long line, long col) {
+ return node.isLiteral() && checkLiteral(node, handler, line, col) ;
+ }
+
final static private Pattern langPattern = Pattern.compile("[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*") ;
- public static boolean checkLiteral(Node node, ErrorHandler handler, long line, long col)
- {
- if ( ! node.isLiteral() )
- {
- handler.error("Not a literal: "+node, line, col) ;
+ public static boolean checkLiteral(Node node, ErrorHandler handler, long line, long col) {
+ if ( !node.isLiteral() ) {
+ handler.error("Not a literal: " + node, line, col) ;
return false ;
}
-
- return checkLiteral(node.getLiteralLexicalForm(), node.getLiteralLanguage(), node.getLiteralDatatype(),
- handler, line, col) ;
+
+ return checkLiteral(node.getLiteralLexicalForm(), node.getLiteralLanguage(), node.getLiteralDatatype(), handler, line, col) ;
}
-
-
- public static boolean checkLiteral(String lexicalForm, RDFDatatype datatype,
- ErrorHandler handler, long line, long col)
- {
+
+ public static boolean checkLiteral(String lexicalForm, RDFDatatype datatype, ErrorHandler handler, long line, long col) {
return checkLiteral(lexicalForm, null, datatype, handler, line, col) ;
}
- public static boolean checkLiteral(String lexicalForm, String lang,
- ErrorHandler handler, long line, long col)
- {
+ public static boolean checkLiteral(String lexicalForm, String lang, ErrorHandler handler, long line, long col) {
return checkLiteral(lexicalForm, lang, null, handler, line, col) ;
}
-
- public static boolean checkLiteral(String lexicalForm, String lang, RDFDatatype datatype,
- ErrorHandler handler, long line, long col)
- {
- if ( ! WarnOnBadLiterals )
+
+ public static boolean checkLiteral(String lexicalForm, String lang, RDFDatatype datatype, ErrorHandler handler,
+ long line, long col) {
+ if ( !WarnOnBadLiterals )
return true ;
-
- boolean hasLang = lang != null && ! lang.equals("") ;
-
- if ( datatype != null && hasLang )
- handler.error("Literal has datatype and language", line, col) ;
-
- // Datatype check (and plain literals are always well formed)
- if ( datatype != null )
- return validateByDatatype(lexicalForm, datatype, handler, line, col) ;
-
- // No datatype. Language?
-
- if ( hasLang )
- {
- // Not a perfect test.
- if ( lang.length() > 0 && ! langPattern.matcher(lang).matches() )
- {
- handler.warning("Language not valid: "+lang, line, col) ;
- return false;
+
+ boolean hasLang = lang != null && !lang.equals("") ;
+ if ( !hasLang ) {
+ // Datatype check (and RDF 1.0 simpl literals are always well
+ // formed)
+ if ( datatype != null )
+ return validateByDatatype(lexicalForm, datatype, handler, line, col) ;
+ return true ;
+ }
+
+ // Has a language.
+ if ( JenaRuntime.isRDF11 ) {
+ if ( datatype != null && !Objects.equals(datatype.getURI(), NodeConst.rdfLangString.getURI()) ) {
+ handler.error("Literal has language but wrong datatype", line, col) ;
+ return false ;
+ }
+ } else {
+ if ( datatype != null ) {
+ handler.error("Literal has datatype and language", line, col) ;
+ return false ;
}
}
-
+
+ // Test language tag format -- not a perfect test.
+ if ( !lang.isEmpty() && !langPattern.matcher(lang).matches() ) {
+ handler.warning("Language not valid: " + lang, line, col) ;
+ return false ;
+ }
return true ;
}
- protected static boolean validateByDatatype(String lexicalForm, RDFDatatype datatype, ErrorHandler handler, long line, long col)
- {
- // XXX Reconsider.
- if ( SysRIOT.StrictXSDLexicialForms )
- {
- if ( datatype instanceof XSDBaseNumericType || datatype instanceof XSDFloat || datatype instanceof XSDDouble )
+ protected static boolean validateByDatatype(String lexicalForm, RDFDatatype datatype, ErrorHandler handler, long line, long col) {
+ if ( SysRIOT.StrictXSDLexicialForms ) {
+ if ( datatype instanceof XSDBaseNumericType || datatype instanceof XSDFloat
+ || datatype instanceof XSDDouble )
return validateByDatatypeNumeric(lexicalForm, datatype, handler, line, col) ;
if ( datatype instanceof XSDAbstractDateTimeType )
return validateByDatatypeDateTime(lexicalForm, datatype, handler, line, col) ;
@@ -120,30 +118,46 @@ public class CheckerLiterals implements NodeChecker
return validateByDatatypeJena(lexicalForm, datatype, handler, line, col) ;
}
- protected static boolean validateByDatatypeJena(String lexicalForm, RDFDatatype datatype, ErrorHandler handler, long line, long col)
- {
+ protected static boolean validateByDatatypeJena(String lexicalForm, RDFDatatype datatype, ErrorHandler handler,
+ long line, long col) {
if ( datatype.isValid(lexicalForm) )
- return true ;
- handler.warning("Lexical form '"+lexicalForm+"' not valid for datatype "+datatype.getURI(), line, col) ;
+ return true ;
+ handler.warning("Lexical form '" + lexicalForm + "' not valid for datatype " + datatype.getURI(), line, col) ;
return false ;
}
-
- protected static boolean validateByDatatypeDateTime(String lexicalForm, RDFDatatype datatype, ErrorHandler handler, long line, long col)
- {
- if ( lexicalForm.contains(" ") ) { handler.warning("Whitespace in XSD date or time literal: '"+lexicalForm+"'", line, col) ; return false ; }
- if ( lexicalForm.contains("\n") ) { handler.warning("Newline in XSD date or time literal: '"+lexicalForm+"'", line, col) ; return false ; }
- if ( lexicalForm.contains("\r") ) { handler.warning("Newline in XSD date or time literal: '"+lexicalForm+"'", line, col) ; return false ; }
- //if ( ! StrictXSDLexicialForms )
+
+ protected static boolean validateByDatatypeDateTime(String lexicalForm, RDFDatatype datatype, ErrorHandler handler, long line, long col) {
+ if ( lexicalForm.contains(" ") ) {
+ handler.warning("Whitespace in XSD date or time literal: '" + lexicalForm + "'", line, col) ;
+ return false ;
+ }
+ if ( lexicalForm.contains("\n") ) {
+ handler.warning("Newline in XSD date or time literal: '" + lexicalForm + "'", line, col) ;
+ return false ;
+ }
+ if ( lexicalForm.contains("\r") ) {
+ handler.warning("Newline in XSD date or time literal: '" + lexicalForm + "'", line, col) ;
+ return false ;
+ }
+ // if ( ! StrictXSDLexicialForms )
// Jena is already strict.
return validateByDatatypeJena(lexicalForm, datatype, handler, line, col) ;
}
-
- protected static boolean validateByDatatypeNumeric(String lexicalForm, RDFDatatype datatype, ErrorHandler handler, long line, long col)
- {
+
+ protected static boolean validateByDatatypeNumeric(String lexicalForm, RDFDatatype datatype, ErrorHandler handler, long line, long col) {
// Do a white space check as well for numerics.
- if ( lexicalForm.contains(" ") ) { handler.warning("Whitespace in numeric XSD literal: '"+lexicalForm+"'", line, col) ; return false ; }
- if ( lexicalForm.contains("\n") ) { handler.warning("Newline in numeric XSD literal: '"+lexicalForm+"'", line, col) ; return false ; }
- if ( lexicalForm.contains("\r") ) { handler.warning("Carriage return in numeric XSD literal: '"+lexicalForm+"'", line, col) ; return false ; }
+ if ( lexicalForm.contains(" ") ) {
+ handler.warning("Whitespace in numeric XSD literal: '" + lexicalForm + "'", line, col) ;
+ return false ;
+ }
+ if ( lexicalForm.contains("\n") ) {
+ handler.warning("Newline in numeric XSD literal: '" + lexicalForm + "'", line, col) ;
+ return false ;
+ }
+ if ( lexicalForm.contains("\r") ) {
+ handler.warning("Carriage return in numeric XSD literal: '" + lexicalForm + "'", line, col) ;
+ return false ;
+ }
// if ( lit.getDatatype() instanceof XSDAbstractDateTimeType )
// {
[4/6] jena git commit: Use JDK string replacement.
Posted by an...@apache.org.
Use JDK string replacement.
Project: http://git-wip-us.apache.org/repos/asf/jena/repo
Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/d7532127
Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/d7532127
Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/d7532127
Branch: refs/heads/master
Commit: d7532127806a10a5f651418229f6aea290f79243
Parents: 9647622
Author: Andy Seaborne <an...@apache.org>
Authored: Sat Nov 22 17:32:52 2014 +0000
Committer: Andy Seaborne <an...@apache.org>
Committed: Sat Nov 22 17:32:52 2014 +0000
----------------------------------------------------------------------
.../java/com/hp/hpl/jena/rdf/model/impl/Util.java | 16 ++--------------
1 file changed, 2 insertions(+), 14 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jena/blob/d7532127/jena-core/src/main/java/com/hp/hpl/jena/rdf/model/impl/Util.java
----------------------------------------------------------------------
diff --git a/jena-core/src/main/java/com/hp/hpl/jena/rdf/model/impl/Util.java b/jena-core/src/main/java/com/hp/hpl/jena/rdf/model/impl/Util.java
index 623174a..7b4b385 100644
--- a/jena-core/src/main/java/com/hp/hpl/jena/rdf/model/impl/Util.java
+++ b/jena-core/src/main/java/com/hp/hpl/jena/rdf/model/impl/Util.java
@@ -185,20 +185,8 @@ public class Util extends Object {
}
}
- public static String replace(
- String s,
- String oldString,
- String newString) {
- String result = "";
- int length = oldString.length();
- int pos = s.indexOf(oldString);
- int lastPos = 0;
- while (pos >= 0) {
- result = result + s.substring(lastPos, pos) + newString;
- lastPos = pos + length;
- pos = s.indexOf(oldString, lastPos);
- }
- return result + s.substring(lastPos, s.length());
+ public static String replace(String s, String oldString, String newString) {
+ return s.replace(oldString, newString) ;
}
/** Return true if the literal should be written as a string, without datatype or lang. (RDF 1.0 and RDF 1.1) */
[3/6] jena git commit: JENA-816 : SPARQL for RDF 1.1 : "Argument
Compatibility Rules"
Posted by an...@apache.org.
JENA-816 : SPARQL for RDF 1.1 : "Argument Compatibility Rules"
Project: http://git-wip-us.apache.org/repos/asf/jena/repo
Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/96476222
Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/96476222
Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/96476222
Branch: refs/heads/master
Commit: 96476222d3bd9dd8c59e7e5ccde586fd3b124a7e
Parents: 707ecb9
Author: Andy Seaborne <an...@apache.org>
Authored: Sat Nov 22 17:31:52 2014 +0000
Committer: Andy Seaborne <an...@apache.org>
Committed: Sat Nov 22 17:31:52 2014 +0000
----------------------------------------------------------------------
.../hpl/jena/sparql/expr/nodevalue/NodeFunctions.java | 12 ++++++++++--
.../com/hp/hpl/jena/sparql/expr/TestNodeFunctions.java | 13 +++++--------
.../com/hp/hpl/jena/sparql/expr/TestNodeValue.java | 10 +++++++---
3 files changed, 22 insertions(+), 13 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jena/blob/96476222/jena-arq/src/main/java/com/hp/hpl/jena/sparql/expr/nodevalue/NodeFunctions.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/main/java/com/hp/hpl/jena/sparql/expr/nodevalue/NodeFunctions.java b/jena-arq/src/main/java/com/hp/hpl/jena/sparql/expr/nodevalue/NodeFunctions.java
index 94013ff..ff52250 100644
--- a/jena-arq/src/main/java/com/hp/hpl/jena/sparql/expr/nodevalue/NodeFunctions.java
+++ b/jena-arq/src/main/java/com/hp/hpl/jena/sparql/expr/nodevalue/NodeFunctions.java
@@ -30,11 +30,13 @@ import org.apache.jena.atlas.logging.Log ;
import org.apache.jena.iri.IRI ;
import org.apache.jena.iri.IRIFactory ;
import org.apache.jena.iri.Violation ;
+
import com.hp.hpl.jena.sparql.expr.ExprEvalException ;
import com.hp.hpl.jena.sparql.expr.ExprTypeException ;
import com.hp.hpl.jena.sparql.expr.NodeValue ;
import com.hp.hpl.jena.sparql.graph.NodeConst ;
import com.hp.hpl.jena.sparql.util.FmtUtils ;
+import com.hp.hpl.jena.sparql.util.NodeUtils ;
import com.hp.hpl.jena.vocabulary.XSD ;
/**
@@ -52,9 +54,15 @@ public class NodeFunctions {
Node n = nv.asNode() ;
if ( !n.isLiteral() )
throw new ExprEvalException(label + ": Not a literal: " + nv) ;
- RDFDatatype dt = n.getLiteralDatatype() ;
String lang = n.getLiteralLanguage() ;
-
+
+ if ( NodeUtils.isLangString(n) )
+ // Language tag. Legal.
+ return n ;
+
+ // No language tag : either no datatype or a datatype of xsd:string
+ // Special case : rdf:langString and no language ==> Illegal
+ RDFDatatype dt = n.getLiteralDatatype() ;
if ( dt != null && !dt.equals(XSDDatatype.XSDstring) )
throw new ExprEvalException(label + ": Not a string literal: " + nv) ;
return n ;
http://git-wip-us.apache.org/repos/asf/jena/blob/96476222/jena-arq/src/test/java/com/hp/hpl/jena/sparql/expr/TestNodeFunctions.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/test/java/com/hp/hpl/jena/sparql/expr/TestNodeFunctions.java b/jena-arq/src/test/java/com/hp/hpl/jena/sparql/expr/TestNodeFunctions.java
index 3e0bd4e..af59b16 100644
--- a/jena-arq/src/test/java/com/hp/hpl/jena/sparql/expr/TestNodeFunctions.java
+++ b/jena-arq/src/test/java/com/hp/hpl/jena/sparql/expr/TestNodeFunctions.java
@@ -21,6 +21,7 @@ package com.hp.hpl.jena.sparql.expr ;
import org.apache.jena.atlas.junit.BaseTest ;
import org.junit.Test ;
+import com.hp.hpl.jena.JenaRuntime ;
import com.hp.hpl.jena.datatypes.xsd.XSDDatatype ;
import com.hp.hpl.jena.graph.Node ;
import com.hp.hpl.jena.graph.NodeFactory ;
@@ -32,13 +33,6 @@ public class TestNodeFunctions extends BaseTest {
private static final double accuracyExact = 0.0d ;
private static final double accuracyClose = 0.000001d ;
- // public static TestSuite suite()
- // {
- // TestSuite ts = new TestSuite(TestNodeFunctions.class) ;
- // ts.setName(Utils.classShortName(TestNodeFunctions.class)) ;
- // return ts ;
- // }
-
@Test public void testSameTerm1() {
Node n1 = NodeFactory.createLiteral("xyz") ;
Node n2 = NodeFactory.createLiteral("xyz") ;
@@ -60,7 +54,10 @@ public class TestNodeFunctions extends BaseTest {
@Test public void testSameTerm4() {
Node n1 = NodeFactory.createLiteral("xyz") ;
Node n2 = NodeFactory.createLiteral("xyz", null, XSDDatatype.XSDstring) ;
- assertFalse(NodeFunctions.sameTerm(n1, n2)) ;
+ if ( JenaRuntime.isRDF11 )
+ assertTrue(NodeFunctions.sameTerm(n1, n2)) ;
+ else
+ assertFalse(NodeFunctions.sameTerm(n1, n2)) ;
}
@Test public void testSameTerm5() {
http://git-wip-us.apache.org/repos/asf/jena/blob/96476222/jena-arq/src/test/java/com/hp/hpl/jena/sparql/expr/TestNodeValue.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/test/java/com/hp/hpl/jena/sparql/expr/TestNodeValue.java b/jena-arq/src/test/java/com/hp/hpl/jena/sparql/expr/TestNodeValue.java
index 83b323b..f6d1296 100644
--- a/jena-arq/src/test/java/com/hp/hpl/jena/sparql/expr/TestNodeValue.java
+++ b/jena-arq/src/test/java/com/hp/hpl/jena/sparql/expr/TestNodeValue.java
@@ -26,6 +26,7 @@ import java.util.TimeZone ;
import org.apache.jena.atlas.junit.BaseTest ;
import org.junit.Test ;
+import com.hp.hpl.jena.JenaRuntime ;
import com.hp.hpl.jena.datatypes.xsd.XSDDatatype ;
import com.hp.hpl.jena.graph.Node ;
import com.hp.hpl.jena.sparql.expr.nodevalue.XSDFuncOp ;
@@ -630,9 +631,12 @@ public class TestNodeValue extends BaseTest
assertTrue("Not a string: "+v, v.isString()) ;
assertTrue("Not a node: "+v, v.hasNode()) ;
String actualStr = v.asQuotedString() ;
- assertEquals("Print form mismatch",
- "\"string\"^^<"+XSDDatatype.XSDstring.getURI()+">",
- actualStr) ;
+ String rightAnswer = JenaRuntime.isRDF11
+ // RDF 1.1 -- appearance is a without ^^
+ ? "\"string\""
+ : "\"string\"^^<"+XSDDatatype.XSDstring.getURI()+">" ;
+
+ assertEquals("Print form mismatch", rightAnswer, actualStr) ;
}
// TODO testSameValueDecimal tests
[5/6] jena git commit: Escape \" in LiteralLabel.toString.
Posted by an...@apache.org.
Escape \" in LiteralLabel.toString.
Project: http://git-wip-us.apache.org/repos/asf/jena/repo
Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/2111efcf
Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/2111efcf
Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/2111efcf
Branch: refs/heads/master
Commit: 2111efcf4ed6e378fe8491872e54ce3868c5f509
Parents: d753212
Author: Andy Seaborne <an...@apache.org>
Authored: Sat Nov 22 17:33:18 2014 +0000
Committer: Andy Seaborne <an...@apache.org>
Committed: Sat Nov 22 17:33:18 2014 +0000
----------------------------------------------------------------------
.../hpl/jena/graph/impl/LiteralLabelImpl.java | 24 ++++++++++++++------
1 file changed, 17 insertions(+), 7 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jena/blob/2111efcf/jena-core/src/main/java/com/hp/hpl/jena/graph/impl/LiteralLabelImpl.java
----------------------------------------------------------------------
diff --git a/jena-core/src/main/java/com/hp/hpl/jena/graph/impl/LiteralLabelImpl.java b/jena-core/src/main/java/com/hp/hpl/jena/graph/impl/LiteralLabelImpl.java
index 97d6015..cb8be15 100644
--- a/jena-core/src/main/java/com/hp/hpl/jena/graph/impl/LiteralLabelImpl.java
+++ b/jena-core/src/main/java/com/hp/hpl/jena/graph/impl/LiteralLabelImpl.java
@@ -24,9 +24,11 @@ import java.util.Objects ;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import com.hp.hpl.jena.JenaRuntime ;
import com.hp.hpl.jena.datatypes.*;
import com.hp.hpl.jena.datatypes.xsd.*;
import com.hp.hpl.jena.datatypes.xsd.impl.*;
+import com.hp.hpl.jena.rdf.model.impl.Util ;
import com.hp.hpl.jena.shared.impl.JenaParameters;
/**
@@ -267,13 +269,21 @@ final /*public*/ class LiteralLabelImpl implements LiteralLabel {
*/
@Override
public String toString(boolean quoting) {
- StringBuilder b = new StringBuilder();
- if (quoting) b.append('"');
- b.append(getLexicalForm());
- if (quoting) b.append('"');
- if (lang != null && !lang.equals( "" )) b.append( "@" ).append(lang);
- if (dtype != null) b.append( "^^" ).append(dtype.getURI());
- return b.toString();
+ StringBuilder b = new StringBuilder() ;
+ if ( quoting )
+ b.append('"') ;
+ String lex = getLexicalForm() ;
+ lex = Util.replace(lex, "\"", "\\\"") ;
+ b.append(lex) ;
+ if ( quoting )
+ b.append('"') ;
+ if ( lang != null && !lang.equals("") )
+ b.append("@").append(lang) ;
+ else if ( dtype != null ) {
+ if ( ! ( JenaRuntime.isRDF11 && dtype.equals(XSDDatatype.XSDstring) ) )
+ b.append("^^").append(dtype.getURI()) ;
+ }
+ return b.toString() ;
}
@Override
[6/6] jena git commit: Remove rather old comment item.
Posted by an...@apache.org.
Remove rather old comment item.
Project: http://git-wip-us.apache.org/repos/asf/jena/repo
Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/a1f70e02
Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/a1f70e02
Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/a1f70e02
Branch: refs/heads/master
Commit: a1f70e0277d3e8675323e69d2b44f9e7f035c1ae
Parents: 2111efc
Author: Andy Seaborne <an...@apache.org>
Authored: Sun Nov 23 11:03:52 2014 +0000
Committer: Andy Seaborne <an...@apache.org>
Committed: Sun Nov 23 11:03:52 2014 +0000
----------------------------------------------------------------------
.../src/main/java/com/hp/hpl/jena/datatypes/xsd/XSDDatatype.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jena/blob/a1f70e02/jena-core/src/main/java/com/hp/hpl/jena/datatypes/xsd/XSDDatatype.java
----------------------------------------------------------------------
diff --git a/jena-core/src/main/java/com/hp/hpl/jena/datatypes/xsd/XSDDatatype.java b/jena-core/src/main/java/com/hp/hpl/jena/datatypes/xsd/XSDDatatype.java
index 0048c44..21d9839 100644
--- a/jena-core/src/main/java/com/hp/hpl/jena/datatypes/xsd/XSDDatatype.java
+++ b/jena-core/src/main/java/com/hp/hpl/jena/datatypes/xsd/XSDDatatype.java
@@ -285,7 +285,7 @@ public class XSDDatatype extends BaseDatatype {
/**
* Compares two instances of values of the given datatype.
* This ignores lang tags and defers to the equality function
- * defined by the Xerces package - to be checked.
+ * defined by the Xerces package.
*/
@Override
public boolean isEqual(LiteralLabel value1, LiteralLabel value2) {