EPUBCheck HTM-003: extern entitet deklarerad
Uppdaterad:
EPUBCheck HTM-003 är ett felmeddelande: "External entities are not allowed in EPUB v3 documents. External entity declaration found: …." Ett EPUB 3 dokument deklarerar en extern entitet, vilket EPUB inte tillåter. Externa entiteter drar text från en annan fil genom DOCTYPE, och läsappar löser inte dem, så texten skulle saknas.
Det officiella meddelandet
External entities are not allowed in EPUB v3 documents. External entity declaration found: %1$s.
- Standardsvårighetsgrad
- Fel. EPUB bryter mot en regel i specifikationen och är ogiltig. Butiker och Skicka till Kindle kan avvisa den, och EPUBCheck avslutas med status 1.
- EPUBCheck version
- 5.4.0
%1$s, %2$s… fylls med filen, värdet eller elementet EPUBCheck som hittades.
Typiska orsaker
- En DOCTYPE med ett internt delmängd (delen i fyrkantiga parenteser) som deklarerar entiteter som laddas från en extern fil.
- XML exporterad från ett publiceringssystem som använde enhetsfiler för delad text såsom bokens titel.
Hur man åtgärdar det
- Öppna filen EPUBCheck-namn (meddelandet ger sökvägen, raden och kolumnen) i en text- eller EPUB-redigerare som Sigil, eller packa upp EPUB och öppna den där.
- Ta bort entitetsdeklarationerna från DOCTYPE; i XHTML kapitel bör DOCTYPE vara endast
<!DOCTYPE html>. - Ersätt varje användning av entiteten med den verkliga texten, eller med en numerisk teckenreferens som
 när den stod för ett enda tecken. - Bygg om EPUB och kör EPUBCheck igen för att bekräfta att meddelandet har försvunnit.
När det inte är detta
Om en enhet såsom används utan att vara deklarerad alls, är det HTM-011, inte HTM-003.
Villkor som används här
Andra HTM meddelanden
HTM-004Irregular DOCTYPE: found "…", expected "…".HTM-001Any publication resource that is an XML-based media type must be a valid XML 1.0 document. XML version found: ….HTM-007Empty or whitespace-only value of attribute ssml:ph.HTM-009The DOCTYPE provided is obsolete or irregular and can be removed.HTM-010Namespace "…" is unusual for the prefix "epub".HTM-011Entity is undeclared.
Källor
Meddelandetext och allvarlighetsgrad från EPUBCheck 5.4.0 (W3C, BSD-3-Clause). Förklaring av EpubCC.