Interface MultiFunction
-
- All Known Implementing Classes:
AbstractMultiFunction,AbstractMultiFunction1,AbstractNativeMultiFunction,SPARQLMultiFunction,TargetContainsMultiFunction
public interface MultiFunctionThe base interface of (DASH) multi-functions. Multi-functions are procedures that take zero or more input variable bindings ("left hand side") and return zero or more output variable bindings, potentially with multiple variables per binding. They are similar to SPIN magic properties, yet more focused, see TBS-4117. In particular they only support the case where the values on the right hand side are computed from the values of the left hand side, not any other direction. The MultiFunction interface also defines functions to access metadata about the multi-function, for example for documentation generation purposes.- Author:
- Holger Knublauch
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description org.apache.jena.sparql.engine.QueryIteratorexecute(List<org.apache.jena.graph.Node> args, org.apache.jena.graph.Graph activeGraph, org.apache.jena.sparql.core.DatasetGraph dataset)Executes the multi-function for a given list of arguments.org.apache.jena.graph.NodegetAPIStatus()Gets the API status.StringgetDescription()Gets human-readable documentation for the MultiFunction, e.g.List<MultiFunctionParameter>getParameters()Gets metadata about the declared parameters (based on sh:parameter).List<MultiFunctionParameter>getResultVars()Gets metadata about the variables that will be produced for each solution (based on dash:resultVariable).StringgetURI()Gets the URI of this MultiFunction, which can also be used for the SPARQL property function.
-
-
-
Method Detail
-
execute
org.apache.jena.sparql.engine.QueryIterator execute(List<org.apache.jena.graph.Node> args, org.apache.jena.graph.Graph activeGraph, org.apache.jena.sparql.core.DatasetGraph dataset)
Executes the multi-function for a given list of arguments.- Parameters:
args- the argument values, matching the declared parameters from left to rightactiveGraph- the currently active query graphdataset- the DatasetGraph to operate on- Returns:
- a QueryIterator with name-value pairs
-
getAPIStatus
org.apache.jena.graph.Node getAPIStatus()
Gets the API status.- Returns:
- one of the instances of dash:APIStatus or null if this should not be used outside.
-
getDescription
String getDescription()
Gets human-readable documentation for the MultiFunction, e.g. for code generation.- Returns:
- the description or null
-
getParameters
List<MultiFunctionParameter> getParameters()
Gets metadata about the declared parameters (based on sh:parameter).- Returns:
- the parameters
-
getResultVars
List<MultiFunctionParameter> getResultVars()
Gets metadata about the variables that will be produced for each solution (based on dash:resultVariable).- Returns:
- the result variables
-
getURI
String getURI()
Gets the URI of this MultiFunction, which can also be used for the SPARQL property function.- Returns:
- the URI string
-
-