w3c / epubweb

White Paper on the EPUBWEB project
31 stars 10 forks source link

Add a section on a possible API specification #48

Open iherman opened 9 years ago

iherman commented 9 years ago

(This issue was originally raised by Daniel Glazman on W3C's AC forum mailing list. Although that list is member confidential, these extract from Daniel's email have been reproduced with his authorization).

[…]I miss one thing that is in our expertise area: an standard Object Model for EPUB packages.[…] Let me give you a concrete example about why I think we one:

Reaching (reading AND setting) the individual metadata of an EPUB package is a pretty complex task because of the potential multiple levels of indirection between the package-level and the single piece of data you're trying to reach. This is of course doable through the html Document Object Model, but it's tedious, to say the least, and quite error-prone. The metadata system of EPUB3 is IMHO so complex (I wrote several times about it) it prevents reading and authoring systems to use it at its full potential. A dedicated Object Model would allow such systems to use a higher-level API in a standard way to easily manipulate all the data contained in an EPUB package. Other example: adding a file and inserting a reference to that file into the various table of contents EPUB provides is more than tedious, it's painful; similarly, getting a reference to "the next file in package according to ToC" from a given file is also painful. All of that could be greatly simplified in an OM and would allow more cross-browser frameworks and applications.