Bug #4460
closedSerialization: interaction of cdata-section-elements with character maps
100%
Description
A number of new serialization tests probing the interaction of CDATA sections and character maps are failing under Saxon 9.9 (as well as on the development branch).
Test failures include
output-0115c
output-0115d
output-0195b
output-0233
Test output-0115c is failing because character map expansion is not disabled for characters in an element designated as a cdata-section-element that is not output as CDATA because it is not available in the chosen encoding. The spec says "Character mapping is not applied to characters in text nodes whose parent elements are listed in the cdata-section-elements parameter" (that is, regardless of whether they are actually output within CDATA).
Updated by Michael Kay about 4 years ago
output-0115c is fixed by checking for the property DISABLE_CHARACTER_MAPS
instead of DISABLE_OUTPUT_ESCAPING
in CharacterMapExpander.characters()
.
output-0115d is failing because we are doing CDATA section processing on the next node prior to unicode normalization, whereas ยง4 rule 3(b) in the serialization spec says normalization should be done first. We can achieve this with a bit of messy logic in the CDATAFilter - messy because it "peeks ahead" in the serialization pipeline and thus creates some lock-in to the detailed structure of the pipeline.
output-0195a and output-0195b are failing because the HTML output method is reporting a C1 control character as a serialization error, which should not happen with HTML5 output.
output-0233 is failing under 9.9 but not under 10.0. This is covered under the (still open) bug #4401.
Updated by Michael Kay about 4 years ago
- Status changed from New to Resolved
- Applies to branch 9.9, trunk added
- Fix Committed on Branch 10, trunk added
- Fixed in Maintenance Release 9.9.1.7, 10.0 added
Belatedly marking this as resolved on both the 9.9 and 10.0 branches.
Updated by O'Neil Delpratt almost 4 years ago
- % Done changed from 0 to 100
- Fixed in Maintenance Release 10.1 added
- Fixed in Maintenance Release deleted (
9.9.1.7, 10.0)
Bug fix committed in the Saxon 10.1 maintenance release.
Updated by O'Neil Delpratt almost 4 years ago
- Status changed from Resolved to Closed
Please register to edit this issue