Przejdź do treści
EPUBCheck · XHTML dokumenty treści

EPUBCheck HTM-003: zadeklarowany zewnętrzny byt

Zaktualizowane:

EPUBCheck HTM-003 to komunikat o błędzie: „External entities are not allowed in EPUB v3 documents. External entity declaration found: ….” Dokument EPUB 3 deklaruje zewnętrzny byt, co EPUB nie pozwala. Zewnętrzne byty pobierają tekst z innego pliku przez DOCTYPE, a aplikacje do czytania ich nie rozwiązują, więc tekst byłby niedostępny.

Oficjalna wiadomość

External entities are not allowed in EPUB v3 documents. External entity declaration found: %1$s.

Domyślna powaga
Błąd. EPUB łamie zasady specyfikacji i jest nieprawidłowy. Sklepy i Wysłanie do Kindle mogą go odrzucić, a EPUBCheck kończy działanie ze statusem 1.
Wersja EPUBCheck
5.4.0

%1$s, %2$s… wypełnione są plikiem, wartością lub elementem EPUBCheck znalezionym.

Typowe przyczyny

  • DOCTYPE z wewnętrznym podzbiorem (część w nawiasach kwadratowych), który deklaruje byty ładowane z zewnętrznego pliku.
  • XML wyeksportowane z systemu publikacji, który używał plików encji dla wspólnego tekstu, takiego jak tytuł książki.

Jak to naprawić

  1. Otwórz plik EPUBCheck (komunikat podaje ścieżkę, linię i kolumnę) w edytorze tekstu lub EPUB, takim jak Sigil, lub wypakuj EPUB i otwórz go tam.
  2. Usuń deklaracje encji z DOCTYPE; w rozdziałach XHTML DOCTYPE powinien być tylko <!DOCTYPE html>.
  3. Zastąp każde użycie encji prawdziwym tekstem lub numerycznym odniesieniem do znaku, takim jak &#160;, gdy reprezentował pojedynczy znak.
  4. Odbuduj EPUB i uruchom ponownie EPUBCheck, aby potwierdzić, że komunikat zniknął.

Kiedy to nie to

Jeśli encja taka jak &nbsp; jest używana bez uprzedniego zadeklarowania, to jest HTM-011, a nie HTM-003.

Terminy używane tutaj

Inne komunikaty HTM

  • HTM-004 Irregular DOCTYPE: found "…", expected "…".
  • HTM-001 Any publication resource that is an XML-based media type must be a valid XML 1.0 document. XML version found: ….
  • HTM-007 Empty or whitespace-only value of attribute ssml:ph.
  • HTM-009 The DOCTYPE provided is obsolete or irregular and can be removed.
  • HTM-010 Namespace "…" is unusual for the prefix "epub".
  • HTM-011 Entity is undeclared.

Źródła

Tekst wiadomości i poważność z EPUBCheck 5.4.0 (W3C, BSD-3-Clause). Wyjaśnienie przez EpubCC.

FAQ

Co oznacza EPUBCheck HTM-003?

EPUBCheck HTM-003 to komunikat o błędzie: „External entities are not allowed in EPUB v3 documents. External entity declaration found: ….” Dokument EPUB 3 deklaruje zewnętrzny byt, co EPUB nie pozwala. Zewnętrzne byty pobierają tekst z innego pliku przez DOCTYPE, a aplikacje do czytania ich nie rozwiązują, więc tekst byłby niedostępny.

Czy HTM-003 to błąd?

HTM-003 jest zgłaszany jako błąd domyślnie. EPUB łamie zasady specyfikacji i jest nieprawidłowe. Sklepy i Wyślij do Kindle mogą je odrzucić, a EPUBCheck kończy z kodem stanu 1.

PDF do EPUB narzędzi

Każde narzędzie używa tej samej maszyny. Do 3 książek dziennie jest za darmo.

Zobacz wszystkie narzędzia