Author: sallen
Date: Wed Apr 23 20:19:53 2014
New Revision: 1589509
URL: http://svn.apache.org/r1589509
Log:
JENA-688 Update N-Triples and N-Quad parsers to UTF-8 instead of ASCII to match
RDF 1.1 W3C Recommendation in all cases
Modified:
jena/trunk/jena-arq/ReleaseNotes.txt
jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/RiotReader.java
jena/trunk/jena-arq/src/main/java/org/openjena/riot/RiotReader.java
jena/trunk/jena-arq/src/test/java/org/apache/jena/riot/TestRiotReader.java
jena/trunk/jena-arq/src/test/java/org/apache/jena/riot/lang/TestLangNTriples.java
jena/trunk/jena-arq/src/test/java/org/apache/jena/riot/lang/TestLangNTuples.java
Modified: jena/trunk/jena-arq/ReleaseNotes.txt
URL:
http://svn.apache.org/viewvc/jena/trunk/jena-arq/ReleaseNotes.txt?rev=1589509&r1=1589508&r2=1589509&view=diff
==============================================================================
--- jena/trunk/jena-arq/ReleaseNotes.txt (original)
+++ jena/trunk/jena-arq/ReleaseNotes.txt Wed Apr 23 20:19:53 2014
@@ -8,6 +8,7 @@ ChangeLog for ARQ
+ JENA-638 : Improve coverage of TopN optimziation
+ JENA-634 : Add JSON-LD
+ JENA-518 : Add getter/setter for the error handler to ReaderRIOT.
++ JENA-688 : Update N-Triples and N-Quad parsers to UTF-8 instead of ASCII to
match RDF 1.1 W3C Recommendation in all cases
==== Jena 2.11.1
Modified: jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/RiotReader.java
URL:
http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/RiotReader.java?rev=1589509&r1=1589508&r2=1589509&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/RiotReader.java
(original)
+++ jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/RiotReader.java Wed
Apr 23 20:19:53 2014
@@ -391,7 +391,7 @@ public class RiotReader
@Deprecated
public static LangNTriples createParserNTriples(InputStream input,
StreamRDF dest)
{
- Tokenizer tokenizer = TokenizerFactory.makeTokenizerASCII(input) ;
+ Tokenizer tokenizer = TokenizerFactory.makeTokenizerUTF8(input) ;
return createParserNTriples(tokenizer, dest) ;
}
@@ -408,7 +408,7 @@ public class RiotReader
@Deprecated
public static LangNQuads createParserNQuads(InputStream input, StreamRDF
dest)
{
- Tokenizer tokenizer = TokenizerFactory.makeTokenizerASCII(input) ;
+ Tokenizer tokenizer = TokenizerFactory.makeTokenizerUTF8(input) ;
return createParserNQuads(tokenizer, dest) ;
}
Modified: jena/trunk/jena-arq/src/main/java/org/openjena/riot/RiotReader.java
URL:
http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/main/java/org/openjena/riot/RiotReader.java?rev=1589509&r1=1589508&r2=1589509&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/main/java/org/openjena/riot/RiotReader.java
(original)
+++ jena/trunk/jena-arq/src/main/java/org/openjena/riot/RiotReader.java Wed Apr
23 20:19:53 2014
@@ -335,7 +335,7 @@ public class RiotReader
/** Create a parser for N-Triples, with default behaviour */
public static LangNTriples createParserNTriples(InputStream input,
StreamRDF dest)
{
- Tokenizer tokenizer = TokenizerFactory.makeTokenizerASCII(input) ;
+ Tokenizer tokenizer = TokenizerFactory.makeTokenizerUTF8(input) ;
return createParserNTriples(tokenizer, dest) ;
}
@@ -349,7 +349,7 @@ public class RiotReader
/** Create a parser for NQuads, with default behaviour */
public static LangNQuads createParserNQuads(InputStream input, StreamRDF
dest)
{
- Tokenizer tokenizer = TokenizerFactory.makeTokenizerASCII(input) ;
+ Tokenizer tokenizer = TokenizerFactory.makeTokenizerUTF8(input) ;
return createParserNQuads(tokenizer, dest) ;
}
Modified:
jena/trunk/jena-arq/src/test/java/org/apache/jena/riot/TestRiotReader.java
URL:
http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/test/java/org/apache/jena/riot/TestRiotReader.java?rev=1589509&r1=1589508&r2=1589509&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/test/java/org/apache/jena/riot/TestRiotReader.java
(original)
+++ jena/trunk/jena-arq/src/test/java/org/apache/jena/riot/TestRiotReader.java
Wed Apr 23 20:19:53 2014
@@ -24,6 +24,7 @@ import static org.junit.Assert.assertNot
import static org.junit.Assert.assertTrue ;
import java.io.ByteArrayInputStream ;
+import java.io.UnsupportedEncodingException ;
import java.util.Iterator ;
import org.apache.jena.atlas.lib.StrUtils ;
@@ -34,14 +35,32 @@ import com.hp.hpl.jena.graph.Triple ;
public class TestRiotReader
{
@Test
- public void testCreateIteratorTriples_01()
+ public void testCreateIteratorTriples_01() throws
UnsupportedEncodingException
{
- Iterator<Triple> it = RiotReader.createIteratorTriples(new
ByteArrayInputStream("".getBytes()), RDFLanguages.NTRIPLES, "http://example/");
+ Iterator<Triple> it = RiotReader.createIteratorTriples(new
ByteArrayInputStream("".getBytes("UTF-8")), RDFLanguages.NTRIPLES,
"http://example/");
assertFalse(it.hasNext());
}
@Test
+ public void testEncodedUTF8() throws UnsupportedEncodingException
+ {
+ Iterator<Triple> it = RiotReader.createIteratorTriples(new
ByteArrayInputStream("<a> <b> \"\\u263A\" .".getBytes("UTF-8")),
RDFLanguages.NTRIPLES, null);
+
+ assertTrue(it.hasNext());
+ assertEquals("âº", it.next().getObject().getLiteralLexicalForm());
+ }
+
+ @Test
+ public void testRawUTF8() throws UnsupportedEncodingException
+ {
+ Iterator<Triple> it = RiotReader.createIteratorTriples(new
ByteArrayInputStream("<a> <b> \"âº\" .".getBytes("UTF-8")),
RDFLanguages.NTRIPLES, null);
+
+ assertTrue(it.hasNext());
+ assertEquals("âº", it.next().getObject().getLiteralLexicalForm());
+ }
+
+ @Test
public void testCreateIteratorTriples_02()
{
String x = StrUtils.strjoinNL(
Modified:
jena/trunk/jena-arq/src/test/java/org/apache/jena/riot/lang/TestLangNTriples.java
URL:
http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/test/java/org/apache/jena/riot/lang/TestLangNTriples.java?rev=1589509&r1=1589508&r2=1589509&view=diff
==============================================================================
---
jena/trunk/jena-arq/src/test/java/org/apache/jena/riot/lang/TestLangNTriples.java
(original)
+++
jena/trunk/jena-arq/src/test/java/org/apache/jena/riot/lang/TestLangNTriples.java
Wed Apr 23 20:19:53 2014
@@ -23,7 +23,6 @@ import java.io.StringReader ;
import org.apache.jena.atlas.lib.StrUtils ;
import org.apache.jena.riot.RDFLanguages ;
import org.apache.jena.riot.RDFDataMgr ;
-import org.apache.jena.riot.RiotException ;
import org.apache.jena.riot.RiotReader ;
import org.apache.jena.riot.ErrorHandlerTestLib.ErrorHandlerEx ;
import org.apache.jena.riot.ErrorHandlerTestLib.ExFatal ;
@@ -84,7 +83,7 @@ public class TestLangNTriples extends Te
parseCount("@base <http://example/> . <x> <p> <s> .") ;
}
- @Test(expected=RiotException.class)
+ @Test
public void nt_only_5()
{
parseCount("<x> <p> \"é\" .") ;
Modified:
jena/trunk/jena-arq/src/test/java/org/apache/jena/riot/lang/TestLangNTuples.java
URL:
http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/test/java/org/apache/jena/riot/lang/TestLangNTuples.java?rev=1589509&r1=1589508&r2=1589509&view=diff
==============================================================================
---
jena/trunk/jena-arq/src/test/java/org/apache/jena/riot/lang/TestLangNTuples.java
(original)
+++
jena/trunk/jena-arq/src/test/java/org/apache/jena/riot/lang/TestLangNTuples.java
Wed Apr 23 20:19:53 2014
@@ -151,7 +151,7 @@ abstract public class TestLangNTuples ex
parseCheck("<http://example/x\\u00E9> <http://example/p>
<http://example/s> .") ;
}
- @Test(expected=RiotException.class)
+ @Test
public void tuple_charset_2()
{
parseCheck("<http://example/é> <http://example/p> \"é\" .") ;
@@ -159,11 +159,10 @@ abstract public class TestLangNTuples ex
static protected Tokenizer tokenizer(String string)
{
- //Tokenizer tokenizer = TokenizerFactory.makeTokenizerString(string) ;
- // ASCII
+ // UTF-8
byte b[] = StrUtils.asUTF8bytes(string) ;
ByteArrayInputStream in = new ByteArrayInputStream(b) ;
- Tokenizer tokenizer = TokenizerFactory.makeTokenizerASCII(in) ;
+ Tokenizer tokenizer = TokenizerFactory.makeTokenizerUTF8(in) ;
return tokenizer ;
}