Class GraphPattern


  • @InternalUseOnly
    public class GraphPattern
    extends Object
    A graph pattern consisting of (required and optional) tuple expressions, binding assignments and boolean constraints.
    Author:
    Arjohn Kampman
    • Constructor Detail

      • GraphPattern

        public GraphPattern()
        Creates a new graph pattern.
      • GraphPattern

        public GraphPattern​(GraphPattern parent)
        Creates a new graph pattern that inherits the context and scope from a parent graph pattern.
    • Method Detail

      • setContextVar

        public void setContextVar​(Var contextVar)
      • getContextVar

        public Var getContextVar()
      • addRequiredTE

        public void addRequiredTE​(TupleExpr te)
      • addRequiredSP

        public void addRequiredSP​(Var subjVar,
                                  Var predVar,
                                  Var objVar)
      • addOptionalTE

        public void addOptionalTE​(TupleExpr te,
                                  List<ValueExpr> constraints)
        add the supplied tuple expression as an optional expression, with a list of constraints that hold as conditions.
        Parameters:
        te - a tuple expression
        constraints - a list of constraints that form a condition for the LeftJoin to be formed from the optional TE.
      • getOptionalTEs

        public List<Map.Entry<TupleExpr,​List<ValueExpr>>> getOptionalTEs()
        Retrieves the optional tuple expressions as a list of tuples with the tuple expression as the key and the list of value expressions as the value.
        Returns:
        a list of Map entries.
      • addConstraint

        public void addConstraint​(ValueExpr constraint)
      • removeAllConstraints

        public List<ValueExpr> removeAllConstraints()
      • clear

        public void clear()
        Removes all tuple expressions and constraints.
      • buildTupleExpr

        public TupleExpr buildTupleExpr()
        Builds a combined tuple expression from the tuple expressions and constraints in this graph pattern.
        Returns:
        A tuple expression for this graph pattern.