Serialization: interaction of cdata-section-elements with character maps
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 over 2 years ago
output-0115c is fixed by checking for the property
DISABLE_CHARACTER_MAPS instead of
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.
Please register to edit this issue