Project

Profile

Help

Bug #5807

closed

current() does not work when invoked via xsl:evaluate

Added by John Dziurlaj almost 2 years ago. Updated 3 months ago.

Status:
Rejected
Priority:
Low
Assignee:
-
Category:
-
Sprint/Milestone:
-
Start date:
2023-01-11
Due date:
% Done:

0%

Estimated time:
Applies to JS Branch:
2
Fix Committed on JS Branch:
Fixed in JS Release:
SEF Generated with:
Platforms:
Company:
-
Contact person:
-
Additional contact persons:
-

Description

When passing the following expression to @xpath of xsl:evaluate in SaxonJS, instance('i2')/month[@code = current()] , I get the error "The current() construct is not implemented in SaxonJS"

Note that this error is masked by another error related to namespace declarations, which is more fully described in Saxon-Forms #20. (the error can be suppressed by removing the @namespace-context from xsl:evaluate).

Actions #1

Updated by Michael Kay almost 2 years ago

The XSLT 3.0 specification lists the functions that are available within xsl:evaluate at https://www.w3.org/TR/xslt-30/#evaluate-static-context and the list explicitly excludes functions defined in XSLT as distinct from the F&O specification.

So it's not going to be there automatically by virtue of being defined in XSLT. Arguably the current() in XForms is a different function. How you add XForms functions is another question...

Actions #2

Updated by Norm Tovey-Walsh 3 months ago

  • Status changed from New to Rejected

As Mike notes, current() isn't available in evaluate.

Please register to edit this issue

Also available in: Atom PDF Tracking page