Datypic Logo
Definitive XML Schema

Definitive XML Schema

Priscilla Walmsley (pwalmsley@datypic.com)

1st edition (December 7, 2001)

Prentice Hall PTR; ISBN: 0130655678

Errata in the 2nd and later printings

Strikethrough indicates deleted text and underline indicates inserted text.

Chapter 1

  • p. 8. Example 1-3 should declare an element type number rather than name.

Chapter 6

  • p. 102. Examples 6-3 and 6-5 should also contain a reference to the schema for schemas, if you would like to validate the schemas themselves. Note that some processors have problems validating schemas against the schema for schemas, because there are a few glitches in it. The xsi:schemaLocation attribute should read:

Chapter 7

  • p. 129. Last paragraph: "You may be surprised by the fourth example third row in the table..."
  • p. 130. Table 7-3. In the fourth column of the third row of the table, both of the name elements should contain N/A, with no leading or trailing spaces.
  • p. 133. Bottom, second bullet: Second bullet: "omitting the component declaration element"
  • p. 133. Bottom, third bullet: Third bullet: "relying on that element or attribute being there"
  • p. 136. Bottom, paragraph after the Example 7-8: "if the xsi:nil attribute appears in the start-tag of an element, and its value is true, that element must be empty"

Chapter 10

  • p. 198. The last example in Table 10-16 is incorrect. The strings cz, dz, and ez will not match the regular expression. This is because the "^" character only negates the a-z range, not the entire expression in square brackets. The last two sentences in the preceding paragraph describe this incorrectly.

Chapter 12

  • p. 230. Table 12-9. The pattern for the language type should now read [a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*.
  • p. 231. For float and double, positive zero is now considered to be equal to negative zero. NaN (Not-a-number) can no longer be compared to other values; it is neither less than nor greater than other values, and it is not equal to itself [Erratum E2-40].
  • p. 246. Table 12-26: "the range is limited to -24:00-14:00 through +24:00+14:00."
  • p. 259. XML Schema 1.0 Second Edition made a number of changes to the valid lexical representations of the base64Binary type. They are documented fully in the erratum description.

Chapter 14

  • p. 316. Table 14-8 says that either the base attribute or the simpleType child is required for the restriction child of simpleType. Actually, the base attribute is always required.
  • p. 329. In Example 14-24, RestrictedLetterType should not have a mixed="true" attribute.

Chapter 17

  • p. 386. "The key referenced by a keyref must be defined in the same element declaration, or in a declaration of one of its children descendants."
  • p. 393. Second-to-last paragraph: "Unqualified Unprefixed names in XPath expressions are always assumed to be in no namespace."
  • p. 394. First paragraph: "Example 17-10 uses unqualified unprefixed names..."

Chapter 18

  • p. 409. Second paragraph: "...redefining DescriptionGroupIdentifierGroup as shown in Example 18-6...".

Chapter 20

  • p. 446-491. Examples 20-6, 20-9, 20-11, 20-14 and 20-15 refer to a type ProdNumType that is not defined in the schema. Example 20-15 also refers to an undefined SizeSystemType. They should be changed to refer to xsd:string in order to be a self-contained schema definition.

Chapter 21

  • p. 473. First paragraph: "Example 14-4 21-7 shows..."

Last updated February 19, 2010.