package org.aksw.sparqlify.core.sql.expr.evaluation;
import org.aksw.sparqlify.algebra.sql.exprs2.SqlExpr;
/**
* Process for finding the appropriate op:
*
* Given a set of expressions whose datatype is known, do the following:
* . a) check if for the opName there exists a method that accepts the given arguments.
* . b) if so, check if it has an evaluator attached (this is this object)
* . c) check whether the given arguments datatypes are valid according to a datatype system
* . d) if all arguments are constants, we can also use Jena to evaluate the expression
*
*
* ISSUE: step A requires the OpName to be defined with a signature
* However, only in step c this is enforced.
*
* So here is the master plan: The point of the "transformation" is to get
* rid of all the RDF-term expressions, and instead reduce them to
* operations on conventional datatypes.
*
* As such, there are no RDF terms on the SqlExpr level.
*
*
*
*
*
*
* @author Claus Stadler <cstadler@informatik.uni-leipzig.de>
*
*/
public class SqlExprEvaluator_Arithmetic
extends SqlExprEvaluator2
{
@Override
public SqlExpr eval(SqlExpr a, SqlExpr b) {
// if(a.isConstant()) {
// NodeValue x = a.asConstant().getValue();
//
// if(b.isConstant()) {
// NodeValue y = b.asConstant().getValue();
//
// XSDFuncOp.add(x, y);
// }
//
//
// }
return null;
}
}