- From: <bugzilla@jessica.w3.org>
- Date: Tue, 11 Oct 2016 19:17:41 +0000
- To: public-qt-comments@w3.org
https://www.w3.org/Bugs/Public/show_bug.cgi?id=29933 Bug ID: 29933 Summary: [XSLT30] Discrepancy between serialization spec and XSLT spec on undeclare-prefixes Product: XPath / XQuery / XSLT Version: Candidate Recommendation Hardware: PC OS: Windows NT Status: NEW Severity: normal Priority: P2 Component: XSLT 3.0 Assignee: mike@saxonica.com Reporter: abel.braaksma@xs4all.nl QA Contact: public-qt-comments@w3.org Target Milestone: --- (probably only editorial, not sure) About undeclare-prefixes we say: <quote> The undeclare-prefixes attribute is relevant only when producing output with method="xml" and version="1.1" (or later). It defines whether namespace undeclarations (of the form xmlns:foo="") SHOULD be output when a child element has no namespace node with the same name (that is, namespace prefix) as a namespace node of its parent element. The default value is no: this means that namespace undeclarations are not output, which has the effect that when the resulting XML is reparsed, the new tree may contain namespace nodes on the child element that were not there in the original tree before serialization. </quote> In Serialization 3.1 we say: <quote> ...if the undeclare-prefixes parameter has the value yes, the output method is XML or XHTML, and the version parameter value is greater than 1.0, the serializer MUST undeclare its namespace. If the undeclare-prefixes parameter has the value no and the output method is XML or XHTML, then the undeclaration of prefixes MUST NOT occur. </quote> In other words, we write SHOULD were Ser 3.1 writes MUST and MUST NOT. Also, we say "is relevant only", where the Ser 3.1 writes that it MUST signal an error SEPM0010 if this attribute is used with version="1.0" (and *if* method is XML or XHTML). And we say it applies to "XML", where it also applies to "XHTML". I propose therefore a slightly different wording, something along those lines: <proposal> The undeclare-prefixes attribute is relevant only when producing output with method="xml" or method="xhtml" and version="1.1" (or later), it raises an error (err:SEPM0010) when used with the value "yes" with these methods and version="1.0". It defines whether namespace undeclarations (of the form xmlns:foo="") MUST or MUST NOT be output when a child element has no namespace node with the same name (that is, namespace prefix) as a namespace node of its parent element. The default value is no: this means that namespace undeclarations are not output, which has the effect that when the resulting XML is reparsed, the new tree may contain namespace nodes on the child element that were not there in the original tree before serialization. </proposal> -- You are receiving this mail because: You are the QA Contact for the bug.
Received on Tuesday, 11 October 2016 19:18:23 UTC