[Bug 2639] xml:id processing: normalizing the attribute value

http://www.w3.org/Bugs/Public/show_bug.cgi?id=2639

           Summary: xml:id processing: normalizing the attribute value
           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


There is a residual difference between XSLT and XQuery in the area of xml:id
processing. XQuery specifies that a constructed xml:id value will be
whitespace-normalized (as per normalize-space(), or "collapse" in schema
terminology). XSLT does not require this.

I think we should bring XSLT into line with XQuery on this.

The impact of this is:

In 11.3 (xsl:attribute) change the sentence 

If the name of a constructed attribute is xml:id, the resulting attribute node
will have the is-id property. 

to read

If the name of a constructed attribute is xml:id, the processor must perform
attribute value normalization by applying the fn:normalize-space() function to
the value of the attribute, and the resulting attribute node must be given the
is-id property. 

In 11.1.2 (attributes of literal result elements) add, before the second Note:

If the name of a constructed attribute is xml:id, the processor must perform
attribute value normalization by applying the fn:normalize-space() function to
the value of the attribute, and the resulting attribute node must be given the
is-id property. 

Michael Kay

Received on Thursday, 5 January 2006 11:08:53 UTC