@Override protected void doNegatedPropertySet(P_NegPropSet pathNotOneOf, Node node, Collection<Node> output) { // X !(:a|:b|^:c|^:d) Y = { X !(:a|:b) Y } UNION { Y !(:c|:d) X } if ( pathNotOneOf.getFwdNodes().size() > 0 ) { Iterator<Node> nodes1 = stepExcludeForwards(graph, node, pathNotOneOf.getFwdNodes()) ; fill(nodes1, output) ; } if ( pathNotOneOf.getBwdNodes().size() > 0 ) { Iterator<Node> nodes2 = stepExcludeBackwards(graph, node, pathNotOneOf.getBwdNodes()) ; fill(nodes2, output) ; } }
public void visit(P_NegPropSet pathNotOneOf) { // X !(:a|:b|^:c|^:d) Y = { X !(:a|:b) Y } UNION { Y !(:c|:d) X } if ( pathNotOneOf.getFwdNodes().size() > 0 ) { Iterator<Node> nodes1 = doOneExcludeForwards(pathNotOneOf.getFwdNodes()) ; fill(nodes1) ; } if ( pathNotOneOf.getBwdNodes().size() > 0 ) { Iterator<Node> nodes2 = doOneExcludeBackwards(pathNotOneOf.getBwdNodes()) ; fill(nodes2) ; } }
@Override protected void doNegatedPropertySet(P_NegPropSet pathNotOneOf, Node node, Collection<Node> output) { if ( pathNotOneOf.getFwdNodes().size() > 0 ) { Iterator<Node> nodes1 = stepExcludeForwards(graph, node, pathNotOneOf.getFwdNodes()) ; fill(nodes1, output) ; } if ( pathNotOneOf.getBwdNodes().size() > 0 ) { Iterator<Node> nodes2 = stepExcludeBackwards(graph, node, pathNotOneOf.getBwdNodes()) ; fill(nodes2, output) ; } }
@Override protected void doNegatedPropertySet(P_NegPropSet pathNotOneOf, Node node, Collection<Node> output) { // X !(:a|:b|^:c|^:d) Y = { X !(:a|:b) Y } UNION { Y !(:c|:d) X } if ( pathNotOneOf.getFwdNodes().size() > 0 ) { Iterator<Node> nodes1 = stepExcludeForwards(graph, node, pathNotOneOf.getFwdNodes()) ; fillUnique(nodes1, output) ; } if ( pathNotOneOf.getBwdNodes().size() > 0 ) { Iterator<Node> nodes2 = stepExcludeBackwards(graph, node, pathNotOneOf.getBwdNodes()) ; fillUnique(nodes2, output) ; } }
public void visit(P_NegPropSet pathNotOneOf) { if ( pathNotOneOf.getBwdNodes().size() > 0 ) Log.warn(this, "Only forward negated property sets implemented") ; // X !(:a|:b|^:c|^:d) Y = { X !(:a|:b) Y } UNION { Y !(:c|:d) X } List<Node> props = pathNotOneOf.getFwdNodes() ; if ( props.size() == 0 ) throw new ARQException("Bad path element: Negative property set found with no elements") ; //Iterator<Node> nodes = doOneExclude(pathNotOneOf.getFwdNodes(), pathNotOneOf.getBwdNodes()) ; Iterator<Node> nodes = doOneExclude(pathNotOneOf.getFwdNodes()) ; fill(nodes) ; }
try { List<Node> fwd = p.getFwdNodes(); List<Node> bwd = p.getBwdNodes(); int numberOfForwardProps = fwd.size(); List<Rule> rules = new LinkedList<Rule>();
@Override public void visit(P_NegPropSet p) { List<Node> fwd = p.getFwdNodes(); List<Node> bwd = p.getBwdNodes(); ElementGroup group = new ElementGroup(); String fwdpred = null; bwdGroup.addElement(bwdElt); bwdGroup.addElementFilter(new ElementFilter(new E_NotEquals(getExpr(subject), getExpr(object)))); for (Node n: p.getBwdNodes()) { Expr exp = getExpr(n); E_NotEquals neq = new E_NotEquals(new ExprVar(bwdpred),exp); for (Node n: p.getBwdNodes()) { if (alreadySeen.add(n)) { Expr exp = getExpr(n); e.addTriple(bwdtriple); group.addElement(e); for (Node n: p.getBwdNodes()) { Expr exp = getExpr(n); E_NotEquals neq = new E_NotEquals(new ExprVar(bwdpred),exp);