Class Having
Represents a Having Clause.
Inherited Members
Namespace: VDS.RDF.Query.Algebra
Assembly: dotNetRdf.dll
Syntax
public class Having : IUnaryOperator, ISparqlAlgebra, IVisitable, IProcessable
Constructors
| Edit this page View SourceHaving(ISparqlAlgebra, ISparqlFilter)
Creates a new Having Clause.
Declaration
public Having(ISparqlAlgebra pattern, ISparqlFilter having)
Parameters
| Type | Name | Description |
|---|---|---|
| ISparqlAlgebra | pattern | Pattern. |
| ISparqlFilter | having | Having Clause. |
Properties
| Edit this page View SourceFixedVariables
Gets the enumeration of fixed variables in the algebra i.e. variables that are guaranteed to have a bound value.
Declaration
public IEnumerable<string> FixedVariables { get; }
Property Value
| Type | Description |
|---|---|
| IEnumerable<string> |
FloatingVariables
Gets the enumeration of floating variables in the algebra i.e. variables that are not guaranteed to have a bound value.
Declaration
public IEnumerable<string> FloatingVariables { get; }
Property Value
| Type | Description |
|---|---|
| IEnumerable<string> |
HavingClause
Gets the HAVING clause used.
Declaration
public ISparqlFilter HavingClause { get; }
Property Value
| Type | Description |
|---|---|
| ISparqlFilter |
Remarks
If the Query supplied in the SparqlEvaluationContext is non-null and has a HAVING clause then that is applied rather than the clause with which the Having algebra is instantiated.
InnerAlgebra
Gets the Inner Algebra.
Declaration
public ISparqlAlgebra InnerAlgebra { get; }
Property Value
| Type | Description |
|---|---|
| ISparqlAlgebra |
Variables
Gets the Variables used in the Algebra.
Declaration
public IEnumerable<string> Variables { get; }
Property Value
| Type | Description |
|---|---|
| IEnumerable<string> |
Methods
| Edit this page View SourceAccept<T>(ISparqlAlgebraVisitor<T>)
Accept a simple algebra visitor.
Declaration
public T Accept<T>(ISparqlAlgebraVisitor<T> visitor)
Parameters
| Type | Name | Description |
|---|---|---|
| ISparqlAlgebraVisitor<T> | visitor | The visitor implementation. |
Returns
| Type | Description |
|---|---|
| T |
Type Parameters
| Name | Description |
|---|---|
| T | The type returned by the Visit methods of the visitor. |
Accept<TResult, TContext>(ISparqlQueryAlgebraProcessor<TResult, TContext>, TContext)
Called by an algebra visitor to process an item by invoking the appropriate method on the processor passed in.
Declaration
public TResult Accept<TResult, TContext>(ISparqlQueryAlgebraProcessor<TResult, TContext> processor, TContext context)
Parameters
| Type | Name | Description |
|---|---|---|
| ISparqlQueryAlgebraProcessor<TResult, TContext> | processor | The processor to invoke. |
| TContext | context | The context to pass to the processor. |
Returns
| Type | Description |
|---|---|
| TResult | The result of invoking the processor method. |
Type Parameters
| Name | Description |
|---|---|
| TResult | The type of result returned by the processor. |
| TContext | The type of the context object to be provided to the processor. |
ToGraphPattern()
Throws an exception since a Having() cannot be converted back to a Graph Pattern.
Declaration
public GraphPattern ToGraphPattern()
Returns
| Type | Description |
|---|---|
| GraphPattern |
Exceptions
| Type | Condition |
|---|---|
| NotSupportedException | Thrown since a Having() cannot be converted to a Graph Pattern. |
ToQuery()
Converts the Algebra back to a SPARQL Query.
Declaration
public SparqlQuery ToQuery()
Returns
| Type | Description |
|---|---|
| SparqlQuery |
ToString()
Gets the String representation of the Algebra.
Declaration
public override string ToString()
Returns
| Type | Description |
|---|---|
| string |
Overrides
| Edit this page View SourceTransform(IAlgebraOptimiser)
Transforms the Inner Algebra using the given Optimiser.
Declaration
public ISparqlAlgebra Transform(IAlgebraOptimiser optimiser)
Parameters
| Type | Name | Description |
|---|---|---|
| IAlgebraOptimiser | optimiser | Optimiser. |
Returns
| Type | Description |
|---|---|
| ISparqlAlgebra |