|
3Doitsu — you were right, and it is fixed in 0.8.1 (out now).
epubcheck's content model for hgroup is exactly one heading, interleaved with any number of <p> elements. Mine was "one or more headings, no paragraphs", which rejected the shape you posted — a title with its subtitle as a paragraph, which is the ordinary modern way to write it.
There is a second half to that fix, and I would rather you hear it from me than meet it in your own book. My old definition accepted this:
<hgroup><h1>Frankenstein</h1><h2>Or: The Modern Prometheus</h2></hgroup>
That was the canonical hgroup until HTML dropped it in 2022 — the subtitle is a <p> now, not a second heading. epubcheck's schema (hgroup.inner, in sectional.rnc) admits exactly one h1–h6, so it should flag the two-heading form; I read that in their source rather than running it, so if you find epubcheck accepts it in practice, please say so and I will look again.
So from 0.8.1, books written to the old model will start drawing RSC-005 here where they did not before. I decided to match epubcheck rather than stay quiet about it. A validator that hides a disagreement with the reference implementation is not much use, and nothing epubveri does can repair the markup either way — that belongs to whatever produced the book.
No corpus fixture covers hgroup in either direction, so their schema was the only evidence available. That is the same footing as the EPUB 2 false positives cleared out earlier this month, and it is why reports like yours matter more here than the test suite does: the suite was green through every one of those bugs.
JSWolf — "2" and "2.0" are just two spellings of the same thing in that flag, because epubcheck accepts both and I wanted a copied command line to behave identically. The OPF version attribute for EPUB 2 is "2.0"; I am not implying there is some other EPUB 2.x out there.
DNSB — your six books are the case the flag is actually for. If the OPF says version="2.0" but the contents are EPUB 3, `epubveri -v 3.0 -i book.epub` checks it against EPUB 3 regardless of what the package document claims, and reports PKG-001 to say the two disagree. The same works the other way with -v 2.0. It will not tell you which of the two the book was meant to be, but it will tell you which one it actually satisfies.
|