@Override public void meet(StatementPattern node) { if (predicate.equals(SeRQO.SCOPE)) { Literal lit = (Literal) object; node.setScope(StatementPattern.Scope.valueOf(lit.getLabel())); } else if (predicate.equals(SeRQO.SUBJECTVAR)) { node.setSubjectVar((Var) model.get(object)); } else if (predicate.equals(SeRQO.PREDICATEVAR)) { node.setPredicateVar((Var) model.get(object)); } else if (predicate.equals(SeRQO.OBJECTVAR)) { node.setObjectVar((Var) model.get(object)); } else if (predicate.equals(SeRQO.CONTEXTVAR)) { node.setContextVar((Var) model.get(object)); } else { super.meet(node); } }
/** * Creates a statement pattern that matches a subject-, predicate-, object- * and context variable against statements from the specified context scope. */ public StatementPattern(Scope scope, Var subjVar, Var predVar, Var objVar, Var conVar) { setScope(scope); setSubjectVar(subjVar); setPredicateVar(predVar); setObjectVar(objVar); setContextVar(conVar); }
@Override public void replaceChildNode(QueryModelNode current, QueryModelNode replacement) { if (subjectVar == current) { setSubjectVar((Var)replacement); } else if (predicateVar == current) { setPredicateVar((Var)replacement); } else if (objectVar == current) { setObjectVar((Var)replacement); } else if (contextVar == current) { setContextVar((Var)replacement); } else { super.replaceChildNode(current, replacement); } }
consequent.setObjectVar(obj);
throw new NullPointerException("lastStatementPatternAdded is null despite non-empty inferenceEngine property chain. chain.size()==" + chain.size()); lastStatementPatternAdded.setObjectVar(originalObj);
sp.setObjectVar(pattern.getObjectVar());
private List<StatementPattern> replaceSameTermVars(List<StatementPattern> statementPatterns, Set<SameTerm> sameTermConstraints) { if (sameTermConstraints != null) { for (SameTerm st : sameTermConstraints) { Var left = (Var)st.getLeftArg(); Var right = (Var)st.getRightArg(); for (StatementPattern sp : statementPatterns) { Var subj = sp.getSubjectVar(); Var obj = sp.getObjectVar(); if (subj.equals(left) || subj.equals(right)) { if (obj.equals(left) || obj.equals(right)) { sp.setObjectVar(subj); } } } } } return statementPatterns; }
o.setName(p.getName() + "-" + i); o.setAnonymous(true); right.setObjectVar(o); left = right; right = new StatementPattern(o, p, object, context);
@Override public StatementPattern clone() { StatementPattern clone = (StatementPattern)super.clone(); clone.setSubjectVar(getSubjectVar().clone()); clone.setPredicateVar(getPredicateVar().clone()); clone.setObjectVar(getObjectVar().clone()); if (getContextVar() != null) { clone.setContextVar(getContextVar().clone()); } return clone; } }