daisy/pipeline

epubcheck notes "ERROR" for rule OPF-093 in generated EPUB3

jbrugge opened this issue · 4 comments

Expected Behavior

When running the dtbook-to-epub3 script on DAISY books that have pagebreaks in them, the EPUB3 result should have an OPF file that passes epubcheck.

Actual Behavior

Running epubcheck against the generated EPUB3 output produces a report noting an issue with a link item in the OPF.
{ "ID": "OPF-093", "severity": "ERROR", "message": "The \"media-type\" attribute is required for linked resources located in the EPUB container", "additionalLocations": 0, "locations": [ { "url": { "opaque": false, "hierarchical": true }, "path": "EPUB/package.opf", "line": 2, "column": 3387, "context": null } ], "suggestion": null },

Steps to Reproduce

The sample book in #699 exhibits this issue, so refer to the EPUB3 output from that.

The epubcheck report was then generated with this:
epubcheck --json Charlottes_Web-epubcheck.json output-dir/Charlotte_s_Web.epub

Details

Since the zedai-mods.xml are not included in the EPUB3 package, it seems like the element should not be in the OPF at all.

Environment

  • Operating system: Linux 64-bit
  • DAISY Pipeline 2 version: 1.14.7
  • Interface: web service API
  • epubcheck : 5.0.1

Logs

epubcheck JSON report

I will need the sample book to further investigate this issue.

@jbrugge Would it be possible to email me the "Charlotte_s_Web.xml" file please?

@jbrugge Could you test this with version >= 1.14.18? When I run EPUBCheck (5.1.0) on the EPUB that you sent me, I don't get the OPF-093 error, but I get another warning:

WARNING(RSC-007w): /Users/bert/Desktop/Charlotte_s_Web.epub/EPUB/package.opf(2,3468): Referenced resource "EPUB/zedai-mods.xml" could not be found in the EPUB.

This is an issue that should have been fixed in 1.14.18 (see daisy/pipeline-modules@efb1b61). I didn't get the DTBook from you so I can't check whether there are any other issues.