EPUB 제작의 기초/EPUBCheck 오류

비정상적인 DOCTYPE: 발견된 값은 "%1$s", 필요한 값은 "%2$s"입니다.

내.맘.대.로 2025. 9. 29. 07:36

Irregular DOCTYPE: found "%1$s", expected "%2$s".

 

이 오류는 HTML/XHTML 파일의 가장 첫 부분에 있는 **DOCTYPE(문서 형식 선언)**이 EPUB 버전에 맞지 않게 잘못 작성되었음을 의미합니다.

DOCTYPE은 해당 문서가 어떤 버전의 HTML 규칙을 따라 만들어졌는지 전자책 뷰어에게 알려주는 '설명서'와 같습니다. 보드게임 상자에 "이 게임은 체스 3판 규칙을 따릅니다"라고 적어두는 것과 같죠. ♟️ 만약 규칙 설명서가 잘못되어 있으면, 게임(전자책)이 올바르게 보이지 않을 수 있습니다.

이 오류 메시지는 매우 친절하게도, 잘못된 부분(%1$s)과 올바른 값(%2$s)을 모두 알려줍니다.


## 해결 방법

해결 방법은 간단합니다. 오류 메시지가 알려준 대로 잘못된 DOCTYPE을 올바른 DOCTYPE으로 교체하면 됩니다.

  1. 오류가 발생한 HTML 또는 XHTML 파일을 텍스트 편집기에서 엽니다.
  2. 파일의 가장 윗부분에서 <!DOCTYPE ... > 으로 시작하는 줄을 찾습니다.
  3. 해당 줄 전체를 삭제하고, 오류 메시지의 '필요한 값(%2$s)'에 나온 내용으로 그대로 붙여넣습니다.

### 수정 예시

만약 EPUB 3 파일을 만들면서 실수로 오래된 EPUB 2 형식의 DOCTYPE을 사용했다면 오류가 발생합니다.

  • 수정 전 (오류 예시 - %1$s):
  • XML
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
    
  • 수정 후 (올바른 코드 - %2$s):
  • XML
     
    <!DOCTYPE html>
    

참고: EPUB 버전별 올바른 DOCTYPE

  • EPUB 3 (XHTML5): <!DOCTYPE html>
  • EPUB 2 (XHTML 1.1): http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
반응형