[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [O] ePub construction
From: |
Alan L Tyree |
Subject: |
Re: [O] ePub construction |
Date: |
Wed, 14 Dec 2011 14:14:02 +1100 |
On 14/12/11 12:42:38, Nick Dokos wrote:
> Alan L Tyree <address@hidden> wrote:
>
> > G'day,
> >
> > Here are the modifications that I needed to make to the exported
> html
> > file (using the standard exporter) in order to get a valid ePub
> > document. http://threepress.org/document/epub-validate provides an
> > on-line validation service.
> >
> > My document is relatively simple, but does have footnotes,
> citations
>
> > and formatting commands.
> >
> > I will be happy to add a fuller description to worg if someone will
> > point me to some instructions.
> >
> >
> > 1. Make the html file have utf-8 encoding; there are probably
> several
> > ways to do this, but I used the emacs23 menu MULE options on the
> org
>
> > document.
> >
> > 2 Change the language statement by removing the "lang=" attribute:
> >
> > From: <html xmlns="http://www.w3.org/1999/xhtml" lang="en"
> > xml:lang="en">
> >
> > To: <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
> >
> > 3 Change anchor descriptions associated with section headings by
> > removing "name=" entries, for example,
> >
> > From: <a name="sec-1" id="sec-1"></a>
> >
> > To: <a id="sec-1"></a>
> >
> > NOTE: this can now be done by customising org-export-html-headline-
> > anchor-format (Thanks Bastien!!)
> >
> > 4. Change anchor class="footref" by replacing "name=" with "id=".
> For
> > example:
> >
> > from: <a class="footref" name="fnr.2" href="#fn.2">
> >
> > to: <a class="footref" id="fnr.2" href="#fn.2">
> >
> > 5. Change anchor class="footnum" by replacing "name=" with "id=".
> For
> > example:
> >
> > from: <a class="footnum" name="fn.1" href="#fnr.1">1</a>
> >
> > to: <a class="footnum" id="fn.1" href="#fnr.1">1</a>
> >
>
> Interesting - I downloaded the epub validator, ran Calibre on a silly
> little org-produced HTML file and duplicated your "lang" problem.
>
> AFAICT, all of the problems you mention above are legal HTML4, so
> either
> the epub spec (which I have not looked at: do you have a pointer?) is
> made to trip people up by enforcing restrictions that they dreamed
> up,
> or the validator is not quite as smart as it should be.
Yes, the org export file validates at w3c as a valid XHTML1.0 file. The
ePub spec is here: http://idpf.org/epub but I admit fatigue in trying
to wade through it, so I don't know what XHTML1.0 constructions it
objects to. It seems like the kind of document that nobody has ever
read: sort of like EULAs and express warranties.
I just made the changes in response to the validation errors.
>
> Just for kicks, I ran it against the Calibre Quick Start Guide (the
> only
> "real" ebook I had access to) and it gave me an error :-)
>
> ,----
> | Epubcheck Version 3.0b3
> |
> | ERROR: Calibre Quick Start Guide - John
> Schember.epub/OEBPS/content.opf(5,57): attribute "file-as" not
> allowed
> here; expected attribute "id", "opf:file-as", "opf:role" or
> "xml:lang"
> |
> | Check finished with warnings or errors!
> `----
>
> so, presuming that the ebook is "fine", I'm not sure how seriously to
> take the validator.
There is something to that. Calibre explicitly disclaims any intent to
produce an epub file that validates. In fact, the FAQ seems to suggest
that a Calibre produced file is *better* than one that validates:
http://manual.calibre-ebook.com/faq.html#the-epub-i-produced-with-app-is-not-valid
The problem is that some marketing sites require validation, although I
am not sure how much that is enforced.
>
> Nick
>
> PS In case it's not obvious, all I know about ebooks is what is
> contained in this email. Caveat emptor.
Ahhh, what about statutory warranties :-).
Cheers,
Alan
>
--
Alan L Tyree http://www2.austlii.edu.au/~alan
Tel: 04 2748 6206