EPUBCheck HTM-003 : entité externe déclarée
Mis à jour :
EPUBCheck HTM-003 est un message d'erreur : “External entities are not allowed in EPUB v3 documents. External entity declaration found: ….” Un document EPUB 3 déclare une entité externe, ce que EPUB ne permet pas. Les entités externes extraient du texte d'un autre fichier via le DOCTYPE, et les applications de lecture ne les résolvent pas, donc le texte manquerait.
Le message officiel
External entities are not allowed in EPUB v3 documents. External entity declaration found: %1$s.
- Gravité par défaut
- Erreur. Le EPUB enfreint une règle de la spécification et est invalide. Les magasins et l'envoi à Kindle peuvent le rejeter, et EPUBCheck sort avec le statut 1.
- version EPUBCheck
- 5.4.0
%1$s, %2$s… sont remplis avec le fichier, la valeur ou l'élément EPUBCheck trouvé.
Causes typiques
- Un DOCTYPE avec un sous-ensemble interne (la partie entre crochets) qui déclare des entités chargées à partir d'un fichier externe.
- XML exporté d'un système d'édition qui a utilisé des fichiers d'entités pour le texte partagé tel que le titre du livre.
Comment le corriger
- Ouvrez le fichier EPUBCheck (le message indique le chemin, la ligne et la colonne) dans un éditeur de texte ou EPUB tel que Sigil, ou décompressez le EPUB et ouvrez-le là.
- Supprimer les déclarations d'entités du DOCTYPE ; dans les chapitres XHTML, le DOCTYPE doit être juste
<!DOCTYPE html>. - Remplacez chaque utilisation de l'entité par le texte réel, ou par une référence de caractère numérique telle que
 lorsque cela représentait un seul caractère. - Reconstruire le EPUB et exécuter EPUBCheck à nouveau pour confirmer que le message a disparu.
Quand ce n'est pas ça
Si une entité telle que est utilisée sans être déclarée du tout, c'est HTM-011, pas HTM-003.
Termes utilisés ici
Autres messages HTM
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.
Sources
Texte et gravité du message de EPUBCheck 5.4.0 (W3C, BSD-3-Clause). Explication par EpubCC.