Class LPBindingEnvironment

  • All Implemented Interfaces:
    BindingEnvironment

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

      • LPBindingEnvironment

        public LPBindingEnvironment​(LPInterpreter interpeter)
        Constructor.
    • Method Detail

      • 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
        Parameters:
        var - a Node_RuleVariable defining the variable to bind
        value - the value to bind
        Returns:
        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
        Parameters:
        pattern - the triple pattern to match
        Returns:
        a new, instantiated triple