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/10 21:02:55 UTC
svn commit: r1466625 - in /jena/Experimental/jena-text: ./
src/test/java/org/apache/jena/query/text/ testing/LARQ/ testing/TextQuery/
Author: andy
Date: Wed Apr 10 19:02:54 2013
New Revision: 1466625
URL: http://svn.apache.org/r1466625
Log:
Tests that match example 1.
Added:
jena/Experimental/jena-text/src/test/java/org/apache/jena/query/text/TestBuildTextDataset.java
jena/Experimental/jena-text/testing/TextQuery/
jena/Experimental/jena-text/testing/TextQuery/data1.ttl
jena/Experimental/jena-text/testing/TextQuery/text-config.ttl
Removed:
jena/Experimental/jena-text/testing/LARQ/
Modified:
jena/Experimental/jena-text/src/test/java/org/apache/jena/query/text/TS_Text.java
jena/Experimental/jena-text/src/test/java/org/apache/jena/query/text/TestDatasetWithLuceneTextIndex.java
jena/Experimental/jena-text/text-config.ttl
Modified: jena/Experimental/jena-text/src/test/java/org/apache/jena/query/text/TS_Text.java
URL: http://svn.apache.org/viewvc/jena/Experimental/jena-text/src/test/java/org/apache/jena/query/text/TS_Text.java?rev=1466625&r1=1466624&r2=1466625&view=diff
==============================================================================
--- jena/Experimental/jena-text/src/test/java/org/apache/jena/query/text/TS_Text.java (original)
+++ jena/Experimental/jena-text/src/test/java/org/apache/jena/query/text/TS_Text.java Wed Apr 10 19:02:54 2013
@@ -28,7 +28,8 @@ import org.junit.runners.Suite.SuiteClas
@RunWith(Suite.class)
@SuiteClasses({
- TestDatasetWithLuceneTextIndex.class
+ TestBuildTextDataset.class
+ , TestDatasetWithLuceneTextIndex.class
// Embedded solr only used for testing
//, TestDatasetWithEmbeddedSolrTextIndex.class
, TestSearchBeforeWriteOnDatasetWithLuceneTextIndex.class
Added: jena/Experimental/jena-text/src/test/java/org/apache/jena/query/text/TestBuildTextDataset.java
URL: http://svn.apache.org/viewvc/jena/Experimental/jena-text/src/test/java/org/apache/jena/query/text/TestBuildTextDataset.java?rev=1466625&view=auto
==============================================================================
--- jena/Experimental/jena-text/src/test/java/org/apache/jena/query/text/TestBuildTextDataset.java (added)
+++ jena/Experimental/jena-text/src/test/java/org/apache/jena/query/text/TestBuildTextDataset.java Wed Apr 10 19:02:54 2013
@@ -0,0 +1,118 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.jena.query.text;
+
+import org.apache.jena.atlas.junit.BaseTest ;
+import org.apache.jena.atlas.lib.StrUtils ;
+import org.apache.jena.riot.RDFDataMgr ;
+import org.apache.lucene.store.Directory ;
+import org.apache.lucene.store.RAMDirectory ;
+import org.junit.BeforeClass ;
+import org.junit.Test ;
+
+import com.hp.hpl.jena.query.* ;
+import com.hp.hpl.jena.rdf.model.Model ;
+import com.hp.hpl.jena.vocabulary.RDFS ;
+
+/** Test the examples of building a test dataset */
+public class TestBuildTextDataset extends BaseTest
+{
+ static final String DIR = "testing/TextQuery" ;
+
+
+ // Ensure assembler initialized.
+ @BeforeClass public static void setupClass() { TextQuery.init() ; }
+
+ @Test public void buildText_01() { createAssembler() ; }
+
+ @Test public void buildText_02() { createCode() ; }
+
+ @Test public void buildText_03()
+ {
+ Dataset ds = createAssembler() ;
+ loadData(ds) ;
+ queryData(ds) ;
+ }
+
+ @Test public void buildText_04()
+ {
+ Dataset ds = createCode() ;
+ loadData(ds) ;
+ queryData(ds) ;
+ }
+
+ private void loadData(Dataset dataset)
+ {
+ dataset.begin(ReadWrite.WRITE) ;
+ try {
+ Model m = dataset.getDefaultModel() ;
+ RDFDataMgr.read(m, DIR+"/data1.ttl") ;
+ dataset.commit() ;
+ } finally { dataset.end() ; }
+ }
+
+ public static void queryData(Dataset dataset)
+ {
+ String pre = StrUtils.strjoinNL
+ ( "PREFIX : <http://example/>"
+ , "PREFIX text: <http://jena.apache.org/text#>"
+ , "PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>") ;
+
+ String qs = StrUtils.strjoinNL
+ ( "SELECT * "
+ , " { ?s text:query (rdfs:label 'X1') ;"
+ , " rdfs:label ?label"
+ , " }") ;
+
+ dataset.begin(ReadWrite.READ) ;
+ try {
+ Query q = QueryFactory.create(pre+"\n"+qs) ;
+ QueryExecution qexec = QueryExecutionFactory.create(q , dataset) ;
+ int x = ResultSetFormatter.consume(qexec.execSelect()) ;
+ qexec.close() ;
+ assertEquals("Unexpected result count", 2, x) ;
+ } finally { dataset.end() ; }
+ }
+
+ public static Dataset createCode()
+ {
+ // Base data
+ Dataset ds1 = DatasetFactory.createMem() ;
+
+ // Define the index mapping
+ EntityDefinition entDef = new EntityDefinition("uri", "text", RDFS.label.asNode()) ;
+
+ // Lucene, in memory.
+ Directory dir = new RAMDirectory();
+
+ // Join together into a dataset
+ Dataset ds = TextDatasetFactory.createLucene(ds1, dir, entDef) ;
+
+ return ds ;
+ }
+
+ public static Dataset createAssembler()
+ {
+ Dataset ds = DatasetFactory.assemble("testing/TextQuery/text-config.ttl",
+ "http://localhost/jena_example/#text_dataset") ;
+ return ds ;
+ }
+
+}
+
Modified: jena/Experimental/jena-text/src/test/java/org/apache/jena/query/text/TestDatasetWithLuceneTextIndex.java
URL: http://svn.apache.org/viewvc/jena/Experimental/jena-text/src/test/java/org/apache/jena/query/text/TestDatasetWithLuceneTextIndex.java?rev=1466625&r1=1466624&r2=1466625&view=diff
==============================================================================
--- jena/Experimental/jena-text/src/test/java/org/apache/jena/query/text/TestDatasetWithLuceneTextIndex.java (original)
+++ jena/Experimental/jena-text/src/test/java/org/apache/jena/query/text/TestDatasetWithLuceneTextIndex.java Wed Apr 10 19:02:54 2013
@@ -18,9 +18,8 @@
package org.apache.jena.query.text;
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
-import org.junit.Test;
+import org.junit.AfterClass ;
+import org.junit.BeforeClass ;
public class TestDatasetWithLuceneTextIndex extends AbstractTestDatasetWithLuceneTextIndex {
@@ -31,29 +30,4 @@ public class TestDatasetWithLuceneTextIn
@AfterClass public static void afterClass() {
deleteOldFiles();
}
-
- @Override
- @Test public void testOneSimpleResult() {
- super.testOneSimpleResult();
- }
-
- @Override
- @Test public void testMultipleResults() {
- super.testMultipleResults();
- }
-
- @Override
- @Test public void testSearchCorrectField() {
- super.testSearchCorrectField();
- }
-
- @Override
- @Test public void testSearchDefaultField() {
- super.testSearchDefaultField();
- }
-
- @Override
- @Test public void testSearchLimitsResults() {
- super.testSearchLimitsResults();
- }
}
Added: jena/Experimental/jena-text/testing/TextQuery/data1.ttl
URL: http://svn.apache.org/viewvc/jena/Experimental/jena-text/testing/TextQuery/data1.ttl?rev=1466625&view=auto
==============================================================================
--- jena/Experimental/jena-text/testing/TextQuery/data1.ttl (added)
+++ jena/Experimental/jena-text/testing/TextQuery/data1.ttl Wed Apr 10 19:02:54 2013
@@ -0,0 +1,26 @@
+@prefix : <http://example/> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
+@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
+
+## :s a :Thing ;
+## :p :123 ;
+## rdfs:label "Thing 1" ;
+## :id 123 .
+##
+## :s1 a :Thing ;
+## :p :123 ;
+## rdfs:label "Thing 2" ;
+## :id 123 .
+##
+## :s2 a :Thing ;
+## :p :123 ;
+## rdfs:label "Whatever" ;
+## :id 123 .
+
+
+:x1 rdfs:label "X1 word" .
+:x1 rdfs:label "X1 word" .
+:x2 rdfs:label "X2 word" .
+:x3 rdfs:label "X3 word" .
+:x1 rdfs:label "X9 word" .
\ No newline at end of file
Added: jena/Experimental/jena-text/testing/TextQuery/text-config.ttl
URL: http://svn.apache.org/viewvc/jena/Experimental/jena-text/testing/TextQuery/text-config.ttl?rev=1466625&view=auto
==============================================================================
--- jena/Experimental/jena-text/testing/TextQuery/text-config.ttl (added)
+++ jena/Experimental/jena-text/testing/TextQuery/text-config.ttl Wed Apr 10 19:02:54 2013
@@ -0,0 +1,46 @@
+ ## Example of a TDB dataset and text index
+
+@prefix : <http://localhost/jena_example/#> .
+@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
+@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
+@prefix tdb: <http://jena.hpl.hp.com/2008/tdb#> .
+@prefix ja: <http://jena.hpl.hp.com/2005/11/Assembler#> .
+@prefix text: <http://jena.apache.org/text#> .
+
+# TDB
+[] ja:loadClass "com.hp.hpl.jena.tdb.TDB" .
+tdb:DatasetTDB rdfs:subClassOf ja:RDFDataset .
+tdb:GraphTDB rdfs:subClassOf ja:Model .
+
+# Text
+[] ja:loadClass "org.apache.jena.query.text.TextQuery" .
+text:TextDataset rdfs:subClassOf ja:RDFDataset .
+#text:TextIndexSolr rdfs:subClassOf text:TextIndex .
+text:TextIndexLucene rdfs:subClassOf text:TextIndex .
+
+## ---------------------------------------------------------------
+## This URI must be fixed - it's used to assemble the text dataset.
+
+:text_dataset rdf:type text:TextDataset ;
+ text:dataset <#dataset> ;
+ ##text:index <#indexSolr> ;
+ text:index <#indexLucene> ;
+ .
+
+<#dataset> rdf:type tdb:DatasetTDB ;
+ tdb:location "--mem--" ;
+ tdb:unionDefaultGraph true ;
+ .
+
+<#indexLucene> a text:TextIndexLucene ;
+ text:directory "mem" ;
+ text:entityMap <#entMap> ;
+ .
+
+<#entMap> a text:EntityMap ;
+ text:entityField "uri" ;
+ text:defaultField "text" ; ## Must be defined in the text:maps
+ text:map (
+ # rdfs:label
+ [ text:field "text" ; text:predicate rdfs:label ]
+ ) .
Modified: jena/Experimental/jena-text/text-config.ttl
URL: http://svn.apache.org/viewvc/jena/Experimental/jena-text/text-config.ttl?rev=1466625&r1=1466624&r2=1466625&view=diff
==============================================================================
--- jena/Experimental/jena-text/text-config.ttl (original)
+++ jena/Experimental/jena-text/text-config.ttl Wed Apr 10 19:02:54 2013
@@ -34,7 +34,7 @@ text:TextIndexLucene rdfs:subClassOf
<#indexLucene> a text:TextIndexLucene ;
#text:directory <file:Lucene> ;
- text: "mem" ;
+ text:directory "mem" ;
text:entityMap <#entMap> ;
.