w3c / epubcheck

The conformance checker for EPUB publications
https://www.w3.org/publishing/epubcheck/
BSD 3-Clause "New" or "Revised" License
1.64k stars 402 forks source link

EPUBCheck not reporting missing the # in refines="ID" in opf #1075

Open garconvacher opened 5 years ago

garconvacher commented 5 years ago

Hi,

I've got an EPUB (EPUBchecked 4.2.2) works fine in most of reading system but Lisa for iOS does not want to import it ("unknown file format"). I've found the problem in the opf with this markup: <meta scheme="marc:relators" property="role" refines="ID">pbd</meta>

I remove all the # in refines="#id" in the opf, EPUBCheck only report an error: "Property 'collection-type' must refine a 'belongs-to-collection' property.'

rdeltour commented 5 years ago

Thanks for the report, I’ll try to repro.

rdeltour commented 1 year ago

Tentatively adding this to v5.0.0-rc

rdeltour commented 1 year ago

I could not reproduce the issue, with the following package document:

<?xml version="1.0" encoding="UTF-8"?>
<package xmlns="http://www.idpf.org/2007/opf" version="3.0" xml:lang="en" unique-identifier="id">
  <metadata xmlns:dc="http://purl.org/dc/elements/1.1/">
    <dc:title id="title">Minimal EPUB 3.0</dc:title>
    <dc:language>en</dc:language>
    <dc:identifier id="id">NOID</dc:identifier>
    <dc:creator id="creator">name</dc:creator>
    <meta property="dcterms:modified">2017-06-14T00:00:01Z</meta>
    <meta scheme="marc:relators" property="role" refines="creator">pbd</meta>
  </metadata>
  <manifest>
    <item id="content_001" href="content_001.xhtml" media-type="application/xhtml+xml"/>
    <item id="nav" href="nav.xhtml" media-type="application/xhtml+xml" properties="nav"/>
  </manifest>
  <spine>
    <itemref idref="content_001"/>
  </spine>
</package>

EPUBCheck did report RSC-005:

ERROR RSC-005: Error while parsing file: Property "role" must refine a "creator", "contributor", or "publisher" property.

Maybe it is no longer an issue? I'm removing it from the v5.0.0 milestone, but keeping it open for confirmation.