Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Extensions of Operators

The tables provided below provide the definitions of the comparison and arithmetic operations that are implemented by Tentris. The type numeric captures the XSD numeric types. The results of arithmetic operations on numeric types are defined here,

Comparison Operations

Operation
(=, !=, >, >=, <, <=)
Type(A)Type(B)Result Type
A op Bnumericnumericxsd:boolean
A op Bowl:rationalowl:rationalxsd:boolean
A op Bowl:realowl:realxsd:boolean
A op Bxsd:stringxsd:anyURIxsd:boolean
A op Bxsd:stringxsd:stringxsd:boolean
A op Brdf:langStringrdf:langStringxsd:boolean
A op Bxsd:anyURIxsd:anyURIxsd:boolean
A op Bxsd:anyURIxsd:stringxsd:boolean
A op Bxsd:booleanxsd:booleanxsd:boolean
A op Bxsd:datexsd:datexsd:boolean
A op Bxsd:datexsd:dateTimexsd:boolean
A op Bxsd:datexsd:dateTimeStampxsd:boolean
A op Bxsd:datexsd:gDayxsd:boolean1
A op Bxsd:datexsd:gMonthxsd:boolean1
A op Bxsd:datexsd:gMonthDayxsd:boolean1
A op Bxsd:datexsd:gYearxsd:boolean1
A op Bxsd:datexsd:gYearMonthxsd:boolean1
A op Bxsd:dateTimexsd:datexsd:boolean
A op Bxsd:dateTimexsd:dateTimexsd:boolean
A op Bxsd:dateTimexsd:dateTimeStampxsd:boolean
A op Bxsd:dateTimexsd:gDayxsd:boolean1
A op Bxsd:dateTimexsd:gMonthxsd:boolean1
A op Bxsd:dateTimexsd:gMonthDayxsd:boolean1
A op Bxsd:dateTimexsd:gYearxsd:boolean1
A op Bxsd:dateTimexsd:gYearMonthxsd:boolean1
A op Bxsd:dateTimexsd:timexsd:boolean1
A op Bxsd:dateTimeStampxsd:datexsd:boolean
A op Bxsd:dateTimeStampxsd:dateTimexsd:boolean
A op Bxsd:dateTimeStampxsd:dateTimeStampxsd:boolean
A op Bxsd:dateTimeStampxsd:gDayxsd:boolean1
A op Bxsd:dateTimeStampxsd:gMonthxsd:boolean1
A op Bxsd:dateTimeStampxsd:gMonthDayxsd:boolean1
A op Bxsd:dateTimeStampxsd:gYearxsd:boolean1
A op Bxsd:dateTimeStampxsd:gYearMonthxsd:boolean1
A op Bxsd:dateTimeStampxsd:timexsd:boolean1
A op Bxsd:dayTimeDurationxsd:dayTimeDurationxsd:boolean
A op Bxsd:dayTimeDurationxsd:durationxsd:boolean
A op Bxsd:dayTimeDurationxsd:yearMonthDurationxsd:boolean
A op Bxsd:durationxsd:dayTimeDurationxsd:boolean
A op Bxsd:durationxsd:durationxsd:boolean
A op Bxsd:durationxsd:yearMonthDurationxsd:boolean
A op Bxsd:gDayxsd:datexsd:boolean1
A op Bxsd:gDayxsd:dateTimexsd:boolean1
A op Bxsd:gDayxsd:dateTimeStampxsd:boolean1
A op Bxsd:gDayxsd:gDayxsd:boolean
A op Bxsd:gMonthxsd:datexsd:boolean1
A op Bxsd:gMonthxsd:dateTimexsd:boolean1
A op Bxsd:gMonthxsd:dateTimeStampxsd:boolean1
A op Bxsd:gMonthxsd:gMonthxsd:boolean
A op Bxsd:gMonthDayxsd:datexsd:boolean1
A op Bxsd:gMonthDayxsd:dateTimexsd:boolean1
A op Bxsd:gMonthDayxsd:dateTimeStampxsd:boolean1
A op Bxsd:gMonthDayxsd:gMonthDayxsd:boolean
A op Bxsd:gYearxsd:datexsd:boolean1
A op Bxsd:gYearxsd:dateTimexsd:boolean1
A op Bxsd:gYearxsd:dateTimeStampxsd:boolean1
A op Bxsd:gYearxsd:gYearxsd:boolean
A op Bxsd:gYearMonthxsd:datexsd:boolean1
A op Bxsd:gYearMonthxsd:dateTimexsd:boolean1
A op Bxsd:gYearMonthxsd:dateTimeStampxsd:boolean1
A op Bxsd:gYearMonthxsd:gYearMonthxsd:boolean
A op Bxsd:timexsd:dateTimexsd:boolean1
A op Bxsd:timexsd:dateTimeStampxsd:boolean1
A op Bxsd:timexsd:timexsd:boolean
A op Bxsd:yearMonthDurationxsd:dayTimeDurationxsd:boolean
A op Bxsd:yearMonthDurationxsd:durationxsd:boolean
A op Bxsd:yearMonthDurationxsd:yearMonthDurationxsd:boolean
A op Bxsd:hexBinaryxsd:hexBinaryxsd:boolean
A op Bxsd:base64Binaryxsd:base64Binaryxsd:boolean

Arithmetic Operations

For date and time types, Tentris uses and extends the definitions of XPath.

Addition

OperationType(A)Type(B)Result Type
A + Bnumericnumericnumeric
A + Bxsd:datexsd:dayTimeDurationxsd:date
A + Bxsd:datexsd:durationxsd:date
A + Bxsd:datexsd:yearMonthDurationxsd:date
A + Bxsd:dateTimexsd:dayTimeDurationxsd:dateTime
A + Bxsd:dateTimexsd:durationxsd:dateTime
A + Bxsd:dateTimexsd:yearMonthDurationxsd:dateTime
A + Bxsd:dateTimeStampxsd:dayTimeDurationxsd:dateTimeStamp
A + Bxsd:dateTimeStampxsd:durationxsd:dateTimeStamp
A + Bxsd:dateTimeStampxsd:yearMonthDurationxsd:dateTimeStamp
A + Bxsd:dayTimeDurationxsd:dayTimeDurationxsd:dayTimeDuration
A + Bxsd:dayTimeDurationxsd:durationxsd:duration
A + Bxsd:dayTimeDurationxsd:yearMonthDurationxsd:duration
A + Bxsd:durationxsd:dayTimeDurationxsd:duration
A + Bxsd:durationxsd:durationxsd:duration
A + Bxsd:durationxsd:yearMonthDurationxsd:duration
A + Bxsd:timexsd:dayTimeDurationxsd:time
A + Bxsd:yearMonthDurationxsd:dayTimeDurationxsd:duration
A + Bxsd:yearMonthDurationxsd:durationxsd:duration
A + Bxsd:yearMonthDurationxsd:yearMonthDurationxsd:yearMonthDuration

Subtraction

OperationType(A)Type(B)Result Type
A - Bnumericnumericnumeric
A - Bxsd:datexsd:datexsd:dayTimeDuration
A - Bxsd:datexsd:dateTimexsd:dayTimeDuration
A - Bxsd:datexsd:dateTimeStampxsd:dayTimeDuration
A - Bxsd:datexsd:dayTimeDurationxsd:date
A - Bxsd:datexsd:durationxsd:date
A - Bxsd:datexsd:yearMonthDurationxsd:date
A - Bxsd:dateTimexsd:datexsd:dayTimeDuration
A - Bxsd:dateTimexsd:dateTimexsd:dayTimeDuration
A - Bxsd:dateTimexsd:dateTimeStampxsd:dayTimeDuration
A - Bxsd:dateTimexsd:dayTimeDurationxsd:dateTime
A - Bxsd:dateTimexsd:durationxsd:dateTime
A - Bxsd:dateTimexsd:timexsd:dayTimeDuration
A - Bxsd:dateTimexsd:yearMonthDurationxsd:dateTime
A - Bxsd:dateTimeStampxsd:datexsd:dayTimeDuration
A - Bxsd:dateTimeStampxsd:dateTimexsd:dayTimeDuration
A - Bxsd:dateTimeStampxsd:dateTimeStampxsd:dayTimeDuration
A - Bxsd:dateTimeStampxsd:dayTimeDurationxsd:dateTimeStamp
A - Bxsd:dateTimeStampxsd:durationxsd:dateTimeStamp
A - Bxsd:dateTimeStampxsd:timexsd:dayTimeDuration
A - Bxsd:dateTimeStampxsd:yearMonthDurationxsd:dateTimeStamp
A - Bxsd:dayTimeDurationxsd:dayTimeDurationxsd:dayTimeDuration
A - Bxsd:dayTimeDurationxsd:durationxsd:duration
A - Bxsd:durationxsd:dayTimeDurationxsd:duration
A - Bxsd:durationxsd:durationxsd:duration
A - Bxsd:durationxsd:yearMonthDurationxsd:duration
A - Bxsd:timexsd:dateTimexsd:dayTimeDuration
A - Bxsd:timexsd:dateTimeStampxsd:dayTimeDuration
A - Bxsd:timexsd:dayTimeDurationxsd:time
A - Bxsd:timexsd:timexsd:dayTimeDuration
A - Bxsd:yearMonthDurationxsd:durationxsd:duration
A - Bxsd:yearMonthDurationxsd:yearMonthDurationxsd:yearMonthDuration

Multiplication

OperationType(A)Type(B)Result Type
A * Bnumericnumericnumeric
A * Bxsd:dayTimeDurationnumericxsd:dayTimeDuration
A * Bxsd:durationnumericxsd:duration
A * Bxsd:yearMonthDurationnumericxsd:yearMonthDuration

Division

OperationType(A)Type(B)Result Type
A/Bnumericnumericnumeric
A/Bxsd:dayTimeDurationnumericxsd:dayTimeDuration
A/Bxsd:dayTimeDurationxsd:dayTimeDurationxsd:decimal
A/Bxsd:yearMonthDurationnumericxsd:yearMonthDuration
A/Bxsd:yearMonthDurationxsd:yearMonthDurationxsd:decimal

  1. These comparisons will be removed in next releases to follow the XPath specification. ↩2 ↩3 ↩4 ↩5 ↩6 ↩7 ↩8 ↩9 ↩10 ↩11 ↩12 ↩13 ↩14 ↩15 ↩16 ↩17 ↩18 ↩19 ↩20 ↩21 ↩22 ↩23 ↩24 ↩25 ↩26 ↩27 ↩28 ↩29 ↩30 ↩31 ↩32 ↩33 ↩34