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 2013/04/08 23:17:19 UTC
svn commit: r1465793 - in /jena/trunk/jena-core/src:
main/java/com/hp/hpl/jena/rdf/model/impl/NTripleReader.java
test/resources/TestReaders.nt
Author: andy
Date: Mon Apr 8 21:17:19 2013
New Revision: 1465793
URL: http://svn.apache.org/r1465793
Log:
JENA-431
Fix the jena-core N-Triples parser to remove historical features.
Change test data to be legal N-triples by RDF 1.1 (and RDF 2004).
Modified:
jena/trunk/jena-core/src/main/java/com/hp/hpl/jena/rdf/model/impl/NTripleReader.java
jena/trunk/jena-core/src/test/resources/TestReaders.nt
Modified: jena/trunk/jena-core/src/main/java/com/hp/hpl/jena/rdf/model/impl/NTripleReader.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-core/src/main/java/com/hp/hpl/jena/rdf/model/impl/NTripleReader.java?rev=1465793&r1=1465792&r2=1465793&view=diff
==============================================================================
--- jena/trunk/jena-core/src/main/java/com/hp/hpl/jena/rdf/model/impl/NTripleReader.java (original)
+++ jena/trunk/jena-core/src/main/java/com/hp/hpl/jena/rdf/model/impl/NTripleReader.java Mon Apr 8 21:17:19 2013
@@ -209,9 +209,7 @@ public class NTripleReader extends Objec
skipWhiteSpace();
switch (in.nextChar()) {
case '"' :
- return readLiteral(false);
- case 'x' :
- return readLiteral(true);
+ return readLiteral();
case '<' :
case '_' :
return readResource();
@@ -221,17 +219,10 @@ public class NTripleReader extends Objec
}
}
- protected Literal readLiteral(boolean wellFormed) {
+ protected Literal readLiteral() {
StringBuffer lit = new StringBuffer(sbLength);
- if (wellFormed) {
- deprecated("Use ^^rdf:XMLLiteral not xml\"literals\", .");
-
- if (!expect("xml"))
- return null;
- }
-
if (!expect("\""))
return null;
@@ -273,12 +264,7 @@ public class NTripleReader extends Objec
} else {
lang = "";
}
- if (wellFormed) {
- return model.createLiteral(
- lit.toString(),
-// "",
- wellFormed);
- } else if ('^' == in.nextChar()) {
+ if ('^' == in.nextChar()) {
String datatypeURI = null;
if (!expect("^^<")) {
syntaxError("ill-formed datatype");
@@ -288,7 +274,7 @@ public class NTripleReader extends Objec
if (datatypeURI == null || !expect(">"))
return null;
if ( lang.length() > 0 )
- deprecated("Language tags are not permitted on typed literals.");
+ deprecated("Language tags are not permitted on typed literals.");
return model.createTypedLiteral(
lit.toString(),
@@ -297,6 +283,12 @@ public class NTripleReader extends Objec
return model.createLiteral(lit.toString(), lang);
}
}
+ // Test for some raw characters
+ else if ( inChar == '\n' || inChar == '\r' )
+ {
+ deprecated("Raw NL or CR not permitted in N-Triples data") ;
+ return null ;
+ }
lit = lit.append(inChar);
}
}
Modified: jena/trunk/jena-core/src/test/resources/TestReaders.nt
URL: http://svn.apache.org/viewvc/jena/trunk/jena-core/src/test/resources/TestReaders.nt?rev=1465793&r1=1465792&r2=1465793&view=diff
==============================================================================
--- jena/trunk/jena-core/src/test/resources/TestReaders.nt (original)
+++ jena/trunk/jena-core/src/test/resources/TestReaders.nt Mon Apr 8 21:17:19 2013
@@ -15,7 +15,6 @@ _:b <http://test/p2> "foo" .
_:c <http://test/p3> "foo\"\\\n\r\tbar" .
-_:d <http://test/p4> "foo
-bar" .
+_:d <http://test/p4> "foo\u000Abar" .