use of de.ids_mannheim.korap.query.SpanWithAttributeQuery in project Krill by KorAP.
the class TestRelationIndex method testCase4.
/**
* Relations only with/out attribute
*/
@Test
public void testCase4() throws IOException {
ki.addDoc(createFieldDoc2());
ki.commit();
SpanRelationQuery srq = new SpanRelationQuery(new SpanTermQuery(new Term("base", ">:child-of")), true, RelationDirection.RIGHT);
SpanFocusQuery fq = new SpanFocusQuery(srq, srq.getTempClassNumbers());
fq.setMatchTemporaryClass(true);
fq.setRemoveTemporaryClasses(true);
fq.setSorted(false);
// kr = ki.search(fq, (short) 20);
// for (Match m : kr.getMatches()) {
// System.out.println(m.getStartPos() + " " + m.getEndPos());
// }
SpanAttributeQuery saq = new SpanAttributeQuery(new SpanTermQuery(new Term("base", "@:func=sbj")), true);
// kr = ki.search(saq, (short) 20);
// child-of with attr func=sbj
SpanWithAttributeQuery wq;
wq = new SpanWithAttributeQuery(fq, saq, true);
// kr = ki.search(wq, (short) 20);
// assertEquals((long) 1, kr.getTotalResults());
// assertEquals(0, kr.getMatch(0).getStartPos()); // token
// assertEquals(7, kr.getMatch(0).getEndPos());
// child-of without attr func=sbj
wq = new SpanWithAttributeQuery(fq, new SpanAttributeQuery(new SpanTermQuery(new Term("base", "@:func=sbj")), true, true), true);
kr = ki.search(wq, (short) 20);
assertEquals((long) 12, kr.getTotalResults());
}
Aggregations