epubcheck icon indicating copy to clipboard operation
epubcheck copied to clipboard

Is navigation to data URLs allowed?

Open xworld21 opened this issue 4 years ago • 2 comments
trafficstars

I have noticed that if you write an <a href="data:application/xhtml+xml;..."> link inside an EPUB, it will pass epubcheck but it will break quite a lot of readers. In the case of Apple Books, you will not be able to navigate back unless you trigger a relayout of the content.

I am trying to understand if this is a bug in the readers, a behaviour out of spec, or just a grey area. I gather that data URLs used in this way are implicitly disallowed by the spec, because you can't point to them in the manifest or in the table of contents. Can somebody please clarify? If this is non-compliant behaviour, then it should be checked by epubcheck, I suppose.

For context, LaTeXML produces EPUBs snippets of code embedded into data URLs, causing the problems I just mentioned.

Minimal example attached.

xworld21 avatar Mar 06 '21 15:03 xworld21

Thanks for the report, good question! As far as I can see this is allowed by the spec, but I may be wrong. What do you think @mattgarrish?

In any case, this issue may be better discussed in w3c/epub-specs.

rdeltour avatar Mar 09 '21 07:03 rdeltour

Wouldn't this have to be an error because you can only navigate to publication resources that are listed in the spine (and by extension the manifest)?

The same applies to data URLs for embedding content. They also run afoul of publication resources having to be listed in the manifest.

We could certainly make this clearer in the spec, though.

mattgarrish avatar Mar 09 '21 12:03 mattgarrish

This should be checked since #1412, but adding to the v5.0.0-rc milestone to double check.

rdeltour avatar Dec 08 '22 10:12 rdeltour

Closing. This is now disallowed and reported by EPUBCheck.

rdeltour avatar Dec 15 '22 08:12 rdeltour