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" .