[WIP] output metadata in EPUB#1948
Conversation
|
References for improvements:
|
|
Note: many readers (e.g. Apple Books) are not able to deal with multiple As far as I can tell, that's the only critical piece of metadata that needs special handling. The rest (accepted date, doi, pii, keywords, etc) maps quite naturally to the spec. |
7a63587 to
9ff4dd1
Compare
|
I have mapped all front matter bits to the closest metadata counterparts for EPUB, and dropped the few that don't match anything in the EPUB spec (some dates). Assuming the mapping is reasonable, the remaining issues are:
PS: I think the code is quite verbose to generate the metadata, and XSLT feels like a better fit in this case. Except one would have to translate |
|
Actually, that was my first impression: that this was legitimately in the realm of XSLT (which is usually what you like :> ). Most of |
Cool! Ok, I can do that. I am just struggling with the best location. Could we e.g. have a special mode in
It can be exposed to XSLT via |
|
If #1951 is good (or can be made good for merge), then <exsl:document href="OPS/content.opf">
<package unique-identifier="pub-id" version="3.0">
<xsl:apply-templates mode="manifest" />
</package>
</exsl:document>in LaTeXML-epub3.xsl can create the package document. Then Epub.pm can fill out content.opf with manifest and spine. @brucemiller do you like this approach? |
That is terrible news @xworld21 . The one advantage of the Dublin Core metadata was supposed to be its simple canonical approach to separating the fields. What you are instead describing is similar to the chaos of using a single The epub spec is thankfully quite clear that each dc:creator element holds a single author, as you say. Could you share a link with more information on the situation with the Apple Books reader (or others) that do not implement this correctly? I could at least try to send them a comment encouraging them to follow the spec closer. |
It seems like the issue goes back to at least 2013:
Just for fun, I just uploaded a mock EPUB on the Apple Store with two primary authors (using Pages), and only the resulting EPUB has only one So indeed we should keep separate authors, and let the readers deal with them... unfortunately the spec only says that reading systems "should" display all authors so results won't be consistent. |
I wanted to understand CrossRef, Scan, etc, so I tried to fix #1947. It should be a reasonable start, except for that ugly
CrossRef::getTextContent.