All notable changes to this project will be documented in this file. This project adheres to Semantic Versioning.
- Correctly evaluate absolute nodeset expressions with an attribute context node in any browser
- Prevent conversion of native number params to Scientific Notation (#160)
- Update format-date to return empty string instead of 'Invalid Date' (#155)
- Date arithmetic correctly returns a number, rather than a date (#143)
- Date arithmetic correctly applies the local timezone to all operands (#147)
- Values returned from
date
(and thedate-time
alias) always includes a time component, consistent with the previous evaluator (#148)
decimal-date-time()
treated as local time when no offset specified
- Convert date extensions to plain functions
- Inconsistencies with date-as-string result formats.
- Result of if() is no longer cast to a string (recently updated ODK XForms spec).
decimal-date()
function (as it was an accident and is not in the spec).
- Using
decimal-time()
with a node-set parameter fails. - The not-equals operator fails when preceded by a node-set without a trailing space.
- Using
uuid()
with a node-set parameter fails.
- Using
node()
mid-axis, causes an exception. - Using
ends-with()
with a node parameter causes an exception. - Using
not()
with an empty node-set parameter returnsfalse
. - Using
uuid()
with a node parameter fails. - Using
exp()
,exp10()
,log()
,log10()
,sqrt()
with node-set parameters returns incorrect results. - Using
randomize()
with a non-nodeset parameter does not throw an error.
- Native XPath functions do not handle node-set arguments.
- Exception occurs with lazy evaluation of and-or statements.
- The uuid() function implementation has improved with a reduced chance of collisions.
- Nested expressions with dead branches cause an exception.
- Lazy and/or evaluation within function arguments.
- Full support for XPath as included in the ODK XForms Spec (when used in Enketo Core).