Class LazyUnion
Represents a Union.
Inheritance
Inherited Members
Namespace: VDS.RDF.Query.Algebra
Assembly: dotNetRdf.dll
Syntax
public class LazyUnion : IUnion, IAbstractJoin, ISparqlAlgebra, IVisitable, IProcessable
Remarks
A Lazy Union differs from a standard Union in that if it finds sufficient solutions on the LHS it has no need to evaluate the RHS.
Constructors
| Improve this Doc View SourceLazyUnion(ISparqlAlgebra, ISparqlAlgebra, int)
Creates a new Lazy Union.
Declaration
public LazyUnion(ISparqlAlgebra lhs, ISparqlAlgebra rhs, int requiredResults)
Parameters
Type | Name | Description |
---|---|---|
ISparqlAlgebra | lhs | LHS Pattern. |
ISparqlAlgebra | rhs | RHS Pattern. |
int | requiredResults | The number of results that the Union should attempt to return. |
Remarks
A Lazy Union differs from a standard Union in that if it finds sufficient solutions on the LHS it has no need to evaluate the RHS.
LazyUnion(ISparqlAlgebra, ISparqlAlgebra)
Creates a new Lazy Union.
Declaration
public LazyUnion(ISparqlAlgebra lhs, ISparqlAlgebra rhs)
Parameters
Type | Name | Description |
---|---|---|
ISparqlAlgebra | lhs | LHS Pattern. |
ISparqlAlgebra | rhs | RHS Pattern. |
Remarks
A Lazy Union differs from a standard Union in that if it finds sufficient solutions on the LHS it has no need to evaluate the RHS.
Properties
| Improve this Doc 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 |
---|---|
System.Collections.Generic.IEnumerable<T><string> |
Remarks
A Lazy Union differs from a standard Union in that if it finds sufficient solutions on the LHS it has no need to evaluate the RHS.
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 |
---|---|
System.Collections.Generic.IEnumerable<T><string> |
Remarks
A Lazy Union differs from a standard Union in that if it finds sufficient solutions on the LHS it has no need to evaluate the RHS.
Lhs
Gets the LHS of the Join.
Declaration
public ISparqlAlgebra Lhs { get; }
Property Value
Type | Description |
---|---|
ISparqlAlgebra |
Remarks
A Lazy Union differs from a standard Union in that if it finds sufficient solutions on the LHS it has no need to evaluate the RHS.
RequiredResults
Declaration
public int RequiredResults { get; }
Property Value
Type | Description |
---|---|
int |
Remarks
A Lazy Union differs from a standard Union in that if it finds sufficient solutions on the LHS it has no need to evaluate the RHS.
Rhs
Gets the RHS of the Join.
Declaration
public ISparqlAlgebra Rhs { get; }
Property Value
Type | Description |
---|---|
ISparqlAlgebra |
Remarks
A Lazy Union differs from a standard Union in that if it finds sufficient solutions on the LHS it has no need to evaluate the RHS.
Variables
Gets the Variables used in the Algebra.
Declaration
public IEnumerable<string> Variables { get; }
Property Value
Type | Description |
---|---|
System.Collections.Generic.IEnumerable<T><string> |
Remarks
A Lazy Union differs from a standard Union in that if it finds sufficient solutions on the LHS it has no need to evaluate the RHS.
Methods
| Improve this Doc View SourceAccept<T>(ISparqlAlgebraVisitor<T>)
Declaration
public T Accept<T>(ISparqlAlgebraVisitor<T> visitor)
Parameters
Type | Name | Description |
---|---|---|
ISparqlAlgebraVisitor<T> | visitor |
Returns
Type | Description |
---|---|
T |
Type Parameters
Name | Description |
---|---|
T |
Remarks
A Lazy Union differs from a standard Union in that if it finds sufficient solutions on the LHS it has no need to evaluate the RHS.
Accept<TResult, TContext>(ISparqlQueryAlgebraProcessor<TResult, TContext>, TContext)
Declaration
public TResult Accept<TResult, TContext>(ISparqlQueryAlgebraProcessor<TResult, TContext> processor, TContext context)
Parameters
Type | Name | Description |
---|---|---|
ISparqlQueryAlgebraProcessor<TResult, TContext> | processor | |
TContext | context |
Returns
Type | Description |
---|---|
TResult |
Type Parameters
Name | Description |
---|---|
TResult | |
TContext |
Remarks
A Lazy Union differs from a standard Union in that if it finds sufficient solutions on the LHS it has no need to evaluate the RHS.
Evaluate(SparqlEvaluationContext)
Evaluates the Lazy Union.
Declaration
public BaseMultiset Evaluate(SparqlEvaluationContext context)
Parameters
Type | Name | Description |
---|---|---|
SparqlEvaluationContext | context | Evaluation Context. |
Returns
Type | Description |
---|---|
BaseMultiset |
Remarks
A Lazy Union differs from a standard Union in that if it finds sufficient solutions on the LHS it has no need to evaluate the RHS.
ToGraphPattern()
Converts the Union back to Graph Patterns.
Declaration
public GraphPattern ToGraphPattern()
Returns
Type | Description |
---|---|
GraphPattern |
Remarks
A Lazy Union differs from a standard Union in that if it finds sufficient solutions on the LHS it has no need to evaluate the RHS.
ToQuery()
Converts the Algebra back to a SPARQL Query.
Declaration
public SparqlQuery ToQuery()
Returns
Type | Description |
---|---|
SparqlQuery |
Remarks
A Lazy Union differs from a standard Union in that if it finds sufficient solutions on the LHS it has no need to evaluate the RHS.
ToString()
Gets the String representation of the Algebra.
Declaration
public override string ToString()
Returns
Type | Description |
---|---|
string |
Overrides
Remarks
A Lazy Union differs from a standard Union in that if it finds sufficient solutions on the LHS it has no need to evaluate the RHS.
Transform(IAlgebraOptimiser)
Transforms both sides of the Join using the given Optimiser.
Declaration
public ISparqlAlgebra Transform(IAlgebraOptimiser optimiser)
Parameters
Type | Name | Description |
---|---|---|
IAlgebraOptimiser | optimiser | Optimser. |
Returns
Type | Description |
---|---|
ISparqlAlgebra |
Remarks
A Lazy Union differs from a standard Union in that if it finds sufficient solutions on the LHS it has no need to evaluate the RHS.
TransformLhs(IAlgebraOptimiser)
Transforms the LHS of the Join using the given Optimiser.
Declaration
public ISparqlAlgebra TransformLhs(IAlgebraOptimiser optimiser)
Parameters
Type | Name | Description |
---|---|---|
IAlgebraOptimiser | optimiser | Optimser. |
Returns
Type | Description |
---|---|
ISparqlAlgebra |
Remarks
A Lazy Union differs from a standard Union in that if it finds sufficient solutions on the LHS it has no need to evaluate the RHS.
TransformRhs(IAlgebraOptimiser)
Transforms the RHS of the Join using the given Optimiser.
Declaration
public ISparqlAlgebra TransformRhs(IAlgebraOptimiser optimiser)
Parameters
Type | Name | Description |
---|---|---|
IAlgebraOptimiser | optimiser | Optimser. |
Returns
Type | Description |
---|---|
ISparqlAlgebra |
Remarks
A Lazy Union differs from a standard Union in that if it finds sufficient solutions on the LHS it has no need to evaluate the RHS.