@Test
public void Pattern_with_Filters() {
Block pattern = Blocks.pattern(subject, predicate, object);
List<Predicate> filters = Arrays.<Predicate> asList(
subject.eq(new UID(TEST.NS)),
subject.in(RDF.type, RDF.first),
predicate.eq(RDFS.label),
subject.ne(new UID(TEST.NS)),
object.isNull(),
object.isNotNull(),
object.stringValue().startsWith("X"),
object.lit().like("X%"),
object.lit().matches(".*"),
object.lit().lt("D"),
object.lit().gt("B"),
object.lit().loe("C"),
object.lit().goe("C"),
object.lit().eqIgnoreCase("X"),
object.lit().isEmpty()
);
for (Predicate filter : filters) {
query().where(pattern, filter).selectSingle(subject);
}
}