Class VarExprListUtils

java.lang.Object
org.aksw.jenax.arq.util.syntax.VarExprListUtils

public class VarExprListUtils extends Object
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static org.apache.jena.sparql.core.VarExprList
    add(org.apache.jena.sparql.core.VarExprList result, org.apache.jena.sparql.core.Var v, org.apache.jena.sparql.core.Var w)
     
    static org.apache.jena.sparql.core.VarExprList
    add(org.apache.jena.sparql.core.VarExprList result, org.apache.jena.sparql.core.Var v, org.apache.jena.sparql.expr.Expr e)
     
    static org.apache.jena.sparql.core.VarExprList
    addAbsentVars(org.apache.jena.sparql.core.VarExprList varExprList, Collection<org.apache.jena.sparql.core.Var> vars)
    Add variables to an VarExprList if they are not already present in it
    static Map<org.apache.jena.sparql.core.Var,org.apache.jena.sparql.expr.Expr>
    applyNodeTransform(Map<org.apache.jena.sparql.core.Var,org.apache.jena.sparql.expr.Expr> varExpr, org.apache.jena.sparql.graph.NodeTransform nodeTransform)
     
    static boolean
    canonicalize(org.apache.jena.sparql.core.VarExprList vel)
    In place canonicalization that removes identity mappings of variables to themselves
    static org.apache.jena.sparql.core.VarExprList
    copy(org.apache.jena.sparql.core.VarExprList dst, org.apache.jena.sparql.core.VarExprList src)
     
    static org.apache.jena.sparql.engine.binding.Binding
    copyProject(org.apache.jena.sparql.core.VarExprList vars, org.apache.jena.sparql.engine.binding.Binding binding, org.apache.jena.sparql.engine.ExecutionContext execCxt)
    Code taken from QueryIterGroup (TODO Why? Apparently for converting aggregators to parallel ones)
    static void
    copyProject(org.apache.jena.sparql.engine.binding.BindingBuilder x, org.apache.jena.sparql.core.VarExprList vars, org.apache.jena.sparql.engine.binding.Binding binding, org.apache.jena.sparql.engine.ExecutionContext execCxt)
    Variant of copyProject where the results are accumulated in the provided binding builder
    static org.apache.jena.sparql.expr.ExprTransform
    createExprTransform(Map<org.apache.jena.sparql.core.Var,org.apache.jena.sparql.expr.Expr> varDefs)
     
    static org.apache.jena.sparql.core.VarExprList
    createFromMap(Map<org.apache.jena.sparql.core.Var,org.apache.jena.sparql.expr.Expr> map)
     
    static org.apache.jena.sparql.core.VarExprList
    createFromVarMap(Map<org.apache.jena.sparql.core.Var,org.apache.jena.sparql.core.Var> varMap)
    Create a projection to rename variables from key to value.
    static <T extends Collection<org.apache.jena.sparql.core.Var>>
    T
    definedVars(T acc, org.apache.jena.sparql.core.VarExprList vel)
     
    static org.apache.jena.sparql.engine.binding.Binding
    eval(org.apache.jena.sparql.core.VarExprList exprs, org.apache.jena.sparql.engine.binding.Binding binding, org.apache.jena.sparql.function.FunctionEnv execCxt)
    Evaluate an expression list against a binding.
    static Map<org.apache.jena.sparql.core.Var,org.apache.jena.graph.Node>
    extractConstants(org.apache.jena.sparql.core.VarExprList vel)
    Create a map of the variables that are defined in terms of a constant Can be combined with applyExprTransform to e.g.
    static Set<org.apache.jena.sparql.core.Var>
    getDefinedVars(org.apache.jena.sparql.core.VarExprList vel)
     
    static Set<org.apache.jena.sparql.core.Var>
    getRefVars(org.apache.jena.sparql.core.VarExprList vel)
    Deprecated.
    static Set<org.apache.jena.sparql.core.Var>
    getVarsMentioned(org.apache.jena.sparql.core.VarExprList vel)
     
    static Set<org.apache.jena.sparql.core.Var>
    getVarsMentionedInBody(org.apache.jena.sparql.core.VarExprList vel)
    Only extract variables from the expressions
    static boolean
    hasExprs(org.apache.jena.sparql.core.VarExprList vel)
     
    static com.google.common.collect.SetMultimap<org.apache.jena.sparql.expr.Expr,org.apache.jena.sparql.core.Var>
    invert(org.apache.jena.sparql.core.VarExprList vel)
    Invert the mapping of a var expr list and return it as a jena-shaded guava Multimap.
    static org.apache.jena.sparql.core.VarExprList
    projectAllVars(org.apache.jena.sparql.core.VarExprList vel, Collection<org.apache.jena.sparql.core.Var> vars)
    Return a new VarExprList that contains all variables of 'var' and any corresponding definition from 'vel'
    static org.apache.jena.sparql.core.VarExprList
    projectExprsOnly(org.apache.jena.sparql.core.VarExprList vel, Collection<org.apache.jena.sparql.core.Var> vars)
     
    static void
    replace(org.apache.jena.sparql.core.VarExprList dst, org.apache.jena.sparql.core.VarExprList src)
     
    static Stream<Map.Entry<org.apache.jena.sparql.core.Var,org.apache.jena.sparql.expr.Expr>>
    streamVarExprs(org.apache.jena.sparql.core.VarExprList vel)
    Stream all variables in order of their declaration with the corresponding expression (which may be null)
    static org.apache.jena.sparql.core.VarExprList
    transform(org.apache.jena.sparql.core.VarExprList varExpr, org.apache.jena.sparql.expr.ExprTransform exprTransform)
    Copied from package org.apache.jena.sparql.algebra.ApplyTransformVisitor
    static org.apache.jena.sparql.core.VarExprList
    transform(org.apache.jena.sparql.core.VarExprList vel, org.apache.jena.sparql.graph.NodeTransform nodeTransform)
     
    static <T extends Collection<org.apache.jena.sparql.core.Var>>
    T
    varsMentioned(T acc, org.apache.jena.sparql.core.VarExprList vel)
    Iterates the var expression entries in order (first var then expression) and adds all mentioned variables to the accumulator
    static <T extends Collection<org.apache.jena.sparql.core.Var>>
    T
    varsMentionedInBody(T acc, org.apache.jena.sparql.core.VarExprList vel)
    Only extract variables from the expressions

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • VarExprListUtils

      public VarExprListUtils()
  • Method Details

    • eval

      public static org.apache.jena.sparql.engine.binding.Binding eval(org.apache.jena.sparql.core.VarExprList exprs, org.apache.jena.sparql.engine.binding.Binding binding, org.apache.jena.sparql.function.FunctionEnv execCxt)
      Evaluate an expression list against a binding. Code taken from QueryIterAssign.
    • streamVarExprs

      public static Stream<Map.Entry<org.apache.jena.sparql.core.Var,org.apache.jena.sparql.expr.Expr>> streamVarExprs(org.apache.jena.sparql.core.VarExprList vel)
      Stream all variables in order of their declaration with the corresponding expression (which may be null)
    • projectAllVars

      public static org.apache.jena.sparql.core.VarExprList projectAllVars(org.apache.jena.sparql.core.VarExprList vel, Collection<org.apache.jena.sparql.core.Var> vars)
      Return a new VarExprList that contains all variables of 'var' and any corresponding definition from 'vel'
    • projectExprsOnly

      public static org.apache.jena.sparql.core.VarExprList projectExprsOnly(org.apache.jena.sparql.core.VarExprList vel, Collection<org.apache.jena.sparql.core.Var> vars)
    • copyProject

      public static org.apache.jena.sparql.engine.binding.Binding copyProject(org.apache.jena.sparql.core.VarExprList vars, org.apache.jena.sparql.engine.binding.Binding binding, org.apache.jena.sparql.engine.ExecutionContext execCxt)
      Code taken from QueryIterGroup (TODO Why? Apparently for converting aggregators to parallel ones)
    • copyProject

      public static void copyProject(org.apache.jena.sparql.engine.binding.BindingBuilder x, org.apache.jena.sparql.core.VarExprList vars, org.apache.jena.sparql.engine.binding.Binding binding, org.apache.jena.sparql.engine.ExecutionContext execCxt)
      Variant of copyProject where the results are accumulated in the provided binding builder
    • addAbsentVars

      public static org.apache.jena.sparql.core.VarExprList addAbsentVars(org.apache.jena.sparql.core.VarExprList varExprList, Collection<org.apache.jena.sparql.core.Var> vars)
      Add variables to an VarExprList if they are not already present in it
      Parameters:
      varExprList -
      vars -
      Returns:
    • invert

      public static com.google.common.collect.SetMultimap<org.apache.jena.sparql.expr.Expr,org.apache.jena.sparql.core.Var> invert(org.apache.jena.sparql.core.VarExprList vel)
      Invert the mapping of a var expr list and return it as a jena-shaded guava Multimap. ExprVars are generated for each variable that is otherwise mapped to null.
      Parameters:
      vel -
      Returns:
    • extractConstants

      public static Map<org.apache.jena.sparql.core.Var,org.apache.jena.graph.Node> extractConstants(org.apache.jena.sparql.core.VarExprList vel)
      Create a map of the variables that are defined in terms of a constant Can be combined with applyExprTransform to e.g. fold constants first.
      Parameters:
      vel -
      Returns:
    • hasExprs

      public static boolean hasExprs(org.apache.jena.sparql.core.VarExprList vel)
    • canonicalize

      public static boolean canonicalize(org.apache.jena.sparql.core.VarExprList vel)
      In place canonicalization that removes identity mappings of variables to themselves
      Parameters:
      vel -
      Returns:
    • add

      public static org.apache.jena.sparql.core.VarExprList add(org.apache.jena.sparql.core.VarExprList result, org.apache.jena.sparql.core.Var v, org.apache.jena.sparql.expr.Expr e)
    • add

      public static org.apache.jena.sparql.core.VarExprList add(org.apache.jena.sparql.core.VarExprList result, org.apache.jena.sparql.core.Var v, org.apache.jena.sparql.core.Var w)
    • createFromMap

      public static org.apache.jena.sparql.core.VarExprList createFromMap(Map<org.apache.jena.sparql.core.Var,org.apache.jena.sparql.expr.Expr> map)
    • createFromVarMap

      public static org.apache.jena.sparql.core.VarExprList createFromVarMap(Map<org.apache.jena.sparql.core.Var,org.apache.jena.sparql.core.Var> varMap)
      Create a projection to rename variables from key to value. Note that given two variables ?s and ?o, for mapping ?s to ?o the projection is (?s AS ?o) and thus the invocation on the VarExprList is vel.add(?o, ?s), which can be read as ?o is defined by ?s
    • getDefinedVars

      public static Set<org.apache.jena.sparql.core.Var> getDefinedVars(org.apache.jena.sparql.core.VarExprList vel)
    • definedVars

      public static <T extends Collection<org.apache.jena.sparql.core.Var>> T definedVars(T acc, org.apache.jena.sparql.core.VarExprList vel)
    • getVarsMentionedInBody

      public static Set<org.apache.jena.sparql.core.Var> getVarsMentionedInBody(org.apache.jena.sparql.core.VarExprList vel)
      Only extract variables from the expressions
    • varsMentionedInBody

      public static <T extends Collection<org.apache.jena.sparql.core.Var>> T varsMentionedInBody(T acc, org.apache.jena.sparql.core.VarExprList vel)
      Only extract variables from the expressions
    • getVarsMentioned

      public static Set<org.apache.jena.sparql.core.Var> getVarsMentioned(org.apache.jena.sparql.core.VarExprList vel)
    • varsMentioned

      public static <T extends Collection<org.apache.jena.sparql.core.Var>> T varsMentioned(T acc, org.apache.jena.sparql.core.VarExprList vel)
      Iterates the var expression entries in order (first var then expression) and adds all mentioned variables to the accumulator
    • getRefVars

      @Deprecated public static Set<org.apache.jena.sparql.core.Var> getRefVars(org.apache.jena.sparql.core.VarExprList vel)
      Deprecated.
    • transform

      public static org.apache.jena.sparql.core.VarExprList transform(org.apache.jena.sparql.core.VarExprList vel, org.apache.jena.sparql.graph.NodeTransform nodeTransform)
    • applyNodeTransform

      public static Map<org.apache.jena.sparql.core.Var,org.apache.jena.sparql.expr.Expr> applyNodeTransform(Map<org.apache.jena.sparql.core.Var,org.apache.jena.sparql.expr.Expr> varExpr, org.apache.jena.sparql.graph.NodeTransform nodeTransform)
    • transform

      public static org.apache.jena.sparql.core.VarExprList transform(org.apache.jena.sparql.core.VarExprList varExpr, org.apache.jena.sparql.expr.ExprTransform exprTransform)
      Copied from package org.apache.jena.sparql.algebra.ApplyTransformVisitor
    • createExprTransform

      public static org.apache.jena.sparql.expr.ExprTransform createExprTransform(Map<org.apache.jena.sparql.core.Var,org.apache.jena.sparql.expr.Expr> varDefs)
    • replace

      public static void replace(org.apache.jena.sparql.core.VarExprList dst, org.apache.jena.sparql.core.VarExprList src)
    • copy

      public static org.apache.jena.sparql.core.VarExprList copy(org.apache.jena.sparql.core.VarExprList dst, org.apache.jena.sparql.core.VarExprList src)