Bug #2003
closed@composite = "yes" : current-grouping-key() returns a single string
100%
Description
Release: Saxon 9.5.1.3 within oXygen.
Situation:
xsl:for-each-group called with composite="yes" and a group-by with a sequence of values.
Expected Behavior:
Placing {current-grouping-key()} inside of a value template will result in a concatenation of string values.
Actual Behavior:
{current-grouping-key()} yielding only the atomized value of the first item in the sequence.
Example script demonstrates issue. I expect the @key value in the output to have values like "3 blue" and "3 red".
Files
Updated by Michael Kay over 10 years ago
- Status changed from New to In Progress
- Assignee set to Michael Kay
- Priority changed from Low to Normal
- Found in version changed from 9.5.1.3 to 9.5
I have placed this test case in the W3C test suite as test case for-each-group-072.
Updated by Michael Kay over 10 years ago
The problem is caused by incorrect type signature in the data files for system functions; the signature has not been updated to indicate that current-grouping-key() can return a sequence, and as a result the calling code assumes the result will be a singleton. A patch is being committed on the 9.5 and 9.6 branches.
Updated by Michael Kay over 10 years ago
- Subject changed from @composite = "yes" :current-grouping-key() following XSL 1.0 rules when converted to string to @composite = "yes" : current-grouping-key() returns a single string
- Status changed from In Progress to Resolved
Updated by O'Neil Delpratt over 10 years ago
- Status changed from Resolved to Closed
- % Done changed from 0 to 100
- Fixed in version set to 9.5.1.5
Bug fix applied in Saxon maintenance release 9.5.1.5
Please register to edit this issue