Class LogicalOpMultiRequest

java.lang.Object
se.liu.ida.hefquin.engine.queryplan.logical.impl.BaseForLogicalOps
se.liu.ida.hefquin.engine.queryplan.logical.impl.LogicalOpMultiRequest
All Implemented Interfaces:
QueryPlanOperator, LogicalOperator, NullaryLogicalOp

public class LogicalOpMultiRequest extends BaseForLogicalOps implements NullaryLogicalOp
This operator has three arguments: i) a SPARQL graph pattern P (given in the form of a SPARQLRequest, ii) a variable ?v, and iii) a set of federation members. The evaluation semantics is equivalent to the one of the following SPARQL query, assuming that the URIs in the VALUES clause are the service URIs of the given federation members.
 SELECT * WHERE {
    VALUES ?v { ex:serviceURI_1 ex:serviceURI_2 ... ex:serviceURI_n }
    SERVICE ?v {
       # pattern P
    }
 }
 
Notice that every solution mapping in the result of this operator will bind the given variable ?v to the service URI of the federation member from which the rest of this solution mapping has been received.
  • Field Details

  • Constructor Details

  • Method Details

    • getRequest

      public SPARQLRequest getRequest()
    • getServiceVariable

      public org.apache.jena.sparql.core.Var getServiceVariable()
    • getFederationMembers

      public Set<FederationMember> getFederationMembers()
    • getExpectedVariables

      public ExpectedVariables getExpectedVariables(ExpectedVariables... inputVars)
      Description copied from interface: QueryPlanOperator
      Returns the variables that can be expected in the solution mappings produced by this operator in the case that the input(s) to this operator contain solutions mappings with the given set(s) of variables. The number of ExpectedVariables objects passed to this method must be in line with the degree of this operator (e.g., for a unary operator, exactly one such object must be passed).
      Specified by:
      getExpectedVariables in interface QueryPlanOperator
    • visit

      public void visit(LogicalPlanVisitor visitor)
      Specified by:
      visit in interface LogicalOperator
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object