slash classpath reference fix
diff --git a/src/main/java/de/ids_mannheim/korap/KorapIndex.java b/src/main/java/de/ids_mannheim/korap/KorapIndex.java
index 8d5b93d..bfd6c94 100644
--- a/src/main/java/de/ids_mannheim/korap/KorapIndex.java
+++ b/src/main/java/de/ids_mannheim/korap/KorapIndex.java
@@ -154,7 +154,7 @@
{
Properties prop = new Properties();
- URL file = getClass().getResource("/index.properties");
+ URL file = getClass().getClassLoader().getResource("index.properties");
if (file != null) {
String f = file.getFile();
diff --git a/src/main/java/de/ids_mannheim/korap/KorapIndexer.java b/src/main/java/de/ids_mannheim/korap/KorapIndexer.java
deleted file mode 100644
index b935db8..0000000
--- a/src/main/java/de/ids_mannheim/korap/KorapIndexer.java
+++ /dev/null
@@ -1,86 +0,0 @@
-package de.ids_mannheim.korap;
-import java.util.*;
-import java.io.*;
-import org.apache.lucene.store.MMapDirectory;
-import de.ids_mannheim.korap.KorapIndex;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-public class KorapIndexer {
- KorapIndex index;
- String indexDir;
- int count;
- int commitCount;
-
- // Init logger
- private final static Logger log = LoggerFactory.getLogger(KorapIndexer.class);
-
- public KorapIndexer(Properties prop) throws IOException {
- this.indexDir = prop.getProperty("lucene.indexDir");
-
- System.out.println("Index to " + this.indexDir);
-
- String commitCount = prop.getProperty("lucene.index.commit.count", "1000");
-
- this.index = new KorapIndex(new MMapDirectory(new File(indexDir)));
- this.count = 0;
- this.commitCount = Integer.parseInt(commitCount);
- };
-
-
- public void parse (File dir) {
- for (String file : dir.list()) {
- if (file.matches("^[^\\.].+?\\.json\\.gz$")) {
- String found = dir.getPath() + '/' + file;
- System.out.print(" Index " + found + " ... ");
- if (this.index.addDocFile(found, true) == null) {
- System.out.println("fail.");
- continue;
- };
- System.out.println("done (" + count + ").");
- this.count++;
-
- if ((this.count % this.commitCount) == 0)
- this.commit();
- };
- };
- };
-
-
- public void commit () {
- System.out.println("-----");
- System.out.print(" Commit ... ");
- try {
- this.index.commit();
- }
- catch (IOException e) {
- System.err.println("Unable to commit to index " + this.indexDir);
- };
- System.out.println("done.");
- };
-
-
-
- public static void main (String[] argv) throws IOException {
- Properties prop = new Properties();
- InputStream fr = new FileInputStream(argv[0]);
- prop.load(fr);
- KorapIndexer ki = new KorapIndexer(prop);
- System.out.println();
-
- for (String arg : Arrays.copyOfRange(argv, 1, argv.length)) {
- File f = new File(arg);
- if (f.isDirectory())
- ki.parse(f);
- };
-
-
- // Final commit
- ki.commit();
-
- // Finish indexing
- System.out.println("-----");
- System.out.println(" Indexed " + ki.count + " files.");
- System.out.println();
- };
-};
diff --git a/src/main/java/de/ids_mannheim/korap/query/spans/KorapLongSpan.java b/src/main/java/de/ids_mannheim/korap/query/spans/KorapLongSpan.java
index 26a1367..96df20c 100644
--- a/src/main/java/de/ids_mannheim/korap/query/spans/KorapLongSpan.java
+++ b/src/main/java/de/ids_mannheim/korap/query/spans/KorapLongSpan.java
@@ -1,7 +1,5 @@
package de.ids_mannheim.korap.query.spans;
-import de.ids_mannheim.korap.query.spans.KorapSpan;
-
import java.util.Collection;
public class KorapLongSpan extends KorapSpan {
diff --git a/src/main/java/de/ids_mannheim/korap/query/spans/WithinSpans.java b/src/main/java/de/ids_mannheim/korap/query/spans/WithinSpans.java
index 56724b4..92eab68 100644
--- a/src/main/java/de/ids_mannheim/korap/query/spans/WithinSpans.java
+++ b/src/main/java/de/ids_mannheim/korap/query/spans/WithinSpans.java
@@ -1013,9 +1013,9 @@
* this method may not be called at all for performance reasons. An ordered
* SpanQuery does not lazy load, so if you have payloads in your index and
* you do not want ordered SpanNearQuerys to collect payloads, you can
- * disable collection with a constructor option.<br>
+ * disable VCollection with a constructor option.<br>
* <br>
- * Note that the return type is a collection, thus the ordering should not be relied upon.
+ * Note that the return type is a VCollection, thus the ordering should not be relied upon.
* <br/>
* @lucene.experimental
*
diff --git a/src/main/java/de/ids_mannheim/korap/util/KorapArray.java b/src/main/java/de/ids_mannheim/korap/util/KorapArray.java
index 62d1b8c..f4f336c 100644
--- a/src/main/java/de/ids_mannheim/korap/util/KorapArray.java
+++ b/src/main/java/de/ids_mannheim/korap/util/KorapArray.java
@@ -5,7 +5,7 @@
/**
* @author Nils Diewald
*
- * A collection of Array specific utilities for the Korap project.
+ * A VCollection of Array specific utilities for the Korap project.
*/
public class KorapArray {
diff --git a/src/main/java/de/ids_mannheim/korap/util/KorapByte.java b/src/main/java/de/ids_mannheim/korap/util/KorapByte.java
index 9115ba7..898a100 100644
--- a/src/main/java/de/ids_mannheim/korap/util/KorapByte.java
+++ b/src/main/java/de/ids_mannheim/korap/util/KorapByte.java
@@ -7,7 +7,7 @@
/**
* @author Nils Diewald
*
- * A collection of methods to deal with Bytes and Byte arrays.
+ * A VCollection of methods to deal with Bytes and Byte arrays.
*/
public class KorapByte {
diff --git a/src/main/java/de/ids_mannheim/korap/util/KorapHTML.java b/src/main/java/de/ids_mannheim/korap/util/KorapHTML.java
index cadbb11..456d0a1 100644
--- a/src/main/java/de/ids_mannheim/korap/util/KorapHTML.java
+++ b/src/main/java/de/ids_mannheim/korap/util/KorapHTML.java
@@ -3,7 +3,7 @@
/**
* @author Nils Diewald
*
- * A collection of methods to deal with Bytes and Byte arrays.
+ * A VCollection of methods to deal with Bytes and Byte arrays.
*/
public class KorapHTML {
diff --git a/src/main/resources/korap.conf b/src/main/resources/korap.conf
new file mode 100644
index 0000000..1e1002f
--- /dev/null
+++ b/src/main/resources/korap.conf
@@ -0,0 +1,15 @@
+# Lucene Backend properties
+lucene.properties = true
+lucene.index = /data/indices
+lucene.index.commit.count = 134217000
+lucene.index.commit.log = log/korap.commit.log
+
+# Not active at the moment:
+lucene.index.search.count.default = 25
+lucene.index.search.count.max = 100
+lucene.index.search.context.left.type = token
+lucene.index.search.context.left.default = 6
+lucene.index.search.context.left.max = 12
+lucene.index.search.context.right.type = token
+lucene.index.search.context.right.default = 6
+lucene.index.search.context.right.max = 12
diff --git a/src/test/java/de/ids_mannheim/korap/filter/TestKorapCollection.java b/src/test/java/de/ids_mannheim/korap/filter/TestKorapCollection.java
index 3fa1ea9..2dc1c58 100644
--- a/src/test/java/de/ids_mannheim/korap/filter/TestKorapCollection.java
+++ b/src/test/java/de/ids_mannheim/korap/filter/TestKorapCollection.java
@@ -1,263 +1,265 @@
-import java.io.*;
-
-import de.ids_mannheim.korap.KorapIndex;
+import de.ids_mannheim.korap.*;
import de.ids_mannheim.korap.index.FieldDocument;
-import de.ids_mannheim.korap.KorapCollection;
-import de.ids_mannheim.korap.KorapFilter;
-import de.ids_mannheim.korap.KorapResult;
-import de.ids_mannheim.korap.KorapQuery;
-import de.ids_mannheim.korap.filter.BooleanFilter;
-
-
import org.apache.lucene.index.Term;
-import org.apache.lucene.search.spans.SpanOrQuery;
import org.apache.lucene.search.spans.SpanQuery;
import org.apache.lucene.search.spans.SpanTermQuery;
-import org.apache.lucene.search.spans.SpanQuery;
-
-import static org.junit.Assert.*;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.JUnit4;
+import java.io.IOException;
+
+import static org.junit.Assert.assertEquals;
+
@RunWith(JUnit4.class)
public class TestKorapCollection {
@Test
- public void filterExample () throws IOException {
-
- // Construct index
- KorapIndex ki = new KorapIndex();
- // Indexing test files
- for (String i : new String[] {"00001", "00002", "00003", "00004", "00005", "00006", "02439"}) {
- ki.addDocFile(
- getClass().getResource("/wiki/" + i + ".json.gz").getFile(), true
+ public void filterExample() throws IOException {
+
+ // Construct index
+ KorapIndex ki = new KorapIndex();
+ // Indexing test files
+ for (String i : new String[]{"00001", "00002", "00003", "00004", "00005", "00006", "02439"}) {
+ ki.addDocFile(
+ getClass().getResource("/wiki/" + i + ".json.gz").getFile(), true
);
- };
- ki.commit();
+ }
+ ;
+ ki.commit();
- KorapFilter kf = new KorapFilter();
+ KorapFilter kf = new KorapFilter();
- // Create Virtual collections:
- KorapCollection kc = new KorapCollection(ki);
+ // Create Virtual collections:
+ KorapCollection kc = new KorapCollection(ki);
- assertEquals("Documents", 7, kc.numberOf("documents"));
+ assertEquals("Documents", 7, kc.numberOf("documents"));
- // The virtual collection consists of all documents that have
- // the textClass "reisen" and "freizeit"
+ // The virtual collection consists of all documents that have
+ // the textClass "reisen" and "freizeit"
- kc.filter( kf.and("textClass", "reisen").and("textClass", "freizeit-unterhaltung") );
+ kc.filter(kf.and("textClass", "reisen").and("textClass", "freizeit-unterhaltung"));
- assertEquals("Documents", 5, kc.numberOf("documents"));
- assertEquals("Tokens", 1678, kc.numberOf("tokens"));
- assertEquals("Sentences", 194, kc.numberOf("sentences"));
- assertEquals("Paragraphs", 139, kc.numberOf("paragraphs"));
+ assertEquals("Documents", 5, kc.numberOf("documents"));
+ assertEquals("Tokens", 1678, kc.numberOf("tokens"));
+ assertEquals("Sentences", 194, kc.numberOf("sentences"));
+ assertEquals("Paragraphs", 139, kc.numberOf("paragraphs"));
- // Subset this to all documents that have also the text
- kc.filter(kf.and("textClass", "kultur"));
+ // Subset this to all documents that have also the text
+ kc.filter(kf.and("textClass", "kultur"));
- assertEquals("Documents", 1, kc.numberOf("documents"));
- assertEquals("Tokens", 405, kc.numberOf("tokens"));
- assertEquals("Sentences", 75, kc.numberOf("sentences"));
- assertEquals("Paragraphs", 48, kc.numberOf("paragraphs"));
+ assertEquals("Documents", 1, kc.numberOf("documents"));
+ assertEquals("Tokens", 405, kc.numberOf("tokens"));
+ assertEquals("Sentences", 75, kc.numberOf("sentences"));
+ assertEquals("Paragraphs", 48, kc.numberOf("paragraphs"));
- kc.filter(kf.and("corpusID", "WPD"));
+ kc.filter(kf.and("corpusID", "WPD"));
- assertEquals("Documents", 1, kc.numberOf("documents"));
- assertEquals("Tokens", 405, kc.numberOf("tokens"));
- assertEquals("Sentences", 75, kc.numberOf("sentences"));
- assertEquals("Paragraphs", 48, kc.numberOf("paragraphs"));
+ assertEquals("Documents", 1, kc.numberOf("documents"));
+ assertEquals("Tokens", 405, kc.numberOf("tokens"));
+ assertEquals("Sentences", 75, kc.numberOf("sentences"));
+ assertEquals("Paragraphs", 48, kc.numberOf("paragraphs"));
- // Create a query
- KorapQuery kq = new KorapQuery("tokens");
- SpanQuery query = kq.seg("opennlp/p:NN").with("tt/p:NN").toQuery();
+ // Create a query
+ KorapQuery kq = new KorapQuery("tokens");
+ SpanQuery query = kq.seg("opennlp/p:NN").with("tt/p:NN").toQuery();
- KorapResult kr = kc.search(query);
- assertEquals(70, kr.totalResults());
+ KorapResult kr = kc.search(query);
+ assertEquals(70, kr.totalResults());
- kc.extend( kf.and("textClass", "uninteresting") );
- assertEquals("Documents", 1, kc.numberOf("documents"));
+ kc.extend(kf.and("textClass", "uninteresting"));
+ assertEquals("Documents", 1, kc.numberOf("documents"));
- kc.extend( kf.and("textClass", "wissenschaft") );
+ kc.extend(kf.and("textClass", "wissenschaft"));
- assertEquals("Documents", 3, kc.numberOf("documents"));
- assertEquals("Tokens", 1669, kc.numberOf("tokens"));
- assertEquals("Sentences", 188, kc.numberOf("sentences"));
- assertEquals("Paragraphs", 130, kc.numberOf("paragraphs"));
- // System.err.println(kr.toJSON());
- };
+ assertEquals("Documents", 3, kc.numberOf("documents"));
+ assertEquals("Tokens", 1669, kc.numberOf("tokens"));
+ assertEquals("Sentences", 188, kc.numberOf("sentences"));
+ assertEquals("Paragraphs", 130, kc.numberOf("paragraphs"));
+ // System.err.println(kr.toJSON());
+ }
+
+ ;
@Test
- public void filterExampleAtomic () throws IOException {
-
- // That's exactly the same test class, but with multiple atomic indices
+ public void filterExampleAtomic() throws IOException {
- // Construct index
- KorapIndex ki = new KorapIndex();
- // Indexing test files
- for (String i : new String[] {"00001",
- "00002",
- "00003",
- "00004",
- "00005",
- "00006",
- "02439"}) {
- ki.addDocFile(
- getClass().getResource("/wiki/" + i + ".json.gz").getFile(), true
+ // That's exactly the same test class, but with multiple atomic indices
+
+ // Construct index
+ KorapIndex ki = new KorapIndex();
+ // Indexing test files
+ for (String i : new String[]{"00001",
+ "00002",
+ "00003",
+ "00004",
+ "00005",
+ "00006",
+ "02439"}) {
+ ki.addDocFile(
+ getClass().getResource("/wiki/" + i + ".json.gz").getFile(), true
);
- ki.commit();
- };
+ ki.commit();
+ }
+ ;
- KorapFilter kf = new KorapFilter();
+ KorapFilter kf = new KorapFilter();
- // Create Virtual collections:
- KorapCollection kc = new KorapCollection(ki);
+ // Create Virtual collections:
+ KorapCollection kc = new KorapCollection(ki);
- assertEquals("Documents", 7, kc.numberOf("documents"));
+ assertEquals("Documents", 7, kc.numberOf("documents"));
- // If this is set - everything is fine automatically ...
- kc.filter(kf.and("corpusID", "WPD"));
- assertEquals("Documents", 7, kc.numberOf("documents"));
+ // If this is set - everything is fine automatically ...
+ kc.filter(kf.and("corpusID", "WPD"));
+ assertEquals("Documents", 7, kc.numberOf("documents"));
- // The virtual collection consists of all documents that have the textClass "reisen" and "freizeit"
+ // The virtual collection consists of all documents that have the textClass "reisen" and "freizeit"
- kc.filter( kf.and("textClass", "reisen").and("textClass", "freizeit-unterhaltung") );
+ kc.filter(kf.and("textClass", "reisen").and("textClass", "freizeit-unterhaltung"));
- assertEquals("Documents", 5, kc.numberOf("documents"));
- assertEquals("Tokens", 1678, kc.numberOf("tokens"));
- assertEquals("Sentences", 194, kc.numberOf("sentences"));
- assertEquals("Paragraphs", 139, kc.numberOf("paragraphs"));
+ assertEquals("Documents", 5, kc.numberOf("documents"));
+ assertEquals("Tokens", 1678, kc.numberOf("tokens"));
+ assertEquals("Sentences", 194, kc.numberOf("sentences"));
+ assertEquals("Paragraphs", 139, kc.numberOf("paragraphs"));
- // Subset this to all documents that have also the text
- kc.filter(kf.and("textClass", "kultur"));
+ // Subset this to all documents that have also the text
+ kc.filter(kf.and("textClass", "kultur"));
- assertEquals("Documents", 1, kc.numberOf("documents"));
- assertEquals("Tokens", 405, kc.numberOf("tokens"));
- assertEquals("Sentences", 75, kc.numberOf("sentences"));
- assertEquals("Paragraphs", 48, kc.numberOf("paragraphs"));
+ assertEquals("Documents", 1, kc.numberOf("documents"));
+ assertEquals("Tokens", 405, kc.numberOf("tokens"));
+ assertEquals("Sentences", 75, kc.numberOf("sentences"));
+ assertEquals("Paragraphs", 48, kc.numberOf("paragraphs"));
- // This is already filtered though ...
- kc.filter(kf.and("corpusID", "WPD"));
+ // This is already filtered though ...
+ kc.filter(kf.and("corpusID", "WPD"));
- assertEquals("Documents", 1, kc.numberOf("documents"));
- assertEquals("Tokens", 405, kc.numberOf("tokens"));
- assertEquals("Sentences", 75, kc.numberOf("sentences"));
- assertEquals("Paragraphs", 48, kc.numberOf("paragraphs"));
+ assertEquals("Documents", 1, kc.numberOf("documents"));
+ assertEquals("Tokens", 405, kc.numberOf("tokens"));
+ assertEquals("Sentences", 75, kc.numberOf("sentences"));
+ assertEquals("Paragraphs", 48, kc.numberOf("paragraphs"));
- // Create a query
- KorapQuery kq = new KorapQuery("tokens");
- SpanQuery query = kq.seg("opennlp/p:NN").with("tt/p:NN").toQuery();
+ // Create a query
+ KorapQuery kq = new KorapQuery("tokens");
+ SpanQuery query = kq.seg("opennlp/p:NN").with("tt/p:NN").toQuery();
- KorapResult kr = kc.search(query);
- assertEquals(70, kr.totalResults());
+ KorapResult kr = kc.search(query);
+ assertEquals(70, kr.totalResults());
- kc.extend( kf.and("textClass", "uninteresting") );
- assertEquals("Documents", 1, kc.numberOf("documents"));
+ kc.extend(kf.and("textClass", "uninteresting"));
+ assertEquals("Documents", 1, kc.numberOf("documents"));
- kc.extend( kf.and("textClass", "wissenschaft") );
+ kc.extend(kf.and("textClass", "wissenschaft"));
- assertEquals("Documents", 3, kc.numberOf("documents"));
- assertEquals("Tokens", 1669, kc.numberOf("tokens"));
- assertEquals("Sentences", 188, kc.numberOf("sentences"));
- assertEquals("Paragraphs", 130, kc.numberOf("paragraphs"));
- };
+ assertEquals("Documents", 3, kc.numberOf("documents"));
+ assertEquals("Tokens", 1669, kc.numberOf("tokens"));
+ assertEquals("Sentences", 188, kc.numberOf("sentences"));
+ assertEquals("Paragraphs", 130, kc.numberOf("paragraphs"));
+ }
+ ;
@Test
- public void filterExample2 () throws IOException {
-
- // Construct index
- KorapIndex ki = new KorapIndex();
- // Indexing test files
- for (String i : new String[] {"00001",
- "00002",
- "00003",
- "00004",
- "00005",
- "00006",
- "02439"}) {
- ki.addDocFile(
- getClass().getResource("/wiki/" + i + ".json.gz").getFile(), true
+ public void filterExample2() throws IOException {
+
+ // Construct index
+ KorapIndex ki = new KorapIndex();
+ // Indexing test files
+ for (String i : new String[]{"00001",
+ "00002",
+ "00003",
+ "00004",
+ "00005",
+ "00006",
+ "02439"}) {
+ ki.addDocFile(
+ getClass().getResource("/wiki/" + i + ".json.gz").getFile(), true
);
- };
- ki.commit();
+ }
+ ;
+ ki.commit();
- ki.addDocFile(getClass().getResource("/wiki/AUG-55286.json.gz").getFile(), true);
+ ki.addDocFile(getClass().getResource("/wiki/AUG-55286.json.gz").getFile(), true);
- ki.commit();
+ ki.commit();
- KorapFilter kf = new KorapFilter();
+ KorapFilter kf = new KorapFilter();
- // Create Virtual collections:
- KorapCollection kc = new KorapCollection(ki);
- kc.filter( kf.and("textClass", "reisen").and("textClass", "freizeit-unterhaltung") );
- assertEquals("Documents", 6, kc.numberOf("documents"));
- assertEquals("Tokens", 2089, kc.numberOf("tokens"));
- assertEquals("Sentences", 234, kc.numberOf("sentences"));
- assertEquals("Paragraphs", 141, kc.numberOf("paragraphs"));
+ // Create Virtual collections:
+ KorapCollection kc = new KorapCollection(ki);
+ kc.filter(kf.and("textClass", "reisen").and("textClass", "freizeit-unterhaltung"));
+ assertEquals("Documents", 6, kc.numberOf("documents"));
+ assertEquals("Tokens", 2089, kc.numberOf("tokens"));
+ assertEquals("Sentences", 234, kc.numberOf("sentences"));
+ assertEquals("Paragraphs", 141, kc.numberOf("paragraphs"));
- kc.filter( kf.and("corpusID", "A00") );
+ kc.filter(kf.and("corpusID", "A00"));
- assertEquals("Documents", 1, kc.numberOf("documents"));
- assertEquals("Tokens", 411, kc.numberOf("tokens"));
- assertEquals("Sentences", 40, kc.numberOf("sentences"));
- assertEquals("Paragraphs", 2, kc.numberOf("paragraphs"));
+ assertEquals("Documents", 1, kc.numberOf("documents"));
+ assertEquals("Tokens", 411, kc.numberOf("tokens"));
+ assertEquals("Sentences", 40, kc.numberOf("sentences"));
+ assertEquals("Paragraphs", 2, kc.numberOf("paragraphs"));
- // Create a query
- KorapQuery kq = new KorapQuery("tokens");
- SpanQuery query = kq.seg("opennlp/p:NN").with("tt/p:NN").toQuery();
+ // Create a query
+ KorapQuery kq = new KorapQuery("tokens");
+ SpanQuery query = kq.seg("opennlp/p:NN").with("tt/p:NN").toQuery();
- KorapResult kr = kc.search(query);
+ KorapResult kr = kc.search(query);
- assertEquals(87, kr.totalResults());
- // System.out.println(kr.toJSON());
- };
+ assertEquals(87, kr.totalResults());
+ // System.out.println(kr.toJSON());
+ }
+
+ ;
@Test
- public void uidCollection () throws IOException {
-
- // Construct index
- KorapIndex ki = new KorapIndex();
- // Indexing test files
- int uid = 1;
- for (String i : new String[] {"00001",
- "00002",
- "00003",
- "00004",
- "00005",
- "00006",
- "02439"}) {
- FieldDocument fd = ki.addDocFile(
- uid++,
- getClass().getResource("/wiki/" + i + ".json.gz").getFile(),
- true
- );
- };
- ki.commit();
+ public void uidCollection() throws IOException {
- assertEquals("Documents", 7, ki.numberOf("documents"));
- assertEquals("Paragraphs", 174, ki.numberOf("paragraphs"));
- assertEquals("Sentences", 281, ki.numberOf("sentences"));
- assertEquals("Tokens", 2661, ki.numberOf("tokens"));
+ // Construct index
+ KorapIndex ki = new KorapIndex();
+ // Indexing test files
+ int uid = 1;
+ for (String i : new String[]{"00001",
+ "00002",
+ "00003",
+ "00004",
+ "00005",
+ "00006",
+ "02439"}) {
+ FieldDocument fd = ki.addDocFile(
+ uid++,
+ getClass().getResource("/wiki/" + i + ".json.gz").getFile(),
+ true
+ );
+ }
+ ;
+ ki.commit();
- SpanQuery sq = new SpanTermQuery(new Term("tokens", "s:der"));
- KorapResult kr = ki.search(sq, (short) 10);
- assertEquals(86,kr.getTotalResults());
+ assertEquals("Documents", 7, ki.numberOf("documents"));
+ assertEquals("Paragraphs", 174, ki.numberOf("paragraphs"));
+ assertEquals("Sentences", 281, ki.numberOf("sentences"));
+ assertEquals("Tokens", 2661, ki.numberOf("tokens"));
- // Create Virtual collections:
- KorapCollection kc = new KorapCollection();
- kc.filterUIDs(new String[]{"2", "3", "4"});
- kc.setIndex(ki);
- assertEquals("Documents", 3, kc.numberOf("documents"));
+ SpanQuery sq = new SpanTermQuery(new Term("tokens", "s:der"));
+ KorapResult kr = ki.search(sq, (short) 10);
+ assertEquals(86, kr.getTotalResults());
- assertEquals("Paragraphs", 46, kc.numberOf("paragraphs"));
- assertEquals("Sentences", 103, kc.numberOf("sentences"));
- assertEquals("Tokens", 1229, kc.numberOf("tokens"));
+ // Create Virtual collections:
+ KorapCollection kc = new KorapCollection();
+ kc.filterUIDs(new String[]{"2", "3", "4"});
+ kc.setIndex(ki);
+ assertEquals("Documents", 3, kc.numberOf("documents"));
- kr = kc.search(sq);
- assertEquals(39,kr.getTotalResults());
- };
+ assertEquals("Paragraphs", 46, kc.numberOf("paragraphs"));
+ assertEquals("Sentences", 103, kc.numberOf("sentences"));
+ assertEquals("Tokens", 1229, kc.numberOf("tokens"));
+
+ kr = kc.search(sq);
+ assertEquals(39, kr.getTotalResults());
+ }
+
+ ;
};
diff --git a/src/test/java/de/ids_mannheim/korap/index/TestRealIndex.java b/src/test/java/de/ids_mannheim/korap/index/TestRealIndex.java
index 74a827b..d28f36f 100644
--- a/src/test/java/de/ids_mannheim/korap/index/TestRealIndex.java
+++ b/src/test/java/de/ids_mannheim/korap/index/TestRealIndex.java
@@ -47,7 +47,7 @@
// Construct filter generator
KorapFilter kf = new KorapFilter();
- // The virtual collection consists of all documents that have
+ // The virtual VCollection consists of all documents that have
// the textClasses "reisen" and "freizeit"
// kc.filter( kf.and("textClass", "reisen").and("textClass", "freizeit-unterhaltung") );