use of de.ids_mannheim.korap.query.QueryBuilder in project Krill by KorAP.
the class TestKrillQuery method KorapTagQuery3.
@Test
public void KorapTagQuery3() throws QueryException {
QueryBuilder kq = new QueryBuilder("field");
SpanQuery sq = kq.seq(kq.tag("np"), kq.tag("vp")).toQuery();
assertEquals("spanNext(<field:np />, <field:vp />)", sq.toString());
}
use of de.ids_mannheim.korap.query.QueryBuilder in project Krill by KorAP.
the class TestKrillQuery method korapQueryRegexSegment2.
@Test
public void korapQueryRegexSegment2() throws QueryException {
QueryBuilder kq = new QueryBuilder("field");
SpanQuery sq = kq.seg("a").with(kq.or("b").or("c")).toQuery();
assertEquals("spanSegment(field:a, spanOr([field:b, field:c]))", sq.toString());
kq = new QueryBuilder("field");
sq = kq.seg("a").with(kq.or("b", "c")).toQuery();
assertEquals("spanSegment(field:a, spanOr([field:b, field:c]))", sq.toString());
kq = new QueryBuilder("field");
// [ a & (b | /c.*d/) ]
sq = kq.seg("a").with(kq.or("b").or(kq.re("c.*d"))).toQuery();
assertEquals("spanSegment(field:a, spanOr([field:b, SpanMultiTermQueryWrapper(field:/c.*d/)]))", sq.toString());
}
use of de.ids_mannheim.korap.query.QueryBuilder in project Krill by KorAP.
the class TestKrillQuery method KorapSequenceWithEmptyRepetitionQuery.
@Test
public void KorapSequenceWithEmptyRepetitionQuery() throws QueryException {
QueryBuilder kq = new QueryBuilder("field");
SpanQuery sq = kq.seq(kq.seg("try")).append(kq.repeat(kq.empty(), 0, 100)).toQuery();
assertEquals("focus(254: spanContain(<field:base/s:t />, {254: spanExpansion(field:try, []{0, 100}, right)}))", sq.toString());
}
use of de.ids_mannheim.korap.query.QueryBuilder in project Krill by KorAP.
the class TestKrillQuery method korapQueryRegexSegment.
@Test
public void korapQueryRegexSegment() throws QueryException {
QueryBuilder kq = new QueryBuilder("field1");
SpanQuery sq = kq.seg("a").with(kq.re("b.*c")).toQuery();
assertEquals("spanSegment(field1:a, SpanMultiTermQueryWrapper(field1:/b.*c/))", sq.toString());
kq = new QueryBuilder("field2");
sq = kq.seg(kq.re("a.*")).with("b").toQuery();
assertEquals("spanSegment(SpanMultiTermQueryWrapper(field2:/a.*/), field2:b)", sq.toString());
}
use of de.ids_mannheim.korap.query.QueryBuilder in project Krill by KorAP.
the class TestSpanExpansionIndex method indexRegexSequence.
@Test
public void indexRegexSequence() throws Exception {
KrillIndex ki = new KrillIndex();
ki.addDoc(createFieldDoc5());
ki.commit();
QueryBuilder kq = new QueryBuilder("base");
SpanQueryWrapper sq = kq.seq(kq.or("s:baumgarten", "s:steingarten")).append(kq.seg().without(kq.or("s:franz", "s:hans")));
// Expected to find [baumgarten steingarten]
Krill ks = _newKrill(sq);
Result kr = ki.search(ks);
assertEquals((long) 1, kr.getTotalResults());
assertEquals("... baum [[baumgarten steingarten]] franz ...", kr.getMatch(0).getSnippetBrackets());
// The same result should be shown for:
sq = kq.seq(kq.re("s:.*garten")).append(kq.seg().without(kq.re("s:.*an.*")));
ks = _newKrill(sq);
kr = ki.search(ks);
assertEquals((long) 1, kr.getTotalResults());
assertEquals("... baum [[baumgarten steingarten]] franz ...", kr.getMatch(0).getSnippetBrackets());
}
Aggregations