[Bug 6028] [FO] fn:id is broken -- gives wrong answers for elements of type ID

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


John Cowan <cowan@ccil.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |cowan@ccil.org




--- Comment #7 from John Cowan <cowan@ccil.org>  2009-10-16 22:00:31 ---
I'm posting even though I agree that this bug is properly closed, because
Michael Kay's comment #1 contains a broken meme I am trying to stamp out.

"id() [...] only works when the input document is validated" is not true. 
Conforming non-validating XML parsers MUST process ATTLIST declarations in the
internal subset that appear before the first reference to an external parameter
entity. Conforming processors that read external DTD subsets and parameter
entities, whether validating or non-validating, MUST process all ATTLIST
declarations.  Once an ATTLIST declaration for a particular attribute has been
processed, the XML parser MUST report it to the application.  So if you write:

<!DOCTYPE root [<!ATTLIST root foo ID #REQUIRED>]>
<root foo="FOO">

every conforming XML parser MUST report the IDness of root/@foo.  What is more,
if you write:

<!DOCTYPE root [<!ATTLIST root foo ID #REQUIRED>]>
<root foo="FOO">

every conforming processor MUST still report the IDness of root/@foo, even
though 32 is not a valid ID.


-- 
Configure bugmail: http://www.w3.org/Bugs/Public/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.

Received on Friday, 16 October 2009 22:00:33 UTC