Project

Profile

Help

Bug #4768

fn:transform(): source-node and global context item

Added by Michael Kay 22 days ago. Updated 21 days ago.

Status:
New
Priority:
Low
Assignee:
Category:
XPath Conformance
Sprint/Milestone:
-
Start date:
2020-09-30
Due date:
% Done:

0%

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

Description

The specification of fn:transform() states:

When source-node is supplied then the global-context-item (the context item for evaluating global variables) is the root of the tree containing the supplied node.

Test case fn-transform-82b in QT3 is failing; it appears that the global context item is set to the supplied value of source-node, not to the root of the containing tree.

History

#1 Updated by Michael Kay 22 days ago

Test fn-transform-82e is failing for the same reason (though it's not clear we should be running this test since it requires an XSLT 2.0 processor).

#2 Updated by Michael Kay 21 days ago

For transform-82e I think the results we produce should be allowed.

The test requests xslt-version:2.0, but the spec says:

If a processor that implements the requested XSLT version is available, then it is used.
Otherwise, if a processor that implements a version later than the requested version is available, then it is used.

So we're allowed to use an XSLT 3.0 processor; and if we do, then the global-context-item option will not be ignored as the test appears to expect.

However, if we make this change to the test, then Saxon/J 10.2 fails it.

Please register to edit this issue

Also available in: Atom PDF Tracking page