protected double getCardinality(StatementPattern sp) { List<Var> vars = sp.getVarList(); int constantVarCount = countConstantVars(vars); double unboundVarFactor = (double)(vars.size() - constantVarCount) / vars.size(); return Math.pow(1000.0, unboundVarFactor); }
private int numberOfSpVars(StatementPattern sp) { List<Var> varList = sp.getVarList(); int varCount = 0; for(int i = 0; i < 3; i++) { if(!varList.get(i).isConstant()) { varCount++; } } return varCount; }
protected double getCardinality(StatementPattern pattern) { List<Var> vars = pattern.getVarList(); int constantVarCount = countConstantVars(vars); double unboundVarFactor = (double)(vars.size() - constantVarCount) / vars.size(); return Math.pow(1000.0, unboundVarFactor); }
private Set<String> getVariableNames() { Set<String> vars = new HashSet<>(); for (StatementPattern pattern : patterns) { for (Var var : pattern.getVarList()) { if (var.getValue() == null) { vars.add(var.getName()); } } } return vars; }
public Set<String> getBindingNames() { //resource and match variable for search are already included as standard result-bindings Set<String> bindings = Sets.newHashSet(); for(Var v: spConstraint.getVarList()) { if(!v.isConstant()) { bindings.add(v.getName()); } } return bindings; }
public static TupleExpr[] splitTupleExpr(final TupleExpr expr, final Set<URI> vocabulary, final int partition) { return splitTupleExpr(expr, (final StatementPattern pattern) -> { for (final Var var : pattern.getVarList()) { if (vocabulary.contains(var.getValue())) { return true; } } return false; }, partition); }
private static boolean genConstantCompare(StatementPattern queryNode, StatementPattern indexNode) { ArrayList<Var> vars1 = (ArrayList<Var>) queryNode.getVarList(); ArrayList<Var> vars2 = (ArrayList<Var>) indexNode.getVarList(); for (int i = 0; i < vars1.size(); i++) { if (vars1.get(i).isConstant() && vars2.get(i).isConstant()) { if (!vars1.get(i).equals(vars2.get(i))) { return false; } } else if(!vars1.get(i).isConstant() && vars2.get(i).isConstant() ) { return false; } } return true; }
final List<Var> vars = atom.getVarList(); this.ruleBuilder.append("handler.insert(drools, "); for (int j = 0; j < 4; ++j) {
if (genConstantCompare((StatementPattern) node1, (StatementPattern) node2)) { List<Var> variables1 = ((StatementPattern)node1).getVarList(); List<Var> variables2 = ((StatementPattern)node2).getVarList();
term1 = st1.getVarList().get(i); term2 = st2.getVarList().get(i); Substitution s = getUnifier(term1, term2); if (s == null)
@Override public void meet(final Var var) throws RuntimeException { if (!var.hasValue()) { final String newName = replacements.get(var.getName()); if (newName != null) { var.setName(newName); } else if (var.getName().startsWith("_const-")) { if (var.getParentNode() instanceof StatementPattern) { for (final Var var2 : ((StatementPattern) var.getParentNode()) .getVarList()) { if (var2.hasValue() && var.getName().startsWith(var2.getName())) { var.setValue(var2.getValue()); } } } } else if (var.getName().startsWith("-anon-")) { var.setName(var.getName().replace('-', '_')); } else { final int index = var.getName().indexOf('-'); if (index >= 0) { var.setName(var.getName().substring(0, index)); } } } }
final List<Var> vars = ((StatementPattern) expr).getVarList(); this.ruleBuilder.append("Quad("); for (int i = 0; i < vars.size(); ++i) {