- All Implemented Interfaces:
Expr
- Direct Known Subclasses:
E_URI2
As an ARQ extension, IRI(base, relative)
resolves the relative
URI (string or IRI) against the result of the "base" expression,
which in turn is resolved as per the one-argument form.
-
Field Summary
Fields inherited from interface org.apache.jena.sparql.expr.Expr
CMP_EQUAL, CMP_GREATER, CMP_INDETERMINATE, CMP_LESS, CMP_UNEQUAL, NONE
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionboolean
General equality operation - consider this to be 'protected'eval
(NodeValue v1, NodeValue v2, FunctionEnv env) Name used for output in SPARQL format needing functional form (no specific keyword).Get the parser base - the base URI a a string at the point in parsing when this object was created.Expression for the relative URI.int
hashCode()
Expr
are used in both syntax and algebra.Methods inherited from class org.apache.jena.sparql.expr.ExprFunction2
apply, applyNodeTransform, copySubstitute, eval, getArg, getArg1, getArg2, numArgs, visit
Methods inherited from class org.apache.jena.sparql.expr.ExprFunction
getArgs, getFunction, getFunctionIRI, getFunctionName, getFunctionSymbol, getOpName, isFunction
Methods inherited from class org.apache.jena.sparql.expr.ExprNode
asVar, deepCopy, equals, equalsBySyntax, getConstant, getExpr, getExprVar, getGraphPattern, getVarName, getVarsMentioned, isConstant, isExpr, isGraphPattern, isSatisfied, isVariable, toString
-
Constructor Details
-
E_IRI2
-
-
Method Details
-
eval
- Overrides:
eval
in classExprFunction2
-
copy
- Specified by:
copy
in classExprFunction2
-
eval
- Specified by:
eval
in classExprFunction2
-
getFunctionPrintName
Description copied from class:ExprFunction
Name used for output in SPARQL format needing functional form (no specific keyword). e.g. regexp(), custom functions, ...- Overrides:
getFunctionPrintName
in classExprFunction
-
getParserBase
Get the parser base - the base URI a a string at the point in parsing when this object was created. If there is an explicit base expression (2 argument form), the parse base is used to make the base expression absolute.This may be null - the object may not have been created by the parser.
-
getRelExpr
Expression for the relative URI. This is the argument to the one-argument form or the second argument for the two-argument form. -
getBaseExpr
-
hashCode
public int hashCode()Description copied from interface:Expr
Expr
are used in both syntax and algebra. There is no syntax to algebra translation step because the parser uses operator precedence to build the right evaluation structure directly.The exceptions to this are the
NOT EXISTS
andEXISTS
expressions which involve a query pattern. As a result there are different ways in syntax to produce the same algebra form.Two
Expr
are considered equal if they are equal as algebra expressions.hashCode
andequals
must implement that.There is also
equalsBySyntax
. Because two different syntax forms can yield the same algebra, but two different algebra forms must be different syntax,equalsBySyntax
impliesequals
(by algebra).Hence, different
hashCode
=> notequalsBySyntax
.- Specified by:
hashCode
in interfaceExpr
- Overrides:
hashCode
in classExprFunction2
-
equals
Description copied from interface:Expr
General equality operation - consider this to be 'protected'- Specified by:
equals
in interfaceExpr
- Overrides:
equals
in classExprFunction
-