Package org.topbraid.shacl.arq
Class SHACLARQFunction
- java.lang.Object
-
- org.topbraid.shacl.arq.SHACLARQFunction
-
- All Implemented Interfaces:
org.apache.jena.sparql.function.Function,org.apache.jena.sparql.function.FunctionFactory,DeclarativeFunctionFactory,OptionalArgsFunction
- Direct Known Subclasses:
SHACLSPARQLARQFunction
public abstract class SHACLARQFunction extends Object implements org.apache.jena.sparql.function.Function, OptionalArgsFunction, DeclarativeFunctionFactory
An ARQ function that is based on a SHACL function definition.- Author:
- Holger Knublauch
-
-
Field Summary
Fields Modifier and Type Field Description protected List<String>paramNames
-
Constructor Summary
Constructors Modifier Constructor Description protectedSHACLARQFunction(SHFunction shaclFunction)Constructs a new SHACLARQFunction based on a given sh:Function.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected voidaddParameters(SHParameterizable parameterizable)voidbuild(String uri, org.apache.jena.sparql.expr.ExprList args)org.apache.jena.sparql.function.Functioncreate(String uri)org.apache.jena.sparql.expr.NodeValueexec(org.apache.jena.sparql.engine.binding.Binding binding, org.apache.jena.sparql.expr.ExprList args, String uri, org.apache.jena.sparql.function.FunctionEnv env)abstract org.apache.jena.sparql.expr.NodeValueexecuteBody(org.apache.jena.query.Dataset dataset, org.apache.jena.rdf.model.Model model, org.apache.jena.query.QuerySolution bindings)String[]getParamNames()Gets the names of the declared parameters, in order from left to right.protected abstract StringgetQueryString()SHFunctiongetSHACLFunction()Gets the underlying sh:Function Model object for this ARQ function.booleanisOptionalArg(int index)
-
-
-
Constructor Detail
-
SHACLARQFunction
protected SHACLARQFunction(SHFunction shaclFunction)
Constructs a new SHACLARQFunction based on a given sh:Function. The shaclFunction must be associated with the Model containing the triples of its definition.- Parameters:
shaclFunction- the SHACL function
-
-
Method Detail
-
addParameters
protected void addParameters(SHParameterizable parameterizable)
-
build
public void build(String uri, org.apache.jena.sparql.expr.ExprList args)
- Specified by:
buildin interfaceorg.apache.jena.sparql.function.Function
-
create
public org.apache.jena.sparql.function.Function create(String uri)
- Specified by:
createin interfaceorg.apache.jena.sparql.function.FunctionFactory
-
exec
public org.apache.jena.sparql.expr.NodeValue exec(org.apache.jena.sparql.engine.binding.Binding binding, org.apache.jena.sparql.expr.ExprList args, String uri, org.apache.jena.sparql.function.FunctionEnv env)- Specified by:
execin interfaceorg.apache.jena.sparql.function.Function
-
executeBody
public abstract org.apache.jena.sparql.expr.NodeValue executeBody(org.apache.jena.query.Dataset dataset, org.apache.jena.rdf.model.Model model, org.apache.jena.query.QuerySolution bindings)
-
getQueryString
protected abstract String getQueryString()
-
getSHACLFunction
public SHFunction getSHACLFunction()
Gets the underlying sh:Function Model object for this ARQ function.- Returns:
- the sh:Function (may be null)
-
getParamNames
public String[] getParamNames()
Gets the names of the declared parameters, in order from left to right.- Returns:
- the parameter names
-
isOptionalArg
public boolean isOptionalArg(int index)
- Specified by:
isOptionalArgin interfaceOptionalArgsFunction
-
-