Compatibility
Support for let expressions
[SINCE Orbeon Forms 2016.2]
As an extension to XPath 2.0, Orbeon Forms supports "let expressions" in XPath. XPath 2.0 doesn't support such expressions, while XQuery 1.0 and XPath 3.0 and 3.1 do. Example:
XForms 1.1 if() function
The use of the XForms 1.1 if()
function clashes with XPath 2.0's built-in if (...) then ... else ...
construct.
The bottom line is that you cannot directly use the XForms if()
function in Orbeon Forms. The following, for example, will not work in Orbeon Forms:
The good news is that you have ways around this issue:
Use the XPath 2.0 if (...) then ... else ...
construct instead:
Use the Orbeon Forms xf:if()
extension, which behaves like the XForms if()
function (not recommended):
XForms seconds-from-dateTime() function
The XForms 1.1 seconds-from-dateTime()
function clashes with the XPath 2.0 function of the same name:
they take a parameter of different types
the XForms 1.1 function takes an
xs:string
the XPath 2 function takes an
xs:dateTime
they do not have the same semantic
the XForms 1.1 function returns "the number of seconds difference between the specified dateTime (normalized to UTC) and 1970-01-01T00:00:00Z"
the XPath 2 function returns "an
xs:decimal
value greater than or equal to zero and less than 60, representing the seconds and fractional seconds in the localized value of$arg
"
The XForms version of the function is available as
xf:seconds-from-dateTime()
.The XPath 2.0 version of the function is available without a namespace as
seconds-from-dateTime()
.
Last updated