You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jena.apache.org by os...@apache.org on 2016/05/03 12:23:44 UTC

[1/2] jena git commit: JENA-1172: failing unit test (assumes blank node support will be implemented)

Repository: jena
Updated Branches:
  refs/heads/master 85371cf20 -> 01ec64590


JENA-1172: failing unit test (assumes blank node support will be implemented)


Project: http://git-wip-us.apache.org/repos/asf/jena/repo
Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/b793fcc9
Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/b793fcc9
Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/b793fcc9

Branch: refs/heads/master
Commit: b793fcc9c3ff8ab44d418f5afe456d3dafd4d1e7
Parents: 85371cf
Author: Osma Suominen <os...@apache.org>
Authored: Mon May 2 10:41:56 2016 +0300
Committer: Osma Suominen <os...@apache.org>
Committed: Mon May 2 10:41:56 2016 +0300

----------------------------------------------------------------------
 .../org/apache/jena/query/text/TestTextTDB.java | 21 ++++++++++++++++++++
 1 file changed, 21 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/jena/blob/b793fcc9/jena-text/src/test/java/org/apache/jena/query/text/TestTextTDB.java
----------------------------------------------------------------------
diff --git a/jena-text/src/test/java/org/apache/jena/query/text/TestTextTDB.java b/jena-text/src/test/java/org/apache/jena/query/text/TestTextTDB.java
index 2327b1a..d9f605a 100644
--- a/jena-text/src/test/java/org/apache/jena/query/text/TestTextTDB.java
+++ b/jena-text/src/test/java/org/apache/jena/query/text/TestTextTDB.java
@@ -200,6 +200,27 @@ public class TestTextTDB extends BaseTest
         assertEquals(1,x.size());
     }
 
+    @Test public void textDB_8_bnode_subject() {
+        Dataset ds = create() ;
+        data(ds, 
+            "(<ex:g1> _:s1 rdfs:label 'foo')");
+        
+        ds.begin(ReadWrite.READ) ;
+        String qs = StrUtils.strjoinNL(
+            "PREFIX text:   <http://jena.apache.org/text#>",
+            "PREFIX rdfs:   <http://www.w3.org/2000/01/rdf-schema#>",
+            "SELECT *",
+            "FROM <ex:g1>",
+            "{ ?s text:query 'foo' }"
+            ) ;
+        Query q = QueryFactory.create(qs) ;
+        QueryExecution qexec = QueryExecutionFactory.create(q, ds) ;
+        ResultSet rs = qexec.execSelect() ;
+        List<QuerySolution> x = Iter.toList(rs) ;
+        ds.end() ;
+        assertEquals(1,x.size());
+    }
+
     private static void data(Dataset ds, String... quadStrs) {
         for ( String qs : quadStrs ) {
             Quad quad = SSE.parseQuad(qs) ;


[2/2] jena git commit: JENA-1172: restore support for blank nodes in jena-text

Posted by os...@apache.org.
JENA-1172: restore support for blank nodes in jena-text


Project: http://git-wip-us.apache.org/repos/asf/jena/repo
Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/01ec6459
Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/01ec6459
Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/01ec6459

Branch: refs/heads/master
Commit: 01ec64590867be3ce377bdf509c2f88a2f1e70c3
Parents: b793fcc
Author: Osma Suominen <os...@apache.org>
Authored: Mon May 2 11:24:30 2016 +0300
Committer: Osma Suominen <os...@apache.org>
Committed: Mon May 2 11:24:30 2016 +0300

----------------------------------------------------------------------
 .../org/apache/jena/query/text/TextQueryPF.java |  9 +---
 .../org/apache/jena/query/text/TestTextTDB.java | 46 ++++++++++++++++++--
 2 files changed, 44 insertions(+), 11 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/jena/blob/01ec6459/jena-text/src/main/java/org/apache/jena/query/text/TextQueryPF.java
----------------------------------------------------------------------
diff --git a/jena-text/src/main/java/org/apache/jena/query/text/TextQueryPF.java b/jena-text/src/main/java/org/apache/jena/query/text/TextQueryPF.java
index 3f76d04..323ffe1 100644
--- a/jena-text/src/main/java/org/apache/jena/query/text/TextQueryPF.java
+++ b/jena-text/src/main/java/org/apache/jena/query/text/TextQueryPF.java
@@ -232,18 +232,13 @@ public class TextQueryPF extends PropertyFunctionBase {
     }
 
     private QueryIterator concreteSubject(Binding binding, Node s, Node score, Node literal, StrMatch match, ExecutionContext execCxt) {
-        if (!s.isURI()) {
-            log.warn("Subject not a URI: " + s) ;
-            return IterLib.noResults(execCxt) ;
-        }
-
         String qs = match.getQueryString() ;
         ListMultimap<String,TextHit> x = query(match.getProperty(), match.getQueryString(), -1, execCxt) ;
         
         if ( x == null ) // null return value - empty result
             return IterLib.noResults(execCxt) ;
         
-        List<TextHit> r = x.get(s.getURI());
+        List<TextHit> r = x.get(TextQueryFuncs.subjectToString(s));
 
         return resultsToQueryIterator(binding, s, score, literal, r, execCxt);
     }
@@ -292,7 +287,7 @@ public class TextQueryPF extends PropertyFunctionBase {
             List<TextHit> resultList = textIndex.query(property, queryStr, limit) ;
             ListMultimap<String,TextHit> resultMultimap = LinkedListMultimap.create();
             for (TextHit result : resultList) {
-                resultMultimap.put(result.getNode().getURI(), result);
+                resultMultimap.put(TextQueryFuncs.subjectToString(result.getNode()), result);
             }
             return resultMultimap;
         });

http://git-wip-us.apache.org/repos/asf/jena/blob/01ec6459/jena-text/src/test/java/org/apache/jena/query/text/TestTextTDB.java
----------------------------------------------------------------------
diff --git a/jena-text/src/test/java/org/apache/jena/query/text/TestTextTDB.java b/jena-text/src/test/java/org/apache/jena/query/text/TestTextTDB.java
index d9f605a..502ec8d 100644
--- a/jena-text/src/test/java/org/apache/jena/query/text/TestTextTDB.java
+++ b/jena-text/src/test/java/org/apache/jena/query/text/TestTextTDB.java
@@ -18,12 +18,15 @@
 
 package org.apache.jena.query.text;
 
+import java.io.Reader;
+import java.io.StringReader;
 import java.util.List ;
 
 import org.apache.jena.atlas.iterator.Iter ;
 import org.apache.jena.atlas.junit.BaseTest ;
 import org.apache.jena.atlas.lib.StrUtils ;
 import org.apache.jena.query.* ;
+import org.apache.jena.rdf.model.Model ;
 import org.apache.jena.sparql.core.Quad ;
 import org.apache.jena.sparql.sse.SSE ;
 import org.apache.jena.tdb.TDB ;
@@ -202,16 +205,43 @@ public class TestTextTDB extends BaseTest
 
     @Test public void textDB_8_bnode_subject() {
         Dataset ds = create() ;
-        data(ds, 
-            "(<ex:g1> _:s1 rdfs:label 'foo')");
+        dataTurtle(ds,
+            StrUtils.strjoinNL(
+                "PREFIX rdfs:   <http://www.w3.org/2000/01/rdf-schema#>",
+                "[] a <http://example.org/Entity>; rdfs:label 'foo' ."
+            )
+        );
         
         ds.begin(ReadWrite.READ) ;
         String qs = StrUtils.strjoinNL(
             "PREFIX text:   <http://jena.apache.org/text#>",
             "PREFIX rdfs:   <http://www.w3.org/2000/01/rdf-schema#>",
             "SELECT *",
-            "FROM <ex:g1>",
-            "{ ?s text:query 'foo' }"
+            "{ ?s text:query 'foo' . ?s a <http://example.org/Entity> }"
+            ) ;
+        Query q = QueryFactory.create(qs) ;
+        QueryExecution qexec = QueryExecutionFactory.create(q, ds) ;
+        ResultSet rs = qexec.execSelect() ;
+        List<QuerySolution> x = Iter.toList(rs) ;
+        ds.end() ;
+        assertEquals(1,x.size());
+    }
+
+    @Test public void textDB_9_bnode_subject_bound_first() {
+        Dataset ds = create() ;
+        dataTurtle(ds,
+            StrUtils.strjoinNL(
+                "PREFIX rdfs:   <http://www.w3.org/2000/01/rdf-schema#>",
+                "[] a <http://example.org/Entity>; rdfs:label 'foo' ."
+            )
+        );
+        
+        ds.begin(ReadWrite.READ) ;
+        String qs = StrUtils.strjoinNL(
+            "PREFIX text:   <http://jena.apache.org/text#>",
+            "PREFIX rdfs:   <http://www.w3.org/2000/01/rdf-schema#>",
+            "SELECT *",
+            "{ ?s a <http://example.org/Entity> . ?s text:query 'foo' }"
             ) ;
         Query q = QueryFactory.create(qs) ;
         QueryExecution qexec = QueryExecutionFactory.create(q, ds) ;
@@ -227,6 +257,14 @@ public class TestTextTDB extends BaseTest
             ds.asDatasetGraph().add(quad) ;
         }
     }
+
+    private static void dataTurtle(Dataset ds, String turtle) {
+        Model model = ds.getDefaultModel();
+        Reader reader = new StringReader(turtle);
+        ds.begin(ReadWrite.WRITE);
+        model.read(reader, "", "TURTLE");
+        ds.commit();
+    }
     
     // With transactions
     // With FROM and FROM NAMED + TDB