| java.lang.Object com.hp.hpl.jena.reasoner.rulesys.builtins.BaseBuiltin
All known Subclasses: com.hp.hpl.jena.reasoner.rulesys.builtins.Table, com.hp.hpl.jena.reasoner.rulesys.builtins.StrConcat, com.hp.hpl.jena.reasoner.rulesys.builtins.ListNotEqual, com.hp.hpl.jena.reasoner.rulesys.builtins.Product, com.hp.hpl.jena.reasoner.rulesys.builtins.NotDType, com.hp.hpl.jena.reasoner.rulesys.builtins.ListEqual, com.hp.hpl.jena.reasoner.rulesys.builtins.Equal, com.hp.hpl.jena.reasoner.rulesys.builtins.Hide, com.hp.hpl.jena.reasoner.rulesys.builtins.GE, com.hp.hpl.jena.reasoner.rulesys.builtins.ListLength, com.hp.hpl.jena.reasoner.rulesys.builtins.Regex, com.hp.hpl.jena.reasoner.rulesys.builtins.Difference, com.hp.hpl.jena.reasoner.rulesys.builtins.Remove, com.hp.hpl.jena.reasoner.rulesys.builtins.Print, com.hp.hpl.jena.reasoner.rulesys.builtins.NotEqual, com.hp.hpl.jena.reasoner.rulesys.builtins.IsDType, com.hp.hpl.jena.reasoner.rulesys.builtins.CountLiteralValues, com.hp.hpl.jena.reasoner.rulesys.builtins.Now, com.hp.hpl.jena.reasoner.rulesys.builtins.Drop, com.hp.hpl.jena.reasoner.rulesys.builtins.Sum, com.hp.hpl.jena.reasoner.rulesys.builtins.NoValue, com.hp.hpl.jena.reasoner.rulesys.builtins.Quotient, com.hp.hpl.jena.reasoner.rulesys.builtins.NotBNode, com.hp.hpl.jena.reasoner.rulesys.builtins.LE, com.hp.hpl.jena.reasoner.rulesys.builtins.GreaterThan, com.hp.hpl.jena.reasoner.rulesys.builtins.NotFunctor, com.hp.hpl.jena.reasoner.rulesys.builtins.LessThan, com.hp.hpl.jena.reasoner.rulesys.builtins.ListEntry, com.hp.hpl.jena.reasoner.rulesys.builtins.IsFunctor, com.hp.hpl.jena.reasoner.rulesys.builtins.TableAll, com.hp.hpl.jena.reasoner.rulesys.builtins.ListMapAsObject, com.hp.hpl.jena.reasoner.rulesys.builtins.AssertDisjointPairs, com.hp.hpl.jena.reasoner.rulesys.builtins.MakeInstance, com.hp.hpl.jena.reasoner.rulesys.builtins.ListContains, com.hp.hpl.jena.reasoner.rulesys.builtins.MakeTemp, com.hp.hpl.jena.reasoner.rulesys.builtins.Bound, com.hp.hpl.jena.reasoner.rulesys.builtins.ListMapAsSubject, com.hp.hpl.jena.reasoner.rulesys.builtins.NotLiteral, com.hp.hpl.jena.reasoner.rulesys.builtins.Max, com.hp.hpl.jena.reasoner.rulesys.builtins.AddOne, com.hp.hpl.jena.reasoner.rulesys.builtins.ListNotContains, com.hp.hpl.jena.reasoner.rulesys.builtins.Unbound, com.hp.hpl.jena.reasoner.rulesys.builtins.Min, com.hp.hpl.jena.reasoner.rulesys.builtins.IsBNode, com.hp.hpl.jena.reasoner.rulesys.builtins.IsLiteral,
BaseBuiltin | abstract public class BaseBuiltin implements Builtin(Code) | | Dummy implementation of the Builtin interface that specific
implementations can inherit from.
author: Dave Reynolds version: $Revision: 1.14 $ on $Date: 2008/01/02 12:06:20 $ |
Method Summary | |
public boolean | bodyCall(Node[] args, int length, RuleContext context) This method is invoked when the builtin is called in a rule body. | public void | checkArgs(int length, RuleContext context) Check the argument length. | public Node | getArg(int n, Node[] args, RuleContext context) Return the n'th argument node after dererencing by what ever type of
rule engine binding environment is appropriate. | public int | getArgLength() Return the expected number of arguments for this functor or 0 if the number is flexible. | public String | getURI() Return the full URI which identifies this built in. | public void | headAction(Node[] args, int length, RuleContext context) This method is invoked when the builtin is called in a rule head. | public boolean | isMonotonic() Returns false if this builtin is non-monotonic. | public boolean | isSafe() Returns false if this builtin has side effects when run in a body clause,
other than the binding of environment variables. |
BASE_URI | final public static String BASE_URI(Code) | | Base URI for jena builtins
|
bodyCall | public boolean bodyCall(Node[] args, int length, RuleContext context)(Code) | | This method is invoked when the builtin is called in a rule body.
Parameters: args - the array of argument values for the builtin, this is an array of Nodes, some of which may be Node_RuleVariables. Parameters: length - the length of the argument list, may be less than the length of the args arrayfor some rule engines Parameters: context - an execution context giving access to other relevant data return true if the buildin predicate is deemed to have succeeded inthe current environment |
checkArgs | public void checkArgs(int length, RuleContext context)(Code) | | Check the argument length.
|
getArg | public Node getArg(int n, Node[] args, RuleContext context)(Code) | | Return the n'th argument node after dererencing by what ever type of
rule engine binding environment is appropriate.
|
getArgLength | public int getArgLength()(Code) | | Return the expected number of arguments for this functor or 0 if the number is flexible.
|
getURI | public String getURI()(Code) | | Return the full URI which identifies this built in.
|
headAction | public void headAction(Node[] args, int length, RuleContext context)(Code) | | This method is invoked when the builtin is called in a rule head.
Such a use is only valid in a forward rule.
Parameters: args - the array of argument values for the builtin, this is an array of Nodes. Parameters: length - the length of the argument list, may be less than the length of the args arrayfor some rule engines Parameters: context - an execution context giving access to other relevant data |
isMonotonic | public boolean isMonotonic()(Code) | | Returns false if this builtin is non-monotonic. This includes non-monotonic checks like noValue
and non-monotonic actions like remove/drop. A non-monotonic call in a head is assumed to
be an action and makes the overall rule and ruleset non-monotonic.
Most JenaRules are monotonic deductive closure rules in which this should be false.
|
isSafe | public boolean isSafe()(Code) | | Returns false if this builtin has side effects when run in a body clause,
other than the binding of environment variables.
|
|
|