W3C

XML 1.1 First Edition Specification Errata

Abstract

This document records all known errors in the First Edition of the Extensible Markup Language (XML) 1.1 Specification ; for updates see the latest version.

The errata are numbered, classified as Substantive or Editorial, and listed in reverse chronological order of their date of publication in each category. Changes to the text of the spec are indicated thus: deleted text, new text, modified text . Substantive corrections are proposed by the XML Core Working Group, which has consensus that they are appropriate; they are not to be considered normative until approved by a Call for Review of Proposed Corrections or a Call for Review of an Edited Recommendation.

Please email error reports to xml-editor@w3.org.

Substantive errata

Errata as of 2006-08-09

E22

Section 4.2.2 External Entities

Change the second sentence of paragraph following the "Notation Declared" validity contraint as follows:

It is meant to be converted to a URI reference (as defined in , updated by [IETF RFC 2732]), as part of the process of dereferencing it to obtain input for the XML processor to construct the entity's replacement text.

Change the first sentence of the immediately following paragraph as follows:

System identifiers (and other XML strings meant to be used as URI references) may contain characters that, according to and [IETF RFC 2732], must be escaped before a URI can be used to retrieve the referenced resource
Section A.1 Normative References

Remove the entries for IETF RFC 2396 and IETF RFC 2732, and add an entry for IETF RFC 3986:

IETF RFC 2396
IETF (Internet Engineering Task Force). RFC 2396: Uniform Resource Identifiers (URI): Generic Syntax. T. Berners-Lee, R. Fielding, L. Masinter. 1998. (See http://www.ietf.org/rfc/rfc2396.txt.)
IETF RFC 2732
IETF (Internet Engineering Task Force). RFC 2732: Format for Literal IPv6 Addresses in URL's. R. Hinden, B. Carpenter, L. Masinter. 1999. (See http://www.ietf.org/rfc/rfc2732.txt.)
IETF RFC 3986
IETF (Internet Engineering Task Force). RFC 3986: Uniform Resource Identifier (URI): Generic Syntax. T. Berners-Lee, R. Fielding, L. Masinter. 2005. (See http://www.ietf.org/rfc/rfc3986.txt.)
Rationale
RFC 2396 and RFC 2732 are now obsolete, replaced by RFC 3986.

Errata as of 2006-04-25

E21

Section 4.1 Character and Entity References

Change the first sentence of the description of the Entity Declared Validity Constraint, so that it begins:

In a document with an external subset or external parameter entity references with "standalone='no'",...
Rationale
It makes no difference whether the parameter entity is external or internal: minimal processors don't have to process it.

E20

Section 3.3.2 Attribute Defaults

To the list of constraints of production [60] "DefaultDecl", add a reference to the "No External Entity References" WFC.

Rationale
This was an oversight, it is just as important not to have references to external entities in attribute value defaults as in attribute values (production [41]).

Errata as of 2005-01-09

E15

Section 2.8 Prolog and Document Type Declaration

Delete the first sentence of the last paragraph:

XML 1.1 processors should accept XML 1.0 documents as well.
Rationale
The sentence was inconsistent with another one in 5.1: "XML 1.1 processors must be able to process both XML 1.0 and XML 1.1 documents."

Errata as of 2004-11-20

E12

Section 3.3.2 Attribute Defaults

Amend the "Attribute Default Value Syntactically Correct" validity constraint so that it reads:

Validity constraint: Attribute Default Value Syntactically Correct

The declared default value MUST meet the syntactic constraints of the declared attribute type. That is, the default value of an attribute:

Note that only the syntactic constraints of the type are required here; other constraints (e.g. that the value be the name of a declared unparsed entity, for an attribute of type ENTITY) may come into play if the declared default value is actually used (an element without a specification for this attribute occurs) will be reported by a validating parser only if an element without a specification for this attribute actually occurs.

Rationale
It was not clear what "meet the syntactic constraints" meant.

Errata as of 2004-11-08

E11

Section 3 Logical Structures

Amend list item 3 of the "Element Valid" validity contraint so that it reads:

The declaration matches Mixed , and the content (after replacing any entity references with their replacement text) consists of character data (including CDATA sections), comments, PIs and child elements whose types match names in the content model.

Amend list item 4 of the "Element Valid" validity contraint so that it reads:

The declaration matches ANY, and the content (after replacing any entity references with their replacement text) consists of character data, CDATA sections, comments, PIs and child elements whose types have been declared.
Rationale
The spec was not clear that CDATA sections, comments and PIs may occur in elements with content models Mixed and ANY. Section 2.5 says that "Comments MAY appear anywhere in a document outside other markup". Section 2.7 says that "CDATA sections MAY occur anywhere character data may occur". The case for PIs is a little bit less clear, but is supported by the wording for Mixed in this VC, by the equal treatment of PIs and Comments in productions [27] Misc and [29] markupdecl, as well as by widespread practice.

Errata as of 2004-08-25

E10

Section 2.9 Standalone Document Declaration

Amend production [32], changing #x20+ to S, so that it reads:

[32] SDDecl ::= S 'standalone' Eq (("'" ('yes' | 'no') "'") | ('"' ('yes' | 'no') '"'))
Rationale
The S in production [32] of XML 1.0 was mistakenly changed to #x20+ in XML 1.1, making it inconsistent with related productions [23], [24], [25] and [80].

Errata as of 2004-06-23

E03

Section 2.12 Language Identification

Amend the first paragraph after the example to read:

The language specified by xml:lang is considered to applies to all attributes and content of the element where it is specified (including the values of its attributes), and to all elements in its content unless overridden with another instance of xml:lang on another element within that content. In particular, the empty value of xml:lang is used on an element B to override a specification of xml:lang on an enclosing element A, without specifying another language. Within B, it is considered that there is no language information available, just as if xml:lang had not been specified on B or any of its ancestors. Applications determine which of an element's attribute values and which parts of its character content, if any, are treated as language-dependent values described by xml:lang.

Rationale

The original text confusingly used the word "intent" and the phrase "is considered to". The new text clarifies that xml:lang specifies a language, but also makes it clear that applications may ignore the specification when not relevant.

The same correction was published for the XML 1.0 specification as E01.

Errata as of 2004-04-28

E02

Section 2.1 Well-Formed XML Documents

Amend production [1] to read (parentheses introduced):

[1] document ::= ( prolog element Misc* ) - ( Char* RestrictedChar Char* )
Section 4.3.2 Well-Formed Parsed Entities

Amend production [78] to read (parentheses introduced):

[78] extParsedEnt ::= ( TextDecl? content ) - ( Char* RestrictedChar Char* )
Rationale
Since the relative precedence of concatenation and subtraction are not specified, there ought to be parentheses.

Editorial errata

Errata as of 2005-12-07

E19

Section 3 Logical Structures

Amend the first sentence after production [39], so that it begins:

This specification does not constrain the application semantics, use, or (beyond syntax) names of the element types and attributes,...
Section 3.3.1 Attribute Types

Amend the second sentence of the first paragraph, so that it reads:

The string type may take any literal string as a value; the tokenized types have varying lexical and semantic constraintsare more constrained.
Rationale
The two uses of "semantic(s)" were somewhat conflicting.

Errata as of 2005-11-02

E18

Section 2.2 Characters

Add ranges to the list of ranges in the note at the end of the section, so that it reads:

[#x1-#x8], [#xB-#xC], [#xE-#x1F], [#x7F-#x84], [#x86-#x9F], [#xFDD0-#xFDDF],
[#x1FFFE-#x1FFFF], [#x2FFFE-#x2FFFF], [#x3FFFE-#x3FFFF],
[#x4FFFE-#x4FFFF], [#x5FFFE-#x5FFFF], [#x6FFFE-#x6FFFF],
[#x7FFFE-#x7FFFF], [#x8FFFE-#x8FFFF], [#x9FFFE-#x9FFFF],
[#xAFFFE-#xAFFFF], [#xBFFFE-#xBFFFF], [#xCFFFE-#xCFFFF],
[#xDFFFE-#xDFFFF], [#xEFFFE-#xEFFFF], [#xFFFFE-#xFFFFF],
[#x10FFFE-#x10FFFF].
Rationale
The added ranges correspond to control characters newly allowed in XML 1.1, but which should be discouraged just as much as the other control characters already allowed in XML 1.0 but discouraged.

E17

Section 4.1 Character and Entity References

Change the first sentence of the description of the Entity Declared Validity Constraint, so that it begins:

In a document with an external subset or external parameter entitiesentity references with "standalone='no'",...
Rationale
It wasn't clear that "external parameter entities" meant references, as opposed to declarations of same.

Errata as of 2005-01-09

E16

Section 2 Documents

Amend the first paragraph to read:

[Definition: A data object is an XML document if it is well-formed, as defined in this specification. In addition, the XML document is valid if it meets certain further constraints.]
Rationale
The second sentence was cast as normative but is in fact merely descriptive.

E14

Section 4.3.2 Well-Formed Parsed Entities

Add a note after the first paragraph, reading:

Note:

Only parsed entities that are referenced directly or indirectly within the document are required to be well-formed.

Rationale
This is a clarification, a reminder of the definition of well-formed documents in section 2.1 Well-Formed XML Documents (third item of the numbered list).

Errata as of 2004-12-15

E13

Section 4.7 Notation Declarations

In the first paragraph, change the title attribute of the link corresponding to the text "unparsed entities" from "External Entity" to "Unparsed Entity".

Errata as of 2004-08-25

E09

Section 5.2 Using XML Processors

Restore a missing closing parenthesis in the last sentence of the last paragraph, so that it reads:

... Applications which require DTD facilities not related to validation (such as the declaration of default attributes and internal entities that are or may be specified in external entities ) SHOULD use validating XML processors.
Rationale
The parenthesis exists in XML 1.0 Third edition and was unintentionally lost in 1.1.

Errata as of 2004-07-15

E08

Section 3.3.2 Attribute Defaults

In production [60], mark up non-terminal S properly so that it links to the defining production ([3]).

Section 3.4 Conditional Sections

In productions [62] and [63], mark up all instances of the non-terminal S properly so that they link to the defining production ([3]).


E07

Section I Suggestions for XML Names

The sixth item in the numbered list of suggestions should read as follows:

6. The interlinear annotation characters ([#xFFF9-#xFFFB ]) should not be used in names.
Rationale
The closing ] was missing.

E06

Section C Expansion of Entity and Character References

In the fourth example, change <?xml version='1.0'?> to <?xml version='1.1'?>.


E05

Section 4.7 Notation Declarations

In the first paragraph, change the target location of the link corresponding to the text "unparsed entities" from "#dt-extent" to "#dt-unparsed".


E04

Section 2.2 Characters

Amend the list of code points in the note following production [2] so that it reads:

[#x7F-#x84], [#x86-#x9F], [#xFDD0-#xFDDF],
[#x1FFFE-#x1FFFF], [#x2FFFE-#x2FFFF], [#x3FFFE-#x3FFFF],
[#x4FFFE-#x4FFFF], [#x5FFFE-#x5FFFF], [#x6FFFE-#x6FFFF],
[#x7FFFE-#x7FFFF], [#x8FFFE-#x8FFFF], [#x9FFFE-#x9FFFF],
[#xAFFFE-#xAFFFF], [#xBFFFE-#xBFFFF], [#xCFFFE-#xCFFFF],
[#xDFFFE-#xDFFFF], [#xEFFFE-#xEFFFF], [#xFFFFE-#xFFFFF],
[#x10FFFE-#x10FFFF].

Errata as of 2004-04-28

E01

Section 2.1 Well-Formed XML Documents

Amend production [1] to read (spaces added in two places):

[1] document ::= prolog element Misc* - Char* RestrictedChar Char*

Note that the normative XHTML version of the XML 1.1 specification has been fixed in place by adding those two spaces. The XML and XHTML with color-coded revision indicators versions have not been so modified.


Last updated $Date: 2006/08/09 15:48:58 $ by $Author: fyergeau $

xml-editor