Class AskBgp
Represents a BGP which is a set of Triple Patterns.
Inheritance
Inherited Members
Namespace: VDS.RDF.Query.Algebra
Assembly: dotNetRdf.dll
Syntax
public class AskBgp : IBgp, ITerminalOperator, ISparqlAlgebra, IVisitable, IProcessable
Remarks
An Ask BGP differs from a BGP in that rather than evaluating each Triple Pattern in turn it evaluates across all Triple Patterns. This is used for ASK queries where we are only concerned with whether a BGP matches and not in the specific solutions.
An Ask BGP can only contain concrete Triple Patterns and/or FILTERs and not any of the other specialised Triple Pattern classes.
Constructors
| Improve this Doc View SourceAskBgp(IEnumerable<ITriplePattern>)
Creates a Streamed BGP containing a set of Triple Patterns.
Declaration
public AskBgp(IEnumerable<ITriplePattern> ps)
Parameters
Type | Name | Description |
---|---|---|
System.Collections.Generic.IEnumerable<T><ITriplePattern> | ps | Triple Patterns. |
Remarks
An Ask BGP differs from a BGP in that rather than evaluating each Triple Pattern in turn it evaluates across all Triple Patterns. This is used for ASK queries where we are only concerned with whether a BGP matches and not in the specific solutions.
An Ask BGP can only contain concrete Triple Patterns and/or FILTERs and not any of the other specialised Triple Pattern classes.
AskBgp(ITriplePattern)
Creates a Streamed BGP containing a single Triple Pattern.
Declaration
public AskBgp(ITriplePattern p)
Parameters
Type | Name | Description |
---|---|---|
ITriplePattern | p | Triple Pattern. |
Remarks
An Ask BGP differs from a BGP in that rather than evaluating each Triple Pattern in turn it evaluates across all Triple Patterns. This is used for ASK queries where we are only concerned with whether a BGP matches and not in the specific solutions.
An Ask BGP can only contain concrete Triple Patterns and/or FILTERs and not any of the other specialised Triple Pattern classes.
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
An Ask BGP differs from a BGP in that rather than evaluating each Triple Pattern in turn it evaluates across all Triple Patterns. This is used for ASK queries where we are only concerned with whether a BGP matches and not in the specific solutions.
An Ask BGP can only contain concrete Triple Patterns and/or FILTERs and not any of the other specialised Triple Pattern classes.
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
An Ask BGP differs from a BGP in that rather than evaluating each Triple Pattern in turn it evaluates across all Triple Patterns. This is used for ASK queries where we are only concerned with whether a BGP matches and not in the specific solutions.
An Ask BGP can only contain concrete Triple Patterns and/or FILTERs and not any of the other specialised Triple Pattern classes.
IsEmpty
Gets whether the BGP is the empty BGP.
Declaration
public bool IsEmpty { get; }
Property Value
Type | Description |
---|---|
System.Boolean |
Remarks
An Ask BGP differs from a BGP in that rather than evaluating each Triple Pattern in turn it evaluates across all Triple Patterns. This is used for ASK queries where we are only concerned with whether a BGP matches and not in the specific solutions.
An Ask BGP can only contain concrete Triple Patterns and/or FILTERs and not any of the other specialised Triple Pattern classes.
PatternCount
Gets the number of Triple Patterns in the BGP.
Declaration
public int PatternCount { get; }
Property Value
Type | Description |
---|---|
int |
Remarks
An Ask BGP differs from a BGP in that rather than evaluating each Triple Pattern in turn it evaluates across all Triple Patterns. This is used for ASK queries where we are only concerned with whether a BGP matches and not in the specific solutions.
An Ask BGP can only contain concrete Triple Patterns and/or FILTERs and not any of the other specialised Triple Pattern classes.
TriplePatterns
Gets the Triple Patterns in the BGP.
Declaration
public IReadOnlyList<ITriplePattern> TriplePatterns { get; }
Property Value
Type | Description |
---|---|
System.Collections.Generic.IReadOnlyList<T><ITriplePattern> |
Remarks
An Ask BGP differs from a BGP in that rather than evaluating each Triple Pattern in turn it evaluates across all Triple Patterns. This is used for ASK queries where we are only concerned with whether a BGP matches and not in the specific solutions.
An Ask BGP can only contain concrete Triple Patterns and/or FILTERs and not any of the other specialised Triple Pattern classes.
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
An Ask BGP differs from a BGP in that rather than evaluating each Triple Pattern in turn it evaluates across all Triple Patterns. This is used for ASK queries where we are only concerned with whether a BGP matches and not in the specific solutions.
An Ask BGP can only contain concrete Triple Patterns and/or FILTERs and not any of the other specialised Triple Pattern classes.
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
An Ask BGP differs from a BGP in that rather than evaluating each Triple Pattern in turn it evaluates across all Triple Patterns. This is used for ASK queries where we are only concerned with whether a BGP matches and not in the specific solutions.
An Ask BGP can only contain concrete Triple Patterns and/or FILTERs and not any of the other specialised Triple Pattern classes.
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
An Ask BGP differs from a BGP in that rather than evaluating each Triple Pattern in turn it evaluates across all Triple Patterns. This is used for ASK queries where we are only concerned with whether a BGP matches and not in the specific solutions.
An Ask BGP can only contain concrete Triple Patterns and/or FILTERs and not any of the other specialised Triple Pattern classes.
ToGraphPattern()
Converts the BGP back to a Graph Pattern.
Declaration
public GraphPattern ToGraphPattern()
Returns
Type | Description |
---|---|
GraphPattern |
Remarks
An Ask BGP differs from a BGP in that rather than evaluating each Triple Pattern in turn it evaluates across all Triple Patterns. This is used for ASK queries where we are only concerned with whether a BGP matches and not in the specific solutions.
An Ask BGP can only contain concrete Triple Patterns and/or FILTERs and not any of the other specialised Triple Pattern classes.
ToQuery()
Converts the Algebra back to a SPARQL Query.
Declaration
public SparqlQuery ToQuery()
Returns
Type | Description |
---|---|
SparqlQuery |
Remarks
An Ask BGP differs from a BGP in that rather than evaluating each Triple Pattern in turn it evaluates across all Triple Patterns. This is used for ASK queries where we are only concerned with whether a BGP matches and not in the specific solutions.
An Ask BGP can only contain concrete Triple Patterns and/or FILTERs and not any of the other specialised Triple Pattern classes.
ToString()
Gets the String representation of the Algebra.
Declaration
public override string ToString()
Returns
Type | Description |
---|---|
string |
Overrides
Remarks
An Ask BGP differs from a BGP in that rather than evaluating each Triple Pattern in turn it evaluates across all Triple Patterns. This is used for ASK queries where we are only concerned with whether a BGP matches and not in the specific solutions.
An Ask BGP can only contain concrete Triple Patterns and/or FILTERs and not any of the other specialised Triple Pattern classes.