- From: <bugzilla@wiggum.w3.org>
- Date: Fri, 30 Jun 2006 11:34:38 +0000
- To: public-qt-comments@w3.org
- CC:
http://www.w3.org/Bugs/Public/show_bug.cgi?id=3417 Summary: [XSLT] Base URI of a copied element Product: XPath / XQuery / XSLT Version: Candidate Recommendation Platform: PC OS/Version: Windows XP Status: NEW Severity: normal Priority: P2 Component: XSLT 2.0 AssignedTo: mike@saxonica.com ReportedBy: mike@saxonica.com QAContact: public-qt-comments@w3.org For xsl:copy and xsl:copy-of, the rules say that the base URI property of the element is copied unchanged. If the element has an xml:base attribute, I don't feel this rule is right. Firstly, for xsl:copy, the new element may have an xml:base attribute that wasn't present on the original element, and it seems wrong to ignore this. Secondly, for both instructions, the element may have a relative xml:base attribute, and it makes sense to "re-resolve" this in the same way as we would do with a newly constructed element. Otherwise it could lead to the element having a base URI that is different from the one that would be obtained by computation. Related to this, I think we should clarify that when we make use of the value of xml:base in determining the base URI of a node, we process the attribute as described in the XML Base specification, in particular, we percent-encode special characters. Specific changes: (a) for xsl:copy and xsl:copy-of, instead of "The base URI of the node is copied", we should say: "The base URI of the node is copied, except in the case of an element node having an xml:base attribute, in which case the base URI is taken as the value of the xml:base attribute, resolved if it is relative against the base URI of the xsl:copy|xsl:copy-of instruction." (b) At the end of 5.8, add the rule. "In the case of xml:base this means that the value of the attribute, before being used in any calculation of a base URI, is percent-encoded as described in [XML Base]."
Received on Friday, 30 June 2006 11:34:54 UTC