17 February 2013

E0-eBook Zero, ePub3,specification, Production

Dave Cramer (@dauwhe) has started a very interesting blog epubzero.blogspot.in. where he proposes a new and dramatically simple packaging ruleset for ePub. EPub Zero was born on 14th February 2013.

Dave Cramer (@dauwhe) has started a very interesting blog http://epubzero.blogspot.in/. where he proposes a new and dramatically simple packaging ruleset for ePub. EPub Zero was born on 14th February 2013.

Dave eloquently discusses the motivation for this on the blog. Go and read it now.

The goal is to make it easier for authors given the fact the ePub3 specification is painfully complex and someone new to these types of specifications. It will of course also make it a lot easier for reading system developers. 

It is 14 months after the release of the ePub3 specification and the only readers supporting ePub3 is the recent partial Apple iBooks support and the very wide ePub support by AZARDI since December 2011.

A big problem is that there are not that many ePub3 books available (check out ePub3 World and contribute if you have any samples) and simple novels are not particularly useful as examples. So neither publishers nor reading systems manufacturers have got behind the ePub3 specification. Expect the implementations that have been announced to be even more terrifyingly bad than the ePub2 support.

The ePub Zero Specification in a Nutshell

Dave's blog is of course the right place to discuss this to keep the conversation focused so this post is to just spread the news a little further and drive those interested to the source.

I put an unusually long winded comment on the blog that hopefully summarized the packaging ideas as they are at present.

  1. An ePub zero must be zip package of HTML5/XHTML5 with no errors (pass HTML5 validation tests)
  2. The opening page must be named index.html
  3. The index.html page will be displayed and must have a nav element which may be hidden
  4. The index.html page can be listed as an item in the nav element. It can appear in any position in the nav.
  5. The nav list defines the next-previous default navigation as well as the reading system presented TOC.
  6. Document metadata is the meta statements in the index file as dc terms (can we say there must at least be a title, identifier and date).
  7. The loading rule for the reading system is simply: If the epub zip package contains an index.html, open the index file, read the nav list. Wait for the user.

All the above may be wrong. But that is the gist so far as I understand it.

There are still some open issues to discuss, but the core packaging rule for ePub Zero is keep it HTML5 and don't add anything that is not required for the minimum package, slap it into a zip package and rename it to *.epub.

It is obvous that ePub3 is just too damn hard for reading system developers. So for the last year or so the real work of making ePub3 work is with the various production people and operations who have spent the last five years dumbing brilliant content down for the lowest reading system common denominator and are used to working with crappy reading systems that do not behave or interoperate.

ePub Zero Reading Systems

Infogrid Pacific has offered to upgrade AZARDI to open and read ePub Zero packaged books to get the ball seriously rolling. This is of course relatively simple to do. If you have a reader that can open and read ePub2 and ePub3 it is not a heart attack to do ePub Zero as illustrated in point seven above.

Probably the biggest failure of the ePub3 specification is that it is written in a vacuum with absolutely no exemplars or test beds for reading systems. This is a mind-numbing fact given the fact that a core ePub2/3 reading system is not particularly difficult. Even the test book examples are very sad and many very bad.

Supporting ePub Zero concepts in a Reading System enables the evaluation of the stripped down package to be evaluated. It also allows evaluation of:

HTML5/XHTML5 Interoperability. We know for sure that the paging architecture of AZARDI will support this easily. This may not be true of other reading systems.

Navigation structures. In ePub Zero navigation is a minimal starting point rather than the whole navigation strategy. That allows items such as page navigation to use core HTML5 methods rather than specialist vocabularies.

Accessibility features (something AZARDI is strong on). SMIL is worth a blog on its own, so will get a blog on its own.

Rich Media features. This is less important than most other features. Fallback will be straight-forward HTML5 packaging rather than the irksome and upside-down OPF manifest. With effect from Firefox 22 support for mp3 and mp4 will be available in AZARDI Desktop on Windows.

Interactivity. What can be done on the web can be done in the book.

Custom fixed Layout. Fixed layout becomes easier with specification of fixed layout features on a page by page HTML5 metadata vocabulary. Simple, direct and easy (just like the AZARDI custom fixed layout from 2010!)

Other Design Freedoms. It is apparent from the simplicity of the package that significant other book and content design freedoms will emerge from this experiment. Integration with dynamic offline content under CORS control and much more.

No More Namespaces. HTML5 has the data attribute that can be used as an interoperable controlled vocabulary for many purposes.

The ePub file Extension

The most significant problem is the use of the epub file extension for a package that is not going to be backwardly compatible with older ePub2 reading systems. Obviously this is a proposal, an experiment and an exercise at this stage so a temporary extension should probably be used for development books.

For format packaging experiments a reader that does handle ePub Zero should handle it as both epub, zpub/epubz or some other similar development extension that I guess Dave or someone will have to decide.

The good news is that an ePub Zero will probably fail significantly in any current ePub2 reader.


This clean-slate approach is long overdue. ePub has inherited crazy stuff from Web 1.0 and irrelevant XML standards and strategies.

This exercise is not an attempt to subvert the ePub3 specifications in any way shape or form. This is an opportunity to create a real experimental environment to see what can and should be reset to deliver the best technology options, the lowest production costs and the maximum flexibility for the future and contribute that back to the industry.

When ePub zero is working the evaluation of other ePub3 features can be by a book or system basis rather than by a reading system basis. That means every reading system does not have to support features that are not relevanat for all types of content.

That means more reading systems, more easily created, and even packaged with books in a relatively simple manner.

Curiously It will also make the delivery of valuable content in a secure manner considerably easier.

If you haven't already go and read http://epubzero.blogspot.in/ now!

comments powered by Disqus