java.lang.Object
org.apache.jena.sparql.expr.nodevalue.XSDFuncOp
Implementation of XQuery/XPath functions and operators.
http://www.w3.org/TR/xpath-functions/
-
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptionstatic NodeValuestatic NodeValueadjustToTimezone(NodeValue nv1, NodeValue nv2) Adjust xsd:dateTime/xsd:date/xsd:time to a timezone.static booleanDeprecated, for removal: This API element is subject to removal in a future version.static NodeValueDeprecated, for removal: This API element is subject to removal in a future version.static StringcanonicalDecimalStr(BigDecimal decimal) Deprecated, for removal: This API element is subject to removal in a future version.UseXSDNumUtils.stringFormatXSD10(BigDecimal)insteadstatic StringDeprecated, for removal: This API element is subject to removal in a future version.static NodeValuestatic NumericTypeclassifyNumeric(String fName, NodeValue nv) static NumericTypeclassifyNumeric(String fName, NodeValue nv1, NodeValue nv2) static intcompareBoolean(NodeValue nv1, NodeValue nv2) static intcompareDateTime(NodeValue nv1, NodeValue nv2) static intcompareDateTimeFO(NodeValue nv1, NodeValue nv2) Strict F&O handling of compare date(times).static intcompareDateTimeXSD(NodeValue nv1, NodeValue nv2) Compare two date/times by XSD rules (dateTimes, one with and one without timezone can be indeterminate)static intcompareDuration(NodeValue nv1, NodeValue nv2) static intcompareNumeric(NodeValue nv1, NodeValue nv2) static intcompareString(NodeValue nv1, NodeValue nv2) static intcompareXSDDateTime(NodeValue nv1, NodeValue nv2) Compare date times, including "indeterminate" rather than applying locale timezonestatic NodeValuedateTimeCast(NodeValue nv, org.apache.jena.datatypes.xsd.XSDDatatype xsd) Cast a NodeValue to a date/time type (xsd dateTime, date, time, g*) according to F&O 17.1.5 Casting to date and time types Throws an exception on incorrect case.static NodeValuedtDateTime(NodeValue nv1, NodeValue nv2) Create an xsd:dateTime from an xsd:date and an xsd:time.static NodeValuestatic NodeValuedtGetHours(NodeValue nv) static NodeValuestatic NodeValuedtGetMonth(NodeValue nv) static NodeValuestatic NodeValuestatic NodeValuestatic NodeValuestatic NodeValuedurGetDays(NodeValue nv) static NodeValuedurGetHours(NodeValue nv) static NodeValuestatic NodeValuestatic NodeValuestatic NodeValuedurGetSign(NodeValue nv) static NodeValuedurGetYears(NodeValue nv) static booleanEffective Boolean Valuestatic NodeValueF&O fn:booleanstatic NodeValuestatic NodeValueF&O fn:concat (implicit cast to strings).static NodeValueformatNumber(NodeValue nv, NodeValue picture, NodeValue nvLocale) fn:format-number The 3rd argument, if present, called decimal-format-name, is here a IETF BCP 47 language tag string.static NodeValuestatic NodeValuestatic NodeValuegetMinutes(NodeValue nv) static NodeValuestatic NodeValuegetSeconds(NodeValue nv) static NodeValuestatic NodeValueImplciit Timezone // https://www.w3.org/TR/xpath-functions-3/#comp.datetimestatic booleanisBinaryDatatype(org.apache.jena.datatypes.xsd.XSDDatatype datatype) static booleanstatic booleanisDecimalDatatype(org.apache.jena.datatypes.xsd.XSDDatatype xsdDatatype) static booleanisDurationDatatype(org.apache.jena.datatypes.xsd.XSDDatatype datatype) static booleanisIntegerDatatype(org.apache.jena.datatypes.xsd.XSDDatatype xsdDatatype) static booleanisNumeric(org.apache.jena.graph.Node node) static booleanisNumericDatatype(org.apache.jena.datatypes.xsd.XSDDatatype xsdDatatype) static booleanisTemporalDatatype(org.apache.jena.datatypes.xsd.XSDDatatype datatype) static booleanisYearMonth(Duration dur) static NodeValuejavaSprintf(NodeValue nvFormat, List<NodeValue> valuesToPrint) static NodeValuejavaSubstring(NodeValue v1, NodeValue v2) static NodeValuejavaSubstring(NodeValue nvString, NodeValue nvStart, NodeValue nvFinish) static NodeValueLocal timezone of the query engine: afn:system-timezonestatic NodeValuestatic NodeValuestatic NodeValueF&O fn:notstatic NodeValuestatic NodeValuestatic NodeValuenumericMod(NodeValue nv1, NodeValue nv2) static NodeValuenumIntegerDivide(NodeValue nv1, NodeValue nv2) Integer dividestatic NodeValuenumMultiply(NodeValue nv1, NodeValue nv2) static NodeValuenumSubtract(NodeValue nv1, NodeValue nv2) static NodeValuestatic NodeValueroundXpath3(NodeValue v, NodeValue precision, boolean isHalfEven) static NodeValuestatic NodeValuestatic NodeValuestatic NodeValueSPARQL CONCAT (no implicit casts to strings)static NodeValuestrContains(NodeValue string, NodeValue match) static NodeValuestatic NodeValuestrEndsWith(NodeValue string, NodeValue match) static NodeValuestatic NodeValuestrLowerCase(NodeValue string) static NodeValuefn:normalizeSpacestatic NodeValuestrNormalizeUnicode(NodeValue v1, NodeValue v2) static NodeValuestrReplace(NodeValue nvStr, Pattern pattern, NodeValue nvReplacement) static NodeValuestrReplace(NodeValue nvStr, NodeValue nvPattern, NodeValue nvReplacement) static NodeValuestrReplace(NodeValue nvStr, NodeValue nvPattern, NodeValue nvReplacement, NodeValue nvFlags) static NodeValuestrStartsWith(NodeValue string, NodeValue match) static NodeValuestrUpperCase(NodeValue string) static NodeValuestatic NodeValuestatic NodeValueunaryMinus(NodeValue nv) static NodeValue
-
Field Details
-
implicitTimezoneStr
- See Also:
-
-
Method Details
-
numAdd
-
numSubtract
-
numMultiply
-
numDivide
-
numIntegerDivide
Integer divide -
numericMod
-
canonicalDecimalStrNoIntegerDot
Deprecated, for removal: This API element is subject to removal in a future version.Decimal format, cast-to-string.Decimal canonical form where integer values has no ".0" (as in XSD 1.1).
In XSD 1.0, canonical integer-valued decimal has a trailing ".0". In XSD 1.1 and F&O v 3.1, xs:string cast of a decimal which is integer valued, does not have the trailing ".0".
-
canonicalDecimalStr
Deprecated, for removal: This API element is subject to removal in a future version.UseXSDNumUtils.stringFormatXSD10(BigDecimal)insteadCanonical decimal according to XML Schema Datatype 2 v1.0. Integer-valued decimals have a trailing ".0". (In XML Schema Datatype 1.1 they did not have a ".0".) -
max
-
min
-
not
F&O fn:not -
booleanEffectiveValueAsNodeValue
Deprecated, for removal: This API element is subject to removal in a future version. -
effectiveBooleanValueAsNodeValue
F&O fn:boolean -
booleanEffectiveValue
Deprecated, for removal: This API element is subject to removal in a future version. -
effectiveBooleanValue
Effective Boolean Value -
unaryMinus
-
unaryPlus
-
abs
-
ceiling
-
floor
-
round
-
roundXpath3
-
sqrt
-
javaSubstring
-
javaSubstring
-
javaSprintf
-
strlen
-
strReplace
-
strReplace
-
strReplace
-
substring
-
substring
-
strContains
-
strStartsWith
-
strEndsWith
-
strBefore
-
strAfter
-
strLowerCase
-
strUpperCase
-
strEncodeForURI
-
fnConcat
F&O fn:concat (implicit cast to strings). -
strConcat
SPARQL CONCAT (no implicit casts to strings) -
strNormalizeSpace
fn:normalizeSpace -
strNormalizeUnicode
-
classifyNumeric
-
classifyNumeric
-
isNumericDatatype
public static boolean isNumericDatatype(org.apache.jena.datatypes.xsd.XSDDatatype xsdDatatype) -
isNumeric
public static boolean isNumeric(org.apache.jena.graph.Node node) -
isDecimalDatatype
public static boolean isDecimalDatatype(org.apache.jena.datatypes.xsd.XSDDatatype xsdDatatype) -
isIntegerDatatype
public static boolean isIntegerDatatype(org.apache.jena.datatypes.xsd.XSDDatatype xsdDatatype) -
isTemporalDatatype
public static boolean isTemporalDatatype(org.apache.jena.datatypes.xsd.XSDDatatype datatype) -
isDurationDatatype
public static boolean isDurationDatatype(org.apache.jena.datatypes.xsd.XSDDatatype datatype) -
isBinaryDatatype
public static boolean isBinaryDatatype(org.apache.jena.datatypes.xsd.XSDDatatype datatype) -
compareNumeric
-
compareString
-
compareDateTime
-
compareDateTimeXSD
Compare two date/times by XSD rules (dateTimes, one with and one without timezone can be indeterminate) -
compareDateTimeFO
Strict F&O handling of compare date(times). But that means applying the "local" timezone if there is no TZ. The data may have come from different timezones to the query. We use a fixed locale timezone of UTC/00:00. -
compareXSDDateTime
Compare date times, including "indeterminate" rather than applying locale timezone -
compareBoolean
-
dateTimeCast
Cast a NodeValue to a date/time type (xsd dateTime, date, time, g*) according to F&O 17.1.5 Casting to date and time types Throws an exception on incorrect case.- Throws:
ExprEvalTypeException
-
getYear
-
getMonth
-
getDay
-
getHours
-
getMinutes
-
getSeconds
-
dtDateTime
Create an xsd:dateTime from an xsd:date and an xsd:time. -
dtGetYear
-
dtGetMonth
-
dtGetDay
-
dtGetHours
-
dtGetMinutes
-
dtGetSeconds
-
dtGetTZ
-
dtGetTimezone
-
isYearMonth
-
isDayTime
-
durGetYears
-
durGetMonths
-
durGetDays
-
durGetHours
-
durGetMinutes
-
durGetSeconds
-
durGetSign
-
compareDuration
-
implicitTimezone
Implciit Timezone // https://www.w3.org/TR/xpath-functions-3/#comp.datetime -
localSystemTimezone
Local timezone of the query engine: afn:system-timezone -
adjustToTimezone
Adjust xsd:dateTime/xsd:date/xsd:time to a timezone. This covers fn:adjust-dateTime-to-timezone, fn:adjust-date-to-timezone and fn:adjust-time-to-timezone. viaADJUST(E_AdjustToTimezone). If the second argument is null, use implicit timezone. In Jena, the implicit timezone is fixed to UTC. -
formatNumber
fn:format-number The 3rd argument, if present, called decimal-format-name, is here a IETF BCP 47 language tag string.
-
effectiveBooleanValue(org.apache.jena.sparql.expr.NodeValue).