nairbv,
Here is the situation, as far as I can tell by reading the specifications, regarding epub:
epub is a container format, within that container the text content is encoded as XML, that XML can be in one of two XML dialects, XHTML and DTBook. Normally you would use one or the other to hold the text, not both. CSS is used to describe how the XML is formatted for display.
For a reading system to be conformant with the spec it must support XHTML, DTBook and CSS. See this section of the specification:
Quote:
1.4.2: Reading System Conformance
This specification defines only one level of conformance for a Reading System. A Reading System is conformant if and only if it processes documents as follows:
When presented with an OPS Content Document the Reading System must:
1. correctly process the XML as required in the XML 1.1 specification, including that specification’s requirements for the handling of well-formedness errors; and
2. recognize all markup described as permitted in this specification and processes it consistently with the corresponding explanations in this specification and in those of XHTML 1.1, CSS 2, and DTBook (in case of any conflict, this specification takes precedence); and
3. not render img or object elements of unsupported media types, in the absence of fallbacks. These fallbacks are clearly defined herein — img in Section 2.3.4 and object in Section 2.3.6; and
4. verify the existence of the appropriate namespace specifications, as defined in the Relationship to XML Namespaces section above.
|
It is certainly possible for a company to release a reading system than only understands XHTML and CSS but such a system would not be epub compliant and the manufacturer would (hopefully) be subject to the same kind of scorn and criticism that Microsoft is when it releases web browsers that don't fully support the current HTML spec.
If simply supporting XHTML and CSS constitutes an epub reader then the bar is set pretty low. Indeed if we use that definition I imagine most of us already have an epub reader installed (Firefox can display XHTML and CSS for example).
So XHTML, DTBook and CSS support is required. Epub also allows other XML dialects to be used but a reading system is not
required to support these additional dialects, instead epub provides a fallback method so the publisher can effectively say:
If this reading device supports TEI then display this page (which is tagged as TEI) otherwise display this other page (which is tagged as XHTML).
For a document to be epub compliant it must provide a fallback (i.e. a page in a format that a compliant reader can parse - XHTML or DTBook) for every piece of non-standard XML used in the document. The idea is that if Sony releases a reader that supports epub + MathML then you can write an epub document to take advantage of that expanded capability but which will also display fine on a different reading system that doesn't understand MathML.
Regarding DTBook borrowing from the HTML spec, it does, but only when it makes sense to do so. For instance they both use the paragraph tag, that's because a paragraph is a useful semantic unit when marking up books. There's no point re-inventing the wheel after all.
To attempt to answer one of your earlier questions; yes, it is possible to represent the content of a book entirely in DTBook XML. If you want it to be useful to most people then you should probably create a CSS file to go with it so it can be displayed in a visually attractive form. Once you have your DTBook and CSS files it should be a very easy step to package them together into an epub document for viewing on an epub compliant reading system.