java.lang.Object
org.apache.jena.reasoner.rulesys.builtins.BaseBuiltin
org.apache.jena.reasoner.rulesys.builtins.Remove
All Implemented Interfaces:
Builtin

public class Remove extends BaseBuiltin
Remove the body clause given by index arguments from the database.
  • Constructor Details

    • Remove

      public Remove()
  • Method Details

    • getName

      public String getName()
      Return a name for this builtin, normally this will be the name of the functor that will be used to invoke it.
    • headAction

      public void headAction(Node[] args, int length, RuleContext context)
      This method is invoked when the builtin is called in a rule head. Such a use is only valid in a forward rule.
      Specified by:
      headAction in interface Builtin
      Overrides:
      headAction in class BaseBuiltin
      Parameters:
      args - the array of argument values for the builtin, this is an array of Nodes.
      length - the length of the argument list, may be less than the length of the args array for some rule engines
      context - an execution context giving access to other relevant data
    • isMonotonic

      public boolean isMonotonic()
      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.
      Specified by:
      isMonotonic in interface Builtin
      Overrides:
      isMonotonic in class BaseBuiltin