" /> Digital Editions: November 2008 Archives

« October 2008 | Main | February 2009 »

November 14, 2008

ePubPreflight version 0.1.0 (was "stylecheck")

There's a new tool for checking ePub files. The tool does not do validation, that is the role of the epubcheck tool. The epubpreflight tool is intended to check the things that are not mentioned in the EPUB spec, but that could be issues in one environment or another.

ePubPreflight can be found in the epubcheck downloads.

If you'd like to discuss the tool, head on over to the epubcheck discussion area

I'll be updating the project pages with instructions on how to use the ePubPreflight, but it's just like using epubcheck. (Run at a command line, and use 'java -jar epubpreflight-0.1.0.jar myEPub.epub'.)

The things that epubpreflight currently gives errors for, are:
* Content files that are empty.
* Content files that are over 300KB.
* Image files that are empty.
* Image files that are over 10MB.

It doesn't yet check the stylesheets.

I'd like to see this tool grow into something that does cover more. I'd like to see it have a configuration file that specifies what set of tests it would run and I'd like to see a set of targets (ADE, PRS505, conversion to other formats, etc.), but for now I'm trying to get the very minimal set of preflight checks into the tool.

November 4, 2008

A tool to compliement epubcheck, "stylecheck".

Recently I mentioned that I'm working on improving epubcheck, but then I was asked, "what about the items that don't relate to validation, but really should be checked anyway?"

The issues at hand are things like the 300k file size limit on content files, 10MB limit on images, and complexity issues with CSS.

The solution is a tool tentatively called "stylecheck" that would run much like the epubcheck tool, but would look for issues that are important to the reading systems, but are not necessarily issues of conformance.

An initial release of the tool alert the user to problems if it found:
* 300k or bigger chapter files.
* 10MB or larger images.
* CSS stylesheet with more than some number of styles (150?)

I could see other uses for the tool, checks to make sure that the package for a NIMAS submission has DTBook content rather than XHTML, or checks to make sure the publisher information in metadata is in the approved format. However the first step will be to create the tool and get the basic checks working.

Which is a work underway, and you should see something relatively soon on the epubcheck project pages.


November 3, 2008

Taking epubcheck (epub validtation tool) forward.

The epubcheck is a validation tool for ePub documents. It should determine whether the ePub under inspection conforms to the rules laid out in the IDPF specifications. In many circumstances it does just that, but it's not always clear what's happening, and sometimes the tool out and out fails. Of course the community is working to bring the tool forward and make it better.

Here I will give an outline of current and ongoing changes that I'm planning to make. Of course I would also like to put out a call for additional contribution/involvement in the process. There's plenty of room for more people to contribute, whether it be in the form of development, testing, review, or documentation. Anyone looking to get involved should head on over to the discussion group.

So here's the current changes I've added, and things I'll be working on:

If you look in the download section of the project page you'll find that there's a 1.0.2 version. Changes to the 1.0.2 version include:
* Clear labeling of warnings and errors.
* An external DTD now causes the tool to issue a warning (was a fatal error.)
* Version number is always reported.

Upcoming changes:
* User documentation, including an outline of what the tool looks for/doesn't look for.
* Release notes.
* Additional bug fixes.
* Expand the "Report" from 2 categories to 5 (Fatal, Error, Warning, Informational, Debug)

Areas for discussion and opportunities for contribution:
* A test framework for running unit tests and smoke tests.
* Simple test files for smoke tests.
* Issue reports for current problems.

Of course this is all just from my perspective, to really track what's going on and to participate in the discussion, head on over to the discussion pages.