Guidelines for Modular Extensions
STATUS: Approved by the Advisory Committee for ANSI/NISO Z39.86, Specifications for the Digital Talking Book.
The DAISY/NISO Standard, formally the ANSI/NISO Z39.86, Specifications for the Digital Talking Book defines a comprehensive system for Digital Talking Books. A part of this Standard is DTBook, an XML vocabulary that provides a core set of elements that are needed to produce most types of books. However, DTBook is not intended to be an exhaustive vocabulary for all types of books.
Many organizations have inquired about the correct approach to extend the DAISY/NISO Standard so that it can address additional needs. Some extensions that have been mentioned are for mathematics, video support, testing, workbooks, music, dictionaries, chemistry, searching and more. This is not a comprehensive list. This set of guidelines is designed to make it possible to add modular extensions that are interoperable.
This document describes the process for developing interoperable extensions within the constraints of the 2005 revision of the Standard.
Revision of the Standard Circa 2007-2009
Greater modularity of XML is a general theme in the standards world today. The W3C is working on these issues and will have more elegant solutions in the future. As XML evolves, the DAISY/NISO Advisory Committee intends to include more support for modularization in general. The next revision of the Standard (circa 2007-2009) will have as one of the goals an elegant modular design. This should make the implementation of extensions easier. The supporting materials will be needed for any extension (current or future) as outlined below. The working groups involved in developing modular extensions under these guidelines are therefore encouraged to stay abreast of the work of the Advisory Committee.
Work on modular extensions under these guidelines is expected to contribute to the design of the future standard. However, working groups should not expect that the extensions they develop will be forward compatible. To require extensions created under the current version (2005) to be compatible in the future version of the standard would limit design options too much. Instead plans should incorporate the ability to automatically upgrade the content to future versions of the standard.
- Work to support standards harmonization. Whenever an existing standard can be used to provide the needed functionality, that standard should be referenced without modification. For example, the W3C has done extensive work in mathematics and the MathML vocabulary appears to be an obvious candidate for any extension.
- Any new extended vocabularies in XML should define and use their own namespace. Information about the development of the vocabulary should be publicly available, so that other standards bodies will be aware of the effort and can join ours. If a standards body is already working on a specification that could be used, effort should be put towards this area, rather than developing a competing specification.
- Avoid using specifications that have royalty attached to them. If specifications are referenced that have patents, the licensing should be on a royalty free (RF) basis. In no case should a specification be used that does not have a reasonable and non-discriminatory (RAND) licensing practice.
- Specifications developed under the DAISY Consortium are in the public domain and have no patents or royalty associated with them.
- Modular extensions should be developed within the DAISY Consortium community. When a company or organization identifies the need to extend the standard to meet new functionality, a public statement of this intention should be sent to the DAISY Technical Developments discussion list. People who wish to collaborate on the extension should be free to participate; avoid having a single person or organization develop an extension and just submitting it as a completed extension, which has not gone through proper review.
- Extension development in the same area should be joined; we want to avoid competing extension development.
The Recommended Process
- One or more organizations or companies identify a modular extension that is needed. They identify sufficient technical resources within their organizations to lead the work. A description of the modular extension along with a work plan is drafted, and posted to the DAISY Technical Developments list. Note that the work plan should include future maintenance of the extension as standards evolve. The extension development activity will be placed on the DAISY Web site.
- If a list is needed for the discussions, the DAISY Consortium will provide these services. The project plan, along with updates should be provided on the DAISY Web site.
- If an extension is needed, the work group should first explore existing standards for applicability. If one exists, it should be used without modification. Notification of the intended use should be provided to the maintenance agency for the specification; collaboration is highly recommended.If a DTD or Schema does not exist, the formal DTD or Schema should be created and the semantics of the elements documented. This DTD or Schema development activity should be made publicly known to avoid duplication of effort in the standards arena.
- If there are any other components of Z39.86 that need to change, these should be defined and documented.
- Usage guidelines should be developed; these should work effectively with the Structure Guidelines developed for DTBook.
- Sample training materials should be developed.
- The ZedVal conformance tool should be extended to validate content that includes the modular extension.
- Sample content should be provided; use samples from all available production tools that support the modular extension.
- At least one (preferably more) production tool should support the proposed modular extension.
- At least one (preferably more) playback or intelligent reading system should support the modular extension.
- The materials provided to support the modular extension should be sufficient for other companies or organizations to implement support for the modular extension.
- Once work on the modular extension is completed, the Z3986 Advisory Committee and the DAISY Technical Developments list should be notified. The details concerning the completed extension will be placed on the DAISY Consortium Web site.