protected void add(ElementPathBlock targetPathBlock, ElementTriplesBlock newTriples) { for (Triple t:newTriples.getPattern().getList()) { targetPathBlock.addTriple(t); } }
@Override public void visit(ElementTriplesBlock e) { for (Triple t: e.getPattern().getList()) { addVars(t); } } @Override
public void visit(ElementTriplesBlock el) { if ( el.isEmpty() ) { out.println("# Empty BGP") ; return ; } formatTriples(el.getPattern()) ; }
@Override public void visit(ElementTriplesBlock el) { if ( el.isEmpty() ) { out.println("# Empty BGP") ; return ; } formatTriples(el.getPattern()) ; }
@Override public void visit(ElementTriplesBlock tb) { ElementTriplesBlock ret = new ElementTriplesBlock(); for (Triple t:tb.getPattern().getList()) { ret.addTriple(copySubstitute(t)); } result = ret; }
@Override public void visit(ElementTriplesBlock tb) { List<Triple> triples = tb.getPattern().getList(); // convert set of triples to a rule system // here is where all variables in triples are assumed to be distinguished variables logger.debug("Triples:\n{}", triples); RuleSystem rs = new TriplesToRuleSystem(tbox).toRules(triples, allVars, true); logger.debug("Triples as rule system:\n{}", rs); // RuleSystem outrs = compileToNonRecursiveDatalog(rs); logger.debug("RuleSystem:\n{}", outrs ); if (outrs!=null) { Query q = RuleSystemToUnionQuery.toUnionQuery(outrs); result = q.getQueryPattern(); } else { /*ElementTriplesBlock ts = new ElementTriplesBlock(); Node owlNothing = Node.createURI(OWL.Nothing.getURI()); Node rdfType = Node.createURI(RDF.type.getURI()); ts.addTriple(new Triple(owlNothing, rdfType, owlNothing)); result = ts;*/ result = tb; } }
public List<Triple> getTriples() { if (query.getQueryPattern() instanceof ElementTriplesBlock) { ElementTriplesBlock sp = (ElementTriplesBlock) query.getQueryPattern(); return sp.getPattern().getList(); } else { assert query.getQueryPattern() instanceof ElementGroup : query.getQueryPattern() ; List<Element> es = flatten(query.getQueryPattern()); List<Triple> ret = new ArrayList<Triple>(); for (Element e: es) { if (e instanceof ElementTriplesBlock) { ret.addAll(((ElementTriplesBlock) e).getPattern().getList()); } else if (e instanceof ElementPathBlock ) { ElementPathBlock epb = (ElementPathBlock) e; for (TriplePath tp: epb.getPattern().getList()) { assert tp.isTriple() : tp; ret.add(tp.asTriple()); } } } return ret; } }
prev.addAll(etb.getPattern()) ; continue ; etb2.getPattern().addAll(etb.getPattern()) ; prev = etb2.getPattern() ; groupElts.add(etb2) ; continue ;
for ( Triple t : etb.getPattern()) currentPathBlock.add(new TriplePath(t)) ; continue ;
triples = ((ElementTriplesBlock) first).getPattern().getList();
public static Set<ConjunctiveQuery> getMembershipQuery(OWLOntology ont) { Set<ConjunctiveQuery> ret = new HashSet<ConjunctiveQuery>(); for (OWLClass owlclass: ont.getClassesInSignature(true)) { ElementTriplesBlock p = new ElementTriplesBlock(); String x = "x"; Node sub = Node.createVariable(x); Node pred = Node.createURI(RDFConstants.RDF_TYPE); Node obj = Node.createURI(owlclass.getIRI().toString()); Triple qt = new Triple(sub, pred, obj); p.getPattern().add(qt); ConjunctiveQuery cq = new ConjunctiveQuery(); cq.setQueryPattern(p); cq.addResultVar(x); cq.setDistinct(true); ret.add(cq); } return ret; } public static List<File> getAllFiles(File inFileOrDir, boolean recurseDir) {
ElementTriplesBlock rtb = (ElementTriplesBlock) right; ElementTriplesBlock res = new ElementTriplesBlock(); for (Triple t: ltb.getPattern().getList()) { res.addTriple(t); for (Triple t: rtb.getPattern().getList()) { res.addTriple(t);
for (Triple t: ((ElementTriplesBlock) tpres).getPattern().getList()) { if (etb == null) { etb = new ElementTriplesBlock();
ElementTriplesBlock newPattern = new ElementTriplesBlock(); for (Triple t: newTriples) { newPattern.getPattern().add(t);
return compileBasicPattern(((ElementTriplesBlock)elt).getPattern()) ;
return compileBasicPattern(((ElementTriplesBlock)elt).getPattern()) ;
Op op = compileBasicPattern(etb.getPattern()) ; return join(current, op) ;