Class SqlExprOptimizer

java.lang.Object
org.aksw.jena_sparql_api.views.SqlExprOptimizer

@Deprecated public class SqlExprOptimizer extends Object
Deprecated.
Deprecated, Superseded by PushDown TODO The optimize methods are not deprecated, but the translate methods are
Author:
raven
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static Map<Class,Class>
    Deprecated.
     
    static org.slf4j.Logger
    Deprecated.
     
  • Constructor Summary

    Constructors
    Constructor
    Description
    Deprecated.
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static List<Alignment>
    align(List<org.apache.jena.sparql.expr.Expr> a, List<org.apache.jena.sparql.expr.Expr> b)
    Deprecated.
     
    static void
    alignRec(List<org.apache.jena.sparql.expr.Expr> a, int oa, List<org.apache.jena.sparql.expr.Expr> b, int ob, List<List<org.apache.jena.sparql.expr.Expr>> result)
    Deprecated.
     
    static List<org.apache.jena.sparql.expr.Expr>
    copyReplace(List<org.apache.jena.sparql.expr.Expr> a, int itemIndex, String[] parts)
    Deprecated.
     
    static <T> org.aksw.commons.util.Pair<T,T>
    createPair(T a, T b, boolean swapArgs)
    Deprecated.
     
    static int
    indexOfFirstConstant(List<org.apache.jena.sparql.expr.Expr> a, int offset)
    Deprecated.
     
    static org.apache.jena.sparql.expr.Expr
    optimize(org.apache.jena.sparql.expr.E_Equals expr)
    Deprecated.
     
    static org.apache.jena.sparql.expr.Expr
    optimize(org.apache.jena.sparql.expr.E_GreaterThan expr)
    Deprecated.
     
    static org.apache.jena.sparql.expr.Expr
    optimize(org.apache.jena.sparql.expr.E_GreaterThanOrEqual expr)
    Deprecated.
     
    static org.apache.jena.sparql.expr.Expr
    optimize(org.apache.jena.sparql.expr.E_LessThan expr)
    Deprecated.
    The expression (a < b), where a and b are RdfTerm(type, obj, lang, datatype), could become: Worst case: a.type < b.type || a.type = b.type && a.obj < b.obj || a.type = b.type && a.type = 2 && a.obj = b.obj && a.lang < b.lang || a.type = b.type && a.type = 3 && a.obj = b.obj && a.datatype < b.datatype || Optimization: Skip datatype and language in comparisions.
    static org.apache.jena.sparql.expr.Expr
    optimize(org.apache.jena.sparql.expr.E_LessThanOrEqual expr)
    Deprecated.
     
    static org.apache.jena.sparql.expr.Expr
    optimize(org.apache.jena.sparql.expr.Expr expr)
    Deprecated.
     
    static org.apache.jena.sparql.expr.Expr
    optimize(org.apache.jena.sparql.expr.ExprFunction expr)
    Deprecated.
     
    static org.apache.jena.sparql.expr.Expr
    optimize(org.apache.jena.sparql.expr.ExprFunction2 expr)
    Deprecated.
     
    static org.apache.jena.sparql.expr.Expr
    optimizeCompare(org.apache.jena.sparql.expr.ExprFunction2 expr)
    Deprecated.
     
    static org.apache.jena.sparql.expr.Expr
    optimizeCompare(org.apache.jena.sparql.expr.Expr a, org.apache.jena.sparql.expr.Expr b, Class<?> clazz)
    Deprecated.
     
    static org.apache.jena.sparql.expr.Expr
    optimizeCompare(org.apache.jena.sparql.expr.Expr ea, org.apache.jena.sparql.expr.Expr eb, BinaryOperator<org.apache.jena.sparql.expr.Expr> factory)
    Deprecated.
    FIXME The following expression is crap.
    static org.apache.jena.sparql.expr.Expr
    optimizeEqualsConcat2(List<org.apache.jena.sparql.expr.Expr> la, List<org.apache.jena.sparql.expr.Expr> lb)
    Deprecated.
     
    static org.aksw.commons.util.Pair<org.apache.jena.sparql.expr.Expr,org.apache.jena.sparql.expr.Expr>
    optimizeFunctionOpConstant(org.apache.jena.sparql.expr.Expr a, org.apache.jena.sparql.expr.Expr b)
    Deprecated.
     
    static List<org.apache.jena.sparql.expr.Expr>
    optimizeList(List<org.apache.jena.sparql.expr.Expr> exprs)
    Deprecated.
     
    static org.apache.jena.sparql.expr.Expr
    optimizeMM(org.apache.jena.sparql.expr.Expr expr)
    Deprecated.
     
    static String[]
    split(String str, int i, int l)
    Deprecated.
     
    static List<Alignment>
    toAlignment(List<org.apache.jena.sparql.expr.Expr> a, List<List<org.apache.jena.sparql.expr.Expr>> bs)
    Deprecated.
     

    Methods inherited from class java.lang.Object

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

    • logger

      public static org.slf4j.Logger logger
      Deprecated.
    • functionToInverse

      public static Map<Class,Class> functionToInverse
      Deprecated.
  • Constructor Details

    • SqlExprOptimizer

      public SqlExprOptimizer()
      Deprecated.
  • Method Details

    • optimizeMM

      public static org.apache.jena.sparql.expr.Expr optimizeMM(org.apache.jena.sparql.expr.Expr expr)
      Deprecated.
    • optimize

      public static org.apache.jena.sparql.expr.Expr optimize(org.apache.jena.sparql.expr.Expr expr)
      Deprecated.
    • optimize

      public static org.apache.jena.sparql.expr.Expr optimize(org.apache.jena.sparql.expr.ExprFunction expr)
      Deprecated.
    • optimizeList

      public static List<org.apache.jena.sparql.expr.Expr> optimizeList(List<org.apache.jena.sparql.expr.Expr> exprs)
      Deprecated.
    • optimize

      public static org.apache.jena.sparql.expr.Expr optimize(org.apache.jena.sparql.expr.ExprFunction2 expr)
      Deprecated.
    • optimize

      public static org.apache.jena.sparql.expr.Expr optimize(org.apache.jena.sparql.expr.E_LessThan expr)
      Deprecated.
      The expression (a < b), where a and b are RdfTerm(type, obj, lang, datatype), could become: Worst case: a.type < b.type || a.type = b.type && a.obj < b.obj || a.type = b.type && a.type = 2 && a.obj = b.obj && a.lang < b.lang || a.type = b.type && a.type = 3 && a.obj = b.obj && a.datatype < b.datatype || Optimization: Skip datatype and language in comparisions. TODO We have to consider datatypes to rule out invalid comparisions (in regard to the datatypes). However, this should be done on the SQL level.
    • optimize

      public static org.apache.jena.sparql.expr.Expr optimize(org.apache.jena.sparql.expr.E_LessThanOrEqual expr)
      Deprecated.
    • optimize

      public static org.apache.jena.sparql.expr.Expr optimize(org.apache.jena.sparql.expr.E_GreaterThan expr)
      Deprecated.
    • optimize

      public static org.apache.jena.sparql.expr.Expr optimize(org.apache.jena.sparql.expr.E_GreaterThanOrEqual expr)
      Deprecated.
    • optimizeCompare

      public static org.apache.jena.sparql.expr.Expr optimizeCompare(org.apache.jena.sparql.expr.ExprFunction2 expr)
      Deprecated.
    • optimizeCompare

      public static org.apache.jena.sparql.expr.Expr optimizeCompare(org.apache.jena.sparql.expr.Expr a, org.apache.jena.sparql.expr.Expr b, Class<?> clazz)
      Deprecated.
    • optimizeCompare

      public static org.apache.jena.sparql.expr.Expr optimizeCompare(org.apache.jena.sparql.expr.Expr ea, org.apache.jena.sparql.expr.Expr eb, BinaryOperator<org.apache.jena.sparql.expr.Expr> factory)
      Deprecated.
      FIXME The following expression is crap. I must have written it before I was clear about type errors... a.type < b.type || a.type = b.type && a.obj < b.obj || a.type = b.type && a.type = 2 && a.obj = b.obj && a.lang < b.lang || a.type = b.type && a.type = 3 && a.obj = b.obj && a.datatype < b.datatype ||
      Parameters:
      a -
      b -
      exprFactory - Factory for creating a comparision expression
      Returns:
    • createPair

      public static <T> org.aksw.commons.util.Pair<T,T> createPair(T a, T b, boolean swapArgs)
      Deprecated.
    • optimizeFunctionOpConstant

      public static org.aksw.commons.util.Pair<org.apache.jena.sparql.expr.Expr,org.apache.jena.sparql.expr.Expr> optimizeFunctionOpConstant(org.apache.jena.sparql.expr.Expr a, org.apache.jena.sparql.expr.Expr b)
      Deprecated.
    • optimize

      public static org.apache.jena.sparql.expr.Expr optimize(org.apache.jena.sparql.expr.E_Equals expr)
      Deprecated.
    • toAlignment

      public static List<Alignment> toAlignment(List<org.apache.jena.sparql.expr.Expr> a, List<List<org.apache.jena.sparql.expr.Expr>> bs)
      Deprecated.
    • align

      public static List<Alignment> align(List<org.apache.jena.sparql.expr.Expr> a, List<org.apache.jena.sparql.expr.Expr> b)
      Deprecated.
    • indexOfFirstConstant

      public static int indexOfFirstConstant(List<org.apache.jena.sparql.expr.Expr> a, int offset)
      Deprecated.
    • copyReplace

      public static List<org.apache.jena.sparql.expr.Expr> copyReplace(List<org.apache.jena.sparql.expr.Expr> a, int itemIndex, String[] parts)
      Deprecated.
      Parameters:
      a -
      i - index of a constant
      j - position within the string of the constant
      Returns:
    • split

      public static String[] split(String str, int i, int l)
      Deprecated.
    • alignRec

      public static void alignRec(List<org.apache.jena.sparql.expr.Expr> a, int oa, List<org.apache.jena.sparql.expr.Expr> b, int ob, List<List<org.apache.jena.sparql.expr.Expr>> result)
      Deprecated.
      Parameters:
      a - The longer array
      b - The shorter one
    • optimizeEqualsConcat2

      public static org.apache.jena.sparql.expr.Expr optimizeEqualsConcat2(List<org.apache.jena.sparql.expr.Expr> la, List<org.apache.jena.sparql.expr.Expr> lb)
      Deprecated.