This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.
In discussing the escape-uri-attributes option, the serialization spec repeatedly uses the term "URI attribute values" without defining it. Possible definitions are: (a) attributes declared in the HTML/XHTML DTD to be of type %URI (b) attributes whose type annotation is xs:anyURI (c) the union of the above It should explicitly NOT include namespace declaration attributes even though these are declared in the DTD as attributes of type %URI. Michael Kay
Resolved to define it as attributes declared in the HTML/XHTML DTD to be of type %URI, explicitly NOT include namespace declaration attributes even though these are declared in the DTD as attributes of type %URI. We should specify by list of attributes, vs. refering to the DTD, to be consistent with the way empty elements are identified. (Might mention fragment identifiers... browsers get upset if you escape fragment identifiers. But no change, current status quoe is to escape, browser behavior is looked upon as bug, we don't want to get into the business of that.)
Here is the list of attributes: %URI datasrc generic href A, AREA, LINK, BASE src IMG, INPUT, SCRIPT, FRAME, IFRAME longdesc IMG, FRAME, IFRAME usemap IMG, OBJECT, INPUT classid OBJECT codebase OBJECT, APPLET data OBJECT cite Q, BLOCKQUOTE, INS, DEL action FORM profile HEAD for SCRIPT background BODY %UriList archive OBJECT Note that UriList is space separated. Spaces should be ignored when escaping.
I replaced (text in 2a of section 4) "URI escaping (in the case of URI-valued attributes in the HTML and XHTML output methods), as determined by the escape-uri-attributes parameter. [Definition: URI escaping is a process where non-ASCII characters in URI attribute values are escaped using the method defined by Section 5.4 of [XLink].]" with "URI escaping, as determined by the escape-uri-attributes parameter that is applicable to HTML and XHTML output methods. [Definition: URI escaping is a process where non-ASCII characters in URI attribute values are escaped using the method defined by Section 5.4 of [XLink].] [Definition: The values of attributes listed in D List of URI Attributes are URI attribute values. These attributes are declared to be of type %URI or %UriList for specific HTML/XHTML elements. Namespace declaration attributes and attributes whose type annotation is xs:anyURI are excluded from this list.]" Sections 6.1.12 and 7.4.12 already mention how fragment identifiers should be treated.
The name attribute for A element will be added to the List of URI Attributes as recommended by the HTML 4 specification, section B.2.1: "Note. The same conversion based on UTF-8 should be applied to values of the name attribute for the A element." If there is any problem with this, please re-open this bug.