Class ElementGeneratorLateral
java.lang.Object
org.aksw.jenax.graphql.sparql.v2.api2.ElementGeneratorLateral
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final recordstatic final recordstatic final record -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic org.apache.jena.sparql.syntax.ElementapplySlice(org.apache.jena.sparql.syntax.Element elt, Long offset, Long limit) harmonizeVariables(ElementNode elementNode, String prefix) static ElementNodeharmonizeVariables(ElementNode elementNode, List<String> parentPath, Map<org.apache.jena.sparql.core.Var, org.apache.jena.sparql.core.Var> parentRenames, Map<Object, Map<org.apache.jena.sparql.core.Var, org.apache.jena.sparql.core.Var>> outStateVarMap) For each node, compute a variable mapping such that all elements can be safely combined into a single graph pattern.static org.apache.jena.sparql.core.VarresolveAncestorVar(ElementNode elementNode, Map<org.apache.jena.graph.Node, Map<org.apache.jena.sparql.core.Var, org.apache.jena.sparql.core.Var>> outStateVarMap, org.apache.jena.sparql.core.Var var) static org.apache.jena.sparql.expr.ExprresolveLocalVarsInExpr(ElementNode elementNode, Map<org.apache.jena.graph.Node, Map<org.apache.jena.sparql.core.Var, org.apache.jena.sparql.core.Var>> outStateVarMap, org.apache.jena.sparql.expr.Expr expr) static Map<org.apache.jena.sparql.core.Var,org.apache.jena.sparql.core.Var> resolveVarMap(ElementNode elementNode, Map<org.apache.jena.graph.Node, Map<org.apache.jena.sparql.core.Var, org.apache.jena.sparql.core.Var>> outStateVarMap, org.apache.jena.sparql.expr.Expr expr) static org.apache.jena.sparql.syntax.ElementtoLateral(boolean globalOrderBy, ElementNode node, List<String> parentPath, org.apache.jena.sparql.core.Var discriminatorVar, Map<org.apache.jena.graph.Node, Map<org.apache.jena.sparql.core.Var, org.apache.jena.sparql.core.Var>> outStateVarMap, Map<org.apache.jena.graph.Node, Map<org.apache.jena.sparql.core.Var, org.apache.jena.sparql.core.Var>> outStateOriginalToGlobalMap, List<org.apache.jena.sparql.core.Var> levelVars, List<Integer> parentPathIdx, ElementGeneratorLateral.SortNode thisSortNode) toLateral(boolean globalOrderBy, ElementNode rootField, org.apache.jena.sparql.core.Var stateVar)
-
Constructor Details
-
ElementGeneratorLateral
public ElementGeneratorLateral()
-
-
Method Details
-
toLateral
public static ElementGeneratorLateral.ElementMapping toLateral(boolean globalOrderBy, ElementNode rootField, org.apache.jena.sparql.core.Var stateVar) -
harmonizeVariables
public static ElementGeneratorLateral.ElementNodeVarMapping harmonizeVariables(ElementNode elementNode, String prefix) -
harmonizeVariables
public static ElementNode harmonizeVariables(ElementNode elementNode, List<String> parentPath, Map<org.apache.jena.sparql.core.Var, org.apache.jena.sparql.core.Var> parentRenames, Map<Object, Map<org.apache.jena.sparql.core.Var, org.apache.jena.sparql.core.Var>> outStateVarMap) For each node, compute a variable mapping such that all elements can be safely combined into a single graph pattern.- Parameters:
elementNode-parentPath-parentRenames-outStateVarMap-- Returns:
-
resolveAncestorVar
public static org.apache.jena.sparql.core.Var resolveAncestorVar(ElementNode elementNode, Map<org.apache.jena.graph.Node, Map<org.apache.jena.sparql.core.Var, org.apache.jena.sparql.core.Var>> outStateVarMap, org.apache.jena.sparql.core.Var var) -
resolveVarMap
public static Map<org.apache.jena.sparql.core.Var,org.apache.jena.sparql.core.Var> resolveVarMap(ElementNode elementNode, Map<org.apache.jena.graph.Node, Map<org.apache.jena.sparql.core.Var, org.apache.jena.sparql.core.Var>> outStateVarMap, org.apache.jena.sparql.expr.Expr expr) -
resolveLocalVarsInExpr
public static org.apache.jena.sparql.expr.Expr resolveLocalVarsInExpr(ElementNode elementNode, Map<org.apache.jena.graph.Node, Map<org.apache.jena.sparql.core.Var, org.apache.jena.sparql.core.Var>> outStateVarMap, org.apache.jena.sparql.expr.Expr expr) -
toLateral
public static org.apache.jena.sparql.syntax.Element toLateral(boolean globalOrderBy, ElementNode node, List<String> parentPath, org.apache.jena.sparql.core.Var discriminatorVar, Map<org.apache.jena.graph.Node, Map<org.apache.jena.sparql.core.Var, org.apache.jena.sparql.core.Var>> outStateVarMap, Map<org.apache.jena.graph.Node, Map<org.apache.jena.sparql.core.Var, org.apache.jena.sparql.core.Var>> outStateOriginalToGlobalMap, List<org.apache.jena.sparql.core.Var> levelVars, List<Integer> parentPathIdx, ElementGeneratorLateral.SortNode thisSortNode) - Parameters:
node-parentPath-parentRenames-discriminatorVar-outStateVarMap- For each state the mapping of the original var to the renamed var. The rationale is: Access to the original variable needs to be remapped to the renamed one.- Returns:
-
applySlice
-