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) ; } }
public Path make(ItemList list) { BuilderLib.checkLengthAtLeast(1, list, "path: negative property set: must be at least one element") ; P_NegPropSet pNegClass = new P_NegPropSet() ; for ( int i = 1 ; i < list.size() ; i++ ) { Item item = list.get(i) ; // Node or reverse? Path p = build(item) ; if ( ! ( p instanceof P_Path0 ) ) BuilderLib.broken(item, "Not a property or reverse property") ; pNegClass.add((P_Path0)p) ; } return pNegClass ; } } ;
List<P_Path0> backwards = new ArrayList<P_Path0>() ; for ( P_Path0 p : pathNotOneOf.getNodes() ) P_NegPropSet pFwd = new P_NegPropSet() ; for ( P_Path0 p : forwards ) pFwd.add(p) ; opFwd = make(subject, pFwd, object) ; P_NegPropSet pBwd = new P_NegPropSet() ; for ( P_Path0 p : backwards ) pBwd.add(p) ; opBwd = make(subject, pBwd, object) ;
public void visit(P_NegPropSet pathNotOneOf) { out.print("(") ; out.print(Tags.pathNotOneOf) ; for ( P_Path0 p : pathNotOneOf.getNodes() ) { out.print(" ") ; output(p) ; } out.print(")") ; }
@Override public void visit(P_NegPropSet pathNotOneOf) { out.print("(") ; out.print(Tags.tagPathNotOneOf) ; for ( P_Path0 p : pathNotOneOf.getNodes() ) { out.print(" ") ; output(p) ; } out.print(")") ; }
@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) ; } }
@Override public Path make(ItemList list) { BuilderLib.checkLengthAtLeast(1, list, "path: negative property set: must be at least one element") ; P_NegPropSet pNegClass = new P_NegPropSet() ; for ( int i = 1 ; i < list.size() ; i++ ) { Item item = list.get(i) ; // Node or reverse? Path p = build(item) ; if ( ! ( p instanceof P_Path0 ) ) BuilderLib.broken(item, "Not a property or reverse property") ; pNegClass.add((P_Path0)p) ; } return pNegClass ; } } ;
@Override public void visit(P_NegPropSet pathNotOneOf) List<P_Path0> props = pathNotOneOf.getNodes() ; if ( props.size() == 0 ) throw new ARQException("Bad path element: NotOneOf found with no elements") ;
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) ; }
final public Path PathNegatedPropertySet() throws ParseException { P_Path0 p ; P_NegPropSet pNegSet ; pNegSet = new P_NegPropSet() ; switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case IRIref: case CARAT: p = PathOneInPropertySet(); pNegSet.add(p) ; break; case LPAREN: case CARAT: p = PathOneInPropertySet(); pNegSet.add(p) ; label_31: while (true) { pNegSet.add(p) ;
public void visit(P_NegPropSet pathNotOneOf) List<P_Path0> props = pathNotOneOf.getNodes() ; if ( props.size() == 0 ) throw new ARQException("Bad path element: NotOneOf found with no elements") ;
@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) ; } }
final public Path PathNegatedPropertySet() throws ParseException { P_Path0 p ; P_NegPropSet pNegSet ; pNegSet = new P_NegPropSet() ; switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case IRIref: case CARAT: p = PathOneInPropertySet(); pNegSet.add(p) ; break; case LPAREN: case CARAT: p = PathOneInPropertySet(); pNegSet.add(p) ; label_30: while (true) { pNegSet.add(p) ;
@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) ; } }
final public Path PathNegatedPropertySet() throws ParseException { P_Path0 p ; P_NegPropSet pNegSet ; pNegSet = new P_NegPropSet() ; switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case IRIref: case CARAT: p = PathOneInPropertySet(); pNegSet.add(p) ; break; case LPAREN: case CARAT: p = PathOneInPropertySet(); pNegSet.add(p) ; label_28: while (true) { pNegSet.add(p) ;
@Override public void visit(P_NegPropSet p) { try { List<Node> fwd = p.getFwdNodes(); List<Node> bwd = p.getBwdNodes(); int numberOfForwardProps = fwd.size(); List<Rule> rules = new LinkedList<Rule>();
final public Path PathNegatedPropertySet() throws ParseException { P_Path0 p ; P_NegPropSet pNegSet ; pNegSet = new P_NegPropSet() ; switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case IRIref: case CARAT: p = PathOneInPropertySet(); pNegSet.add(p) ; break; case LPAREN: case CARAT: p = PathOneInPropertySet(); pNegSet.add(p) ; label_26: while (true) { pNegSet.add(p) ;
@Override public void visit(P_NegPropSet p) { List<Node> fwd = p.getFwdNodes(); List<Node> bwd = p.getBwdNodes(); ElementGroup group = new ElementGroup(); String fwdpred = null; fwdGroup.addElement(fwdElt); fwdGroup.addElementFilter(new ElementFilter(new E_NotEquals(getExpr(subject), getExpr(object)))); for (Node n: p.getFwdNodes()) { Expr exp = getExpr(n); E_NotEquals neq = new E_NotEquals(new ExprVar(fwdpred),exp); 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); eqGroup.addElementFilter(new ElementFilter(new E_Equals(getExpr(subject), getExpr(object)))); Set<Node> alreadySeen = HashSetFactory.make(); for (Node n: p.getFwdNodes()) { if (alreadySeen.add(n)) { Expr exp = getExpr(n); for (Node n: p.getBwdNodes()) { if (alreadySeen.add(n)) { Expr exp = getExpr(n); e.addTriple(fwdtriple);