The errata list is a list of errors and their corrections that were found after the product was released. If the error was corrected in a later version or reprint the date of the correction will be displayed in the column titled "Date Corrected".
The following errata were submitted by our customers and approved as valid errors by the author or editor.
Version |
Location |
Description |
Submitted By |
Date submitted |
Date corrected |
Printed |
Page 16
Example 2-3 -> 2nd Definition Block,the "Turing Machine" definition |
"to any any other finite state...."
NOW READS:
"to any other finite state...."
|
Anonymous |
|
Feb 01, 2005 |
Printed |
Page 29
2nd bulleted point |
"How many of instances..."
should read:
"How many instances..."
|
Anonymous |
|
Jul 01, 2007 |
Printed |
Page 29
2nd bulleted point |
"How many of instances..."
should read:
"How many instances..."
|
Anonymous |
|
Aug 01, 2007 |
Printed |
Page 30
The caption for Example 3-1; |
"A DTD for the person"
NOW READS:
"A DTD for the person element"
|
Anonymous |
|
Feb 01, 2005 |
Printed |
Page 38
Section 3.2.3 |
Madonna's surname is Ciccone (two c's, one n), not Ciconne, as quoted in the example.
|
Anonymous |
|
|
Printed |
Page 40
last code on page |
<!ELEMENT name (last_name
| (first_name, ( ( middle_name+, last_name) | (last_name?) )
) >
missing a closing ")"
should be:
<!ELEMENT name (last_name
| (first_name, ( (middle_name+, last_name) | (last_name?) ))
) >
|
Anonymous |
|
Jul 01, 2007 |
Printed |
Page 40
last code on page |
<!ELEMENT name (last_name
| (first_name, ( ( middle_name+, last_name) | (last_name?) )
) >
missing a closing ")"
should be:
<!ELEMENT name (last_name
| (first_name, ( (middle_name+, last_name) | (last_name?) ))
) >
|
Anonymous |
|
Aug 01, 2007 |
Printed |
Page 46
2nd paragraph of IDREF section |
"Every project has a project_id ID type attribute"
should be:
"Every project has an ID type attribute named id"
also, towards the bottom of the page:
<!ATTLIST project project_id ID #REQUIRED>
should be:
<!ATTLIST project id ID #REQUIRED>
|
Anonymous |
|
Jul 01, 2007 |
Printed |
Page 46
2nd paragraph of IDREF section |
"Every project has a project_id ID type attribute"
should be:
"Every project has an ID type attribute named id"
also, towards the bottom of the page:
<!ATTLIST project project_id ID #REQUIRED>
should be:
<!ATTLIST project id ID #REQUIRED>
|
Anonymous |
|
Aug 01, 2007 |
Printed |
Page 47
End of IDREFS section |
<!ATTLIST employee social_security_number ID #REQUIRED
fsteam IDREFS #REQUIRED>
<!ATTLIST project project_id ID #REQUIRED>
to
<!ATTLIST employee social_security_number ID #REQUIRED>
<!ATTLIST project project_id ID #REQUIRED
team IDREFS #REQUIRED>
|
Anonymous |
|
Jul 01, 2007 |
Printed |
Page 47
End of IDREFS section |
<!ATTLIST employee social_security_number ID #REQUIRED
fsteam IDREFS #REQUIRED>
<!ATTLIST project project_id ID #REQUIRED>
to
<!ATTLIST employee social_security_number ID #REQUIRED>
<!ATTLIST project project_id ID #REQUIRED
team IDREFS #REQUIRED>
|
Anonymous |
|
Aug 01, 2007 |
Printed |
Page 63
The first paragraph of "Namespace Syntax" is really imprecise, |
or perhaps overly precise. Replace it with the following:
Namespaces distinguish between elements with different meanings but
the same name by assigning each element a URI. Generally, all the
elements from one XML application are assigned to one URI, and all the
elements from a different XML application are assigned to a different
URI. These URIs are called namespace names. Elements with the same name
but different URIs are different kinds of elements. Elements with the
same name and the same URI are the same kind of element. Most of the
time a single XML application has a single namespace URI for all its
elements, though a few applications use multiple namespaces to subdivide
different parts of the application. For instance, XSL uses different
namespaces for XSL Transformations (XSLT) and XSL Formatting Objects
(XSL-FO).
|
Anonymous |
|
Jul 01, 2007 |
Printed |
Page 63
The first paragraph of "Namespace Syntax" is really imprecise, |
or perhaps overly precise. Replace it with the following:
Namespaces distinguish between elements with different meanings but
the same name by assigning each element a URI. Generally, all the
elements from one XML application are assigned to one URI, and all the
elements from a different XML application are assigned to a different
URI. These URIs are called namespace names. Elements with the same name
but different URIs are different kinds of elements. Elements with the
same name and the same URI are the same kind of element. Most of the
time a single XML application has a single namespace URI for all its
elements, though a few applications use multiple namespaces to subdivide
different parts of the application. For instance, XSL uses different
namespaces for XSL Transformations (XSLT) and XSL Formatting Objects
(XSL-FO).
|
Anonymous |
|
Aug 01, 2007 |
Printed |
Page 65
Bottom of page (Example 4-3) |
Example 4-3 is titled "A document containing both SVG and XLinks" when it actually contains both rdf and
dc elements.
Note from the Author or Editor: In the caption Of example 4-3 change ""A document containing both SVG and XLinks"" to ""A document containing both RDF and Dublin Core elements"
|
Anonymous |
|
|
Printed |
Page 72
Section 5.4,1st paragraph |
Section 5.4 starts with -
An XML parser is required to handle the UTF-16 and UTF-8 encodings or Unicode (about which more follows).
Should be 'of', not 'or',
An XML parser is required to handle the UTF-16 and UTF-8 encodings of Unicode (about which more follows).
Note from the Author or Editor: This is actually on p. 74 in my copy. "An XML parser is required to handle the UTF-16 and UTF-8 encodings or Unicode" should read
"An XML parser is required to handle the UTF-16 and UTF-8 encodings of Unicode".
|
Anonymous |
|
|
Printed |
Page 77
ISO is not an acronym. Therefore |
"The International Standards Organization (ISO) has standardized fourteen of these character sets as ISO standard 8859. "
NOW READS:
"ISO, the International Standards Organization, has standardized fourteen of these character sets as ISO standard 8859. "
|
Anonymous |
|
Feb 01, 2005 |
Printed |
Page 95
Subsection titled "The body of the work in the 'body' element" |
The last sentence reads:
Each div1 element has a header child...
'header' should be 'head' according to Example 6-1.
|
Anonymous |
|
Jul 01, 2007 |
Printed |
Page 95
Subsection titled "The body of the work in the 'body' element" |
The last sentence reads:
Each div1 element has a header child...
'header' should be 'head' according to Example 6-1.
|
Anonymous |
|
Aug 01, 2007 |
|
149
3rd paragraph |
In the 3rd paragraph it says:
"The <p> and </p> tags were copied from the input to the output."
But it should instead say:
The <p> and </p> tags were copied from the stylesheet to the output.
Note from the Author or Editor: Good catch! Please make the change as suggested in the erratum.
|
Dave |
Apr 20, 2013 |
|
Printed |
Page 163
in the code listing |
The name of the attribute of the homepage-element on page 163 is 'xlink:href'
but in the picture on page 164 it is 'xref:href'.
Note from the Author or Editor: p. 164, Figure 9-1:
* text/xsl should be application/xml
* xref:href="http://www.turinng.org.uk" should be xlink:href="http://www.turing.org.uk"
|
Anonymous |
|
|
Printed |
Page 164
Figure 9-1 |
* text/xsl should be application/xml
* xref:href="http://www.turing.org.uk" should be
xlink:href="http://www.turing.org.uk"
|
Anonymous |
|
Jul 01, 2007 |
Printed |
Page 164
Figure 9-1 |
* text/xsl should be application/xml
* xref:href="http://www.turing.org.uk" should be
xlink:href="http://www.turing.org.uk"
|
Anonymous |
|
Aug 01, 2007 |
Printed |
Page 193
In the last paragraph on the page |
"purchase_details.html"
should be:
"purchase_details.txt"
|
Anonymous |
|
Jul 01, 2007 |
Printed |
Page 193
In the last paragraph on the page |
"purchase_details.html"
should be:
"purchase_details.txt"
|
Anonymous |
|
Aug 01, 2007 |
Printed |
Page 266
In Example 16-4, remove the extra http:// from the namespace |
URIs for xmlns:xsi and xmlns:xsd. That is, change
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://http://www.w3.org/2001/XMLSchema">
to
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
Anonymous |
|
Jul 01, 2007 |
Printed |
Page 266
In Example 16-5, change xmlns:env to xmlns:SOAP-ENV and add a |
namespace declaration for the xsd and xsi prefixes. That is, change
<SOAP-ENV:Envelope
xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
to
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
Anonymous |
|
Jul 01, 2007 |
Printed |
Page 266
In Example 16-4, remove the extra http:// from the namespace |
URIs for xmlns:xsi and xmlns:xsd. That is, change
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://http://www.w3.org/2001/XMLSchema">
to
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
Anonymous |
|
Aug 01, 2007 |
Printed |
Page 266
In Example 16-5, change xmlns:env to xmlns:SOAP-ENV and add a |
namespace declaration for the xsd and xsi prefixes. That is, change
<SOAP-ENV:Envelope
xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
to
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
Anonymous |
|
Aug 01, 2007 |
Printed |
Page 267
Top of page |
The bottom of page 266 ends:
"SOAP can be used over a varity of other protocols, provided that all the senders and receivers
understand both the protocols, provided that all the senders an receivers understand both the protocol
being used and as much of the SOAP messages as they need to process the request." (PERIOD)
At the top of page 267 the text starts:
"exsiting objects or accepts XML Schemas describing formats and then generate the markup automatically."
There would apear to be missing text between the bottom of page 266 and the top of page 267.
|
Anonymous |
|
|
Printed |
Page 281
after 1st paragraph |
In the sample command line
% java dom.Writer -V -S addressdoc.xml
both option letters must be given in lower case to enable schema validation:
% java dom.Writer -v -s addressdoc.xml
The given uppercase option letters DISABLE the schema validation, which is exactly what is not wanted here.
|
Anonymous |
|
Jul 01, 2007 |
Printed |
Page 281
after 1st paragraph |
In the sample command line
% java dom.Writer -V -S addressdoc.xml
both option letters must be given in lower case to enable schema validation:
% java dom.Writer -v -s addressdoc.xml
The given uppercase option letters DISABLE the schema validation, which is exactly what is not wanted here.
|
Anonymous |
|
Aug 01, 2007 |
Printed |
Page 282
In Example 17-4, |
xmlns:xsi="http://www.w3.org/2001/XMLSchema"
NOW READS:
xmlns:xs="http://www.w3.org/2001/XMLSchema"
|
Anonymous |
|
Feb 01, 2005 |
Printed |
Page 286
The first code fragment on the page should declare the xs |
prefix, not the xsi prefix. That is change
<xs:schema xmlns:xsi="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://namespaces.oreilly.com/xmlnut/address">
to
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://namespaces.oreilly.com/xmlnut/address">
|
Anonymous |
|
Jul 01, 2007 |
Printed |
Page 286
The first code fragment on the page should declare the xs |
prefix, not the xsi prefix. That is change
<xs:schema xmlns:xsi="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://namespaces.oreilly.com/xmlnut/address">
to
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://namespaces.oreilly.com/xmlnut/address">
|
Anonymous |
|
Aug 01, 2007 |
Printed |
Page 287
The second code fragment on the page should declare the xs |
prefix, not the xsi prefix. That is change
<xs:schema xmlns:xsi="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://namespaces.oreilly.com/xmlnut/address"
xmlns:addr="http://namespaces.oreilly.com/xmlnut/address">
to
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://namespaces.oreilly.com/xmlnut/address"
xmlns:addr="http://namespaces.oreilly.com/xmlnut/address">
|
Anonymous |
|
Jul 01, 2007 |
Printed |
Page 287
The second code fragment on the page should declare the xs |
prefix, not the xsi prefix. That is change
<xs:schema xmlns:xsi="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://namespaces.oreilly.com/xmlnut/address"
xmlns:addr="http://namespaces.oreilly.com/xmlnut/address">
to
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://namespaces.oreilly.com/xmlnut/address"
xmlns:addr="http://namespaces.oreilly.com/xmlnut/address">
|
Anonymous |
|
Aug 01, 2007 |
Printed |
Page 289
Example 17-7 should declare the xs prefix, not the xsi prefix. |
That is change
<xs:schema xmlns:xsi="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://namespaces.oreilly.com/xmlnut/address"
xmlns:addr="http://namespaces.oreilly.com/xmlnut/address"
elementFormDefault="qualified">
to
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://namespaces.oreilly.com/xmlnut/address"
xmlns:addr="http://namespaces.oreilly.com/xmlnut/address"
elementFormDefault="qualified">
|
Anonymous |
|
Jul 01, 2007 |
Printed |
Page 289
Example 17-7 should declare the xs prefix, not the xsi prefix. |
That is change
<xs:schema xmlns:xsi="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://namespaces.oreilly.com/xmlnut/address"
xmlns:addr="http://namespaces.oreilly.com/xmlnut/address"
elementFormDefault="qualified">
to
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://namespaces.oreilly.com/xmlnut/address"
xmlns:addr="http://namespaces.oreilly.com/xmlnut/address"
elementFormDefault="qualified">
|
Anonymous |
|
Aug 01, 2007 |
Printed |
Page 297
Example 17-9 should declare the xs prefix, not the xsi prefix. |
That is change
<xs:schema xmlns:xsi="http://www.w3.org/2001/XMLSchema">
to
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
|
Anonymous |
|
Jul 01, 2007 |
Printed |
Page 297
Example 17-9 should declare the xs prefix, not the xsi prefix. |
That is change
<xs:schema xmlns:xsi="http://www.w3.org/2001/XMLSchema">
to
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
|
Anonymous |
|
Aug 01, 2007 |
Printed |
Page 301
Example 17-12 should declare the xs prefix, not the xsi prefix. |
That is change the first line from
<xs:schema xmlns:xsi="http://www.w3.org/2001/XMLSchema"
to
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
|
Anonymous |
|
Jul 01, 2007 |
Printed |
Page 301
Example 17-12 should declare the xs prefix, not the xsi prefix. |
That is change the first line from
<xs:schema xmlns:xsi="http://www.w3.org/2001/XMLSchema"
to
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
|
Anonymous |
|
Aug 01, 2007 |
Printed |
Page 302
Both code fragments on this page should declare the xs prefix, |
not the xsi prefix. That is change the first lines from
<xs:schema xmlns:xsi="http://www.w3.org/2001/XMLSchema"
to
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
|
Anonymous |
|
Jul 01, 2007 |
Printed |
Page 302
Both code fragments on this page should declare the xs prefix, |
not the xsi prefix. That is change the first lines from
<xs:schema xmlns:xsi="http://www.w3.org/2001/XMLSchema"
to
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
|
Anonymous |
|
Aug 01, 2007 |
Printed |
Page 420
The description of the fixed attribute was omitted. |
After final, add the following:
fixed, optional
If the fixed attribute is present, then the only legal value for
this element's content is the value of the fixed attribute. Only
elements with simple types may be fixed.
|
Anonymous |
|
|
Printed |
Page 458
Change the description of the // abbreviated step to the following |
All descendants of the context node and the context node itself unless
// occurs at the beginning of the expression, in which case this refers
to all descendants of the root node and the root node itself. Never used
in isolation. Must be followed by a location step.
|
Anonymous |
|
Jul 01, 2007 |
Printed |
Page 458
Change the description of the // abbreviated step to the following |
All descendants of the context node and the context node itself unless
// occurs at the beginning of the expression, in which case this refers
to all descendants of the root node and the root node itself. Never used
in isolation. Must be followed by a location step.
|
Anonymous |
|
Aug 01, 2007 |
Printed |
Page 622
in the 5th, 6th, 7th, and 8th row set of characters |
Under the hex code 620 there is a 'Y' character. This is not an arabic character. It should be no charater at all (or just n/a).
Under the hex code 628 there is a 'Y' character. It should be the arabic charater ب
Under the hex code 630 there is a 'Y' character. It should be the arabic charater ذ
Under the hex code 638 there is a 'Y' character. It should be the arabic charater ظ
Thanks!
Note from the Author or Editor: As described above. This appears to be a copy and paste error from an earlier table. p. 622: Character 0x620 is wrong. It should be n/a
Character 0x628 is wrong. It should be ب
Character 0x630 is wrong. It should be ذ
Character 0x638 is wrong. It should be
|
Anonymous |
Jun 28, 2008 |
|