Class LPBindingEnvironment

All Implemented Interfaces:

public class LPBindingEnvironment extends Object implements BindingEnvironment
Implementation of the binding environment interface for use in LP backward rules.
  • Constructor Details

    • LPBindingEnvironment

      public LPBindingEnvironment(LPInterpreter interpeter)
  • Method Details

    • getGroundVersion

      public Node getGroundVersion(Node node)
      Return the most ground version of the node. If the node is not a variable just return it, if it is a variable bound in this environment return the binding, if it is an unbound variable return the variable.
      Specified by:
      getGroundVersion in interface BindingEnvironment
    • bind

      public boolean bind(Node var, Node value)
      Bind a variable in the current environment to the given value. Checks that the new binding is compatible with any current binding.
      Specified by:
      bind in interface BindingEnvironment
      var - a Node_RuleVariable defining the variable to bind
      value - the value to bind
      false if the binding fails
    • instantiate

      public Triple instantiate(TriplePattern pattern)
      Instantiate a triple pattern against the current environment. This version handles unbound variables by turning them into bNodes.
      Specified by:
      instantiate in interface BindingEnvironment
      pattern - the triple pattern to match
      a new, instantiated triple