Index: src/main/java/org/openrdf/query/algebra/helpers/QueryModelVisitorBase.java =================================================================== --- src/main/java/org/openrdf/query/algebra/helpers/QueryModelVisitorBase.java (Revision 7669) +++ src/main/java/org/openrdf/query/algebra/helpers/QueryModelVisitorBase.java (Arbeitskopie) @@ -56,6 +56,7 @@ import org.openrdf.query.algebra.QueryRoot; import org.openrdf.query.algebra.Regex; import org.openrdf.query.algebra.SameTerm; +import org.openrdf.query.algebra.Set; import org.openrdf.query.algebra.SingletonSet; import org.openrdf.query.algebra.Slice; import org.openrdf.query.algebra.StatementPattern; @@ -359,6 +360,12 @@ meetBinaryValueOperator(node); } + public void meet(Set node) + throws X + { + meetNode(node); + } + public void meet(SingletonSet node) throws X { Index: src/main/java/org/openrdf/query/algebra/Set.java =================================================================== --- src/main/java/org/openrdf/query/algebra/Set.java (Revision 0) +++ src/main/java/org/openrdf/query/algebra/Set.java (Revision 0) @@ -0,0 +1,26 @@ +/* + * Copyright Aduna (http://www.aduna-software.com/) (c) 1997-2006. + * + * Licensed under the Aduna BSD-style license. + */ +package org.openrdf.query.algebra; + + +/** + * A tuple expression that contains exactly one solution with zero bindings. + */ +public abstract class Set extends QueryModelNodeBase implements TupleExpr { + + public abstract int cardinality(); + + public void visit(QueryModelVisitor visitor) + throws X + { + visitor.meet(this); + } + + @Override + public Set clone() { + return (Set)super.clone(); + } +} Index: src/main/java/org/openrdf/query/algebra/QueryModelVisitor.java =================================================================== --- src/main/java/org/openrdf/query/algebra/QueryModelVisitor.java (Revision 7669) +++ src/main/java/org/openrdf/query/algebra/QueryModelVisitor.java (Arbeitskopie) @@ -155,6 +155,9 @@ public void meet(Filter node) throws X; + public void meet(Set node) + throws X; + public void meet(SingletonSet node) throws X; Index: pom.xml =================================================================== --- pom.xml (Revision 7669) +++ pom.xml (Arbeitskopie) @@ -9,7 +9,7 @@ sesame-queryalgebra-model - 2.2-SNAPSHOT + 2.2-set-injection-SNAPSHOT OpenRDF Sesame: Query algebra - model A generic query algebra for RDF queries.