Lists Home |
Date Index |
In direct contradiction to the W3C's advertised policies, the
recently released XML 1.1 Proposed Recommedation makes a very
substantive change since the candidate recommendation. The candidate
recommendation used the following production for char:
 Char ::= #x9 | #xA | #xD | [#x20-#x7E] | #x85 | [#xA0-#xD7FF]
| [#xE000-#xFFFD] | [#x10000-#x10FFFF]
Note that control characters such as bell and vertical tab were not
allowed. They could be inserted using character references as
indicated in section 4.1.
In the new proposed recommendation, however, this is no longer true.
C0 controls can now be directly included in XML documents. Its Char
 Char ::= [#x1-#xD7FF] | [#xE000-#xFFFD] |
[#x10000-#x10FFFF] /* any Unicode character, excluding the surrogate
blocks, FFFE, and FFFF. */
[2a] RestrictedChar ::= [#x1-#x8] | [#xB-#xC] | [#xE-#x1F] |
[#x7F-#x84] | [#x86-#xBF]
Despite production 2a, I can find no text in the spec that restricts
these characters to being included only via character references and
prevents them from being included literally.
This is a large change that was the subject of much controversy in
the past. Section 7.4.3 of the W3C's process document
After gathering implementation experience, the Working Group MAY
remove features from the technical report that were identified as
being "at risk" and request that the Director Call for Review of a
Proposed Recommendation. If the Working Group makes other substantive
changes to the technical report, the Director MUST return it to the
Working Group for further work.
If the Working group feels it's important to make this substantive
change in the BNF grammar of XML 1.1 at this point in time, then the
proposed recommendation should go back to working draft.
Elliotte Rusty Harold
Effective XML (Addison-Wesley, 2003)