So how many fallback methods is too many fallback methods? Or is there such a thing?
EPUB 3 certainly has its share. There are fallbacks for items in the spine, content switching fallbacks at the markup level, element intrinsic fallbacks, manifest fallbacks for content elements, and even binding of media types to scripted fallbacks (before reaching intrinsic fallbacks!).
Sometimes the number of them is directed at compliance with EPUB 2 content, knowing that there would be a transition phase, but looking at each of the methods none is actually specific to backwards compatibility. And remove any of them and you lose some predictability of rendering.
This post isn’t going to be a how-to guide to fallbacks. You can read the details of each in the specs, and there’s an explanation of them in the best practices book. I’m instead going to look at the role fallbacks play and see what patterns arise.
Continue Reading Fallbacks, fallbacks, fallbacks
Once more unto the breach, dear friends, once more… I promise only once more!
Okay, so I’m trying to steel myself up to write the second half of the CFI post I swore to myself I’d come back to after the first part. If I don’t get this done by year end, it may never see the light of day.
The assumption at this point is that you understand the basic referencing mechanism in play, as I’m only going to look this time at the mechanisms that exist having reached your destination. If you don’t have the foggiest what all the slashes and even and odd numbers mean, have another go at the first part.
Continue Reading Navigating EPUB CFIs – Part 2
Okay, so I’ve been working at the problem of how to express complex schema.org types in EPUB over the holidays as part of putting together an integration guide for the LRMI and accessibility properties, so figured I’d share a few discoveries.
Continue Reading schema.org revisited
If you’re reading this post, you probably already know that polyglot HTML5 is markup that can be rendered both as HTML and as XML serialized XHTML without breakage. It’s not something that’s necessary to do in EPUB 3, since the format requires the handling of content as XHTML, but if you’re planning to use your content in a general web context it’s worth knowing about.
How to make EPUB content compatible with browser rendering as HTML seems to comes up enough that I thought it would be interesting to detail. What follows is a condensed list of common issues, but for all the details the W3C maintains a polyglot markup document that should be referenced, and the WHATWG maintains similar information in its HTML vs. XHTML wiki page.
Continue Reading Polyglot EPUB?
One of the cool new additions to EPUB 3 is the ability to include schema.org metadata. Although, in truth, it’s actually two new additions in one… or is that one new addition in two?
The obvious way to include schema.org metadata is in XHTML content documents now that both RDFa and microdata attributes are in the soon-to-be-final 3.0.1 update. If you’re wondering why you would want to do this, think about your book being opened up to indexing by a search engine. Rich metadata in the source sure isn’t going to harm your chances of improving your discoverability.
The less obvious place where schema.org properties can be used is in the package document metadata. The 3.0.1 revision saw the prefix ‘schema:’ reserved for adding this metadata, meaning you don’t have to declare it in an epub:prefix attribute every time you want to use it.
Continue Reading What’s in a schema.org
If you don’t follow IDPF specification development closely — I can forgive you if you don’t, though I can’t imagine why not — a new baby is on its way: indexes. The first working draft is now available on the IDPF site, and, all going well, it will become a recommendation probably around the same time as the 3.0.1 revision specifications.
I’m not going to write about the indexes spec today, though; well, at least I’ll be trying not to. More on my mind is the general misunderstanding of indexing in a digital world, one where engineers equate an art with a simple science. Indexing is not just keyword listing, after all, despite that being a pervasive belief in the ebook world. Re-read that last sentence a few times before going on, if you need. It’s important to get.
Continue Reading The Art of Indexing
One of the late additions to the EPUB 3.0.1 revision was the very newly minted
aria-describedat attribute. As you might guess from the title of this post, while it’s technically available now, using it may not have the desired effect for the obvious reason that it’s going to take time before it finds support in reading systems.
Continue Reading Not Quite Ready for Prime Time: aria-describedat
I saw yet another assertion today that publishing will never need multimedia or interactivity (as though such things are even new to publishing). As always, I’m left puzzling: a) why do people feel the need to prognosticate what everyone needs, and b) what is so dangerous about the changing format of reading material that causes such insecurity?
Continue Reading Tilting at Windmills
I was motivated to figure out if I could add EPUB 3.0 validation to a program I’d written in C#, so did some tinkering over the weekend to see what I could discover. I thought I’d jot down a few notes about getting epubcheck to work as a library inside of a C# program, in case it’s of any use to anyone thinking their only option is to shell out to the command line.
Continue Reading Epubcheck 3.0 for .Net
I’ve been porting over the content I used to have on the cdata site today, so for a taste of programming (which it seems like I rarely get to do anymore) I made the XSLT style sheet I wrote ages ago to convert an EPUB 3 navigation document into an NCX into a live form.
Feel free to use it, but I guarantee nothing…
It’s also reachable under the Odds ‘n Ends section.