Errata for DAISY/NISO Z39.86

Errata for DAISY/NISO Z39.86
Specifications for the Digital Talking Book

STATUS: Updated as Errata Issues are resolved by the Advisory Committee
Last Modified – 18 March, 2008

This document: http://www.daisy.org/z3986/2005/errataDaisy_2005.html, lists known errata to the DAISY 3 Standard, officially the DAISY/NISO Z39.86 Specifications for the Digital Talking Book. It is updated as issues are resolved through the Z3986 Issues Tracking process.

Errata and release notes for DTDs and other documents that accompany the DAISY 3 Standard are documented at http://www.daisy.org/z3986/2005/.

Errata entries are listed in order of the first occurring section of the DAISY 3 Standard that is affected. Each Erratum entry includes the following information:

  • a unique Issue number
  • the date the Issue was entered
  • whether the Erratum is considered a significant error, a minor typographical error, a clarification, or a known problem with the document itself
  • the referenced section
  • a description of the problem and correction if applicable

Index to Errata Issues in Numerical Order:

Conventions

Added text marked thus. Removed text marked thus.

Comments on the DAISY 2005 Specification and this Errata may be sent using the Contact Us form. Please use category ‘Z3986 Standards’.

Known Errors


Issue #106: DTDs – manifest membership

Added March 8, 2006, Issue Type: Specification (clarification)

3.3 Manifest

This section shall read as follows:

(This section is normative.)

The manifest, which is a child of the package element, must contain a complete list of all of the files (documents, audio files, images, style sheets, etc.) that make up a given DTB, including the package file itself. The manifest shall list only files of types permitted by this standard. The manifest shall list only files that are part of the DTB. Entity references in the System ID field in an XML document prolog are not considered part of the DTB, irrespective of whether the URI is local or remote, and thus shall not be listed. The distInfo file and any associated audio changeMsgs (or any other files listed only in the distInfo file) are not considered part of the DTB and thus shall not be listed (See section 11, “Packaging Files for Distribution.”) The Resource File and any associated media files are considered part of the DTB and thus shall be listed. Each file is referenced by an item element. Each item must have an href attribute that is the URI of the referenced file and is unique within the manifest. This URI must not include fragment identifiers; if relative, it is interpreted as relative to the package file itself. Further, any relative URIs contained within an XML file listed in the manifest are considered to be relative to the referring file.


Issue #215: Mime type for XSLT XML application disallowed in package and in Zedval

Added December 15, 2007, Issue Type: Specification (clarification)

3.3 Manifest

This section shall read as follows:

The following table summarizes the required file name extensions and MIME media type values for all the different kinds of files named in this specification that may appear in the package manifest. Note that this is not meant to be an all-inclusive list of file types.

Kind of file File name extension MIME media type
MPEG-4 AAC audio .mp4 audio/mpeg4-generic
MPEG-1/2 Layer III (MP3) audio .mp3 audio/mpeg
Linear PCM – RIFF WAVE format audio .wav audio/x-wav
JPEG image .jpg image/jpeg
PNG image .png image/png
Scalable Vector Graphics (SVG) image .svg image/svg+xml
Cascading Style Sheets (CSS) .css text/css
SMIL files .smil application/smil
Package file .opf text/xml
DTD and DTD fragments (entities or modules) [no requirement] application/xml-dtd
Navigation Control File (NCX) .ncx application/x-dtbncx+xml
Textual content files (dtbook) .xml application/x-dtbook+xml
Resource file .res application/x-dtbresource+xml
XSL Transformation Stylesheet (XSLT) .xsl application/xslt+xml


Issue #130: Incorrect media-type in manifest example

Added November 3, 2006, Issue Type: Specification (minor typographical error)

Example 3.3:

This section shall read as follows:


....
<manifest>

     <item id="opf" href="rs.opf" media-type="text/xml" />
     <item id="text" href="rs.xml" media-type="textapplication/x-dtbook+xml" />
     <item id="text_style" href="dtbbase.css" media-type="text/css" />

....


Issue #147: Section 4.2.2 does not mention externalFlow

Added September 8, 2006,   Issue Type:  Specification (clarification of extension)

4.2.2 Modular Extension of the DTD

(This section is informative.)

The DTBook DTD includes a base set of elements for use in marking up a broad range of material. Additional modules containing elements for specialized applications such as poetry, plays, dictionaries, mathematics, etc. can be “invoked” from within a DTBook document when needed, as described below.

A DTBook document is an XML application. Therefore it should begin with the XML declaration identifying the version of XML, and the optional character set encoding. (See Appendix 1, “DTBook DTD” for more information.)

<?xml version="1.0"
encoding="UTF-8" ?>

This is followed by the document type declaration:


<!DOCTYPE dtbook PUBLIC "-//NISO//DTD dtbook 2005-3//EN"
  "http://www.daisy.org/z3986/2005/dtbook-2005-13.dtd">

For discussion of other ways of expressing the DOCTYPE, see section 2.3 of the “DTBook DTD” listed in Appendix 1.

A book can invoke other DTDs or modules to augment the DTBook DTD by adding instructions in square brackets before the concluding “>” of the document type declaration. Such instructions in square brackets are called the “internal subset of declarations.” For example:


<!DOCTYPE dtbook PUBLIC "-//NISO//DTD dtbook 2005-13//EN"
  "http://www.daisy.org/z3986/2005/dtbook-2005-13.dtd"
        [
            <!ENTITY % dramaModule SYSTEM "drama.dtd" >
            %dramaModule;
            <!ENTITY % externalblock "| drama">
            <!ENTITY % externalinline "| stagedir">
            <!ENTITY % externalblock "| d:drama">
            <!ENTITY % externalinline "| d:character ">
            <!ENTITY % externalFlow "| d:stagedir">
            <!ENTITY % externalNamespaces "xmlns:d CDATA #FIXED 'http://www.example.org/drama'">
        ]>

The first line of the internal subset declares an entity known as “dramaModule” and provides the URI where that module can be found. The second line invokes this entity, that is “brings it into” the current document, just as the DOCTYPE declaration invoked the base DTD (dtbook-2005-13.dtd). The third line declares the entity “% externalblock” and gives it the value “drama”. Since dtbook-2005-13.dtd contains an entity of the same name, and the internal subset overrules the base (external) DTD (dtbook-2005-13) in areas of conflict, everywhere in dtbook-2005-13 where “%externalblock;” appears (that is, wherever block elements are allowed), the value “drama” is added. Since d:drama is the root element in the drama module, the full drama module can be used there. Similarly, the last line effectively allows the element stagedir to be used anywhere “%externalinline;” is allowed in dtbook-2005-1 (that is, wherever inline elements can be used). Similarly, the next two lines allow d:character to be used anywhere %externalinline is allowed in dtbook-2005-3 (that is, wherever inline elements can be used), and d:stagedir to be used anywhere “%externalFlow” is allowed (that is, in either inline or block contexts). The last line defines a namespace prefix for use with the drama module and adds it to the namespace declarations on the dtbook element.

More than one module may be needed and included in a book. In the following example, both a poetry and drama module are invoked, as well as one inline element (stagedir) from the drama module.

        [
            <!ENTITY % poemModule "http://www.xyzexample.org/poem.dtd" >
            %poemModule;
            <!ENTITY % dramaModule "http://www.xyzexample.org/drama.dtd" >
            %dramaModule;
            <!ENTITY % externalblock "| p:poem | d:drama" >
            <!ENTITY % externalinline "| d:stagedir">
            <!ENTITY % externalNamespaces "xmlns:d CDATA #FIXED 'http://www.example.org/drama'
              xmlns:p CDATA #FIXED 'http://www.example.org/poem'">
        ]>

See section 3 of the “DTBook DTD” (see Appendix 1) for a more detailed discussion of this issue.

 


Issue #143: Clarify Variable Bit Rate in spec

Added September 22, 2006,  Issue Type: Specification (clarification)

5.1 Distribution Formats

This section shall read as follows:

While the ISO standards for MP3 and AAC require support for variable bit rate playback, players compliant with this standard are only required to support constant bit rate playback. DTBs may not include variable bit rate audio files.

Players must support sample rates of 44.1, 22.05, and 11.025 kHz at a depth of 16 bits per sample. Compressed audio must be encoded such that the output sampling rate is restricted to one of the above three rates.


Issue #191: Replace RFC 3066 with RFC 4646 and 4647 throughout

Added November 6, 2006, Issue Type: Specification (clarification)

All references to RFC3066 in sections 3.2.1, 7.3.2, and 8.3 should be replaced with references to RFC4646.

3.2.1 Dublin Core

This section shall read as follows:

7.3.2 xml:lang Attribute

This section shall read as follows:

(This section is normative)

The xml:lang attribute specifies the [RFC 30664646] language code of SMIL elements that have, or reference, content.

8.3 NCX Elements

This section shall read as follows:

17 References to Other Specifications/Documents

This section shall read as follows: This section shall read as follows:

RFC 3066(obsolete)
Tags for the Identification of Languages: http://www.ietf.org/rfc/rfc3066.txt
RFC 4646 (replaces RFC 3066)
Tags for Identifying Languages: http://www.ietf.org/rfc/rfc4646.txt
RFC 4647 (replaces RFC 3066)
Matching of Language Tags: http://www.ietf.org/rfc/rfc4647.txt


Issue #198: Missing MultiArcTiming SMIL 2.0 module

Added March 8, 2007, Issue Type: Specification (clarification)

7.1.2 SMIL Modules

This section shall read as follows:

  • Timing
    • *BasicInlineTiming
    • MinMaxTiming
    • SyncbaseTiming
    • EventTiming
    • *BasicTimeContainers
    • *MultiArcTiming


Issue #124: 7.6 noterefs and annorefs in SMIL files

Added December 6, 2006, Issue Type:  Specification (clarification)

Example 7.3:

This section shall read as follows:

...
<a href="#ftn_1">
    <par id="nref_1" customTest="noteref">
		<text region="text" src="rs.xml#nref_1" />
		<audio src="rs_fwdx.mp3" clipBegin="47:22.610" 
		clipEnd="47:23.555" />
	</par>
</a>
...

7.4.8 Notes and Annotations in SMIL

This section shall read as follows:

(This section is normative.)

It is strongly recommended that links be applied to media objects (normally audio)pars for all noterefs and annorefs, with the corresponding notes and annotations as the targets. The presence of the links will enable key player functionality, such as easy access to notes when noterefs are turned on and notes turned off.


Issue #202: 8.6 Incorrect/misleading NCX example

Added April 12, 2007, Issue Type: Specification (minor typographical)

8.6 Example

The example in this section shall read as follows:

Example 8.1:

  <?xml version="1.0"  encoding="UTF-8"?>
  ...
  <meta name="dtb:uid" content="us-nls-00001"/>
  <meta name="dtb:depth" content="64"/>
  <meta name="dtb:generator" content="NLSv001"/>
  ...


Issue #125: EBNF notation of XPath subset

Added April 6, 2006, Issue Type: Specification (minor typographical error)

10.3 Resource File Requirements

This section shall read as follows:

Below is the XPath1.0 subset defined in EBNF form:

DTBLocationPath   ::=   '//' Step
Step              ::=   NodeTest Predicate*
NodeTest          ::=   '*' | QNameLocalPart
Predicate         ::=   '[' PredicateExpr ']'
PredicateExpr     ::=   Expr
Expr              ::=   EqualityExpr
EqualityExpr      ::=   AttrSpecifier '=' Literal
AttrSpecifier     ::=   '@' QNameLocalPart
Literal           ::=   '"' [^"]* '"'  | "'" [^']* "'"
QNameLocalPart    ::=   NCName
NCName            ::=   (Letter | '_') (NCNameChar)*
NCNameChar        ::=   Letter | Digit | '.' | '-' | '_' | CombiningChar | Extender