Bug #6134
closedPartial function application call to function in ixsl namespace fails
100%
Description
I've stumbled across a bug where some calls to functions in the ixsl namespace fail. It seems that the problem occurs when the function call gets exported as an "fnRef" expression, rather than an "ifCall" expression. For instance, when the ixsl function is called as a partial function application. SaxonJS actually attempts to call the function with the same local name in the fn namespace, resulting in unexpected results, or failure if such a function does not exist.
e.g. array:for-each(['A string', 'B string'], ixsl:contains(?, 'string'))
actually ends up calling fn:contains
instead of ixsl:contains
.
e.g. array:for-each(['A string', 'B string'], ixsl:get(?, 'string'))
fails with "The get() construct is not implemented in SaxonJS".
Updated by Debbie Lockett over 1 year ago
- Fix Committed on JS Branch 2, Trunk added
Unit test nodejs/iss6134 and code fix committed on main and saxonjs2 branches. The fix was to add the ixsl namespace to the list of namespaces where implementations are found in ExtraFn, as used in the CoreFunction
class in XdmFunction.js.
Updated by Debbie Lockett about 1 year ago
- Status changed from Resolved to Closed
- % Done changed from 0 to 100
- Fixed in JS Release set to SaxonJS 2.6
Bug fix applied in the SaxonJS 2.6 maintenance release.
Please register to edit this issue
Also available in: Atom PDF Tracking page