EPUB 제작의 기초/EPUBCheck 오류

사용자 정의 속성 네임스페이스("%1$s")는 도메인에 문자열 "%2$s"를 포함해서는 안 됩니다.

내.맘.대.로 2025. 10. 2. 09:25

Custom attribute namespace ("%1$s") must not include the string "%2$s" in its domain.

 

이 오류는 EPUB에서 사용자 정의 속성을 만들기 위해 선언한 네임스페이스(namespace) URI에 문제가 있음을 의미하는 고급 오류입니다.

쉽게 말해, 자신만의 특별한 속성을 만들기 위해 '신분증'과 같은 고유 주소(네임스페이스 URI)를 만들었는데, 그 주소의 도메인 이름에 EPUB이나 웹 표준을 관장하는 공식 기관의 이름(예: idpf.org, w3.org)을 무단으로 사용했다는 뜻입니다.

자신만의 회사를 설립하면서 '삼성전자 공식 파트너'나 '구글 버거 가게'처럼 다른 공식 기관의 이름을 회사 이름에 넣어 사람들을 혼란스럽게 해서는 안 되는 것과 같은 이치입니다. 🏢


## 규칙

사용자가 직접 만드는 네임스페이스 URI의 도메인 이름에는 EPUB이나 관련 표준 기관의 소유로 오해받을 수 있는 다음과 같은 예약된 문자열을 포함할 수 없습니다.

  • idpf.org
  • w3.org
  • daisy.org
  • 등 기타 공식 기관의 도메인

## 해결 방법

해결책은 자신이 만든 네임스페이스 URI를 공식 기관의 이름이 포함되지 않은, 자신이 제어할 수 있는 고유한 주소로 변경하는 것입니다.

  1. 오류가 발생한 XHTML 파일을 엽니다.
  2. 파일 상단의 <html> 태그에서 사용자가 직접 추가한 네임스페이스 선언(예: xmlns:myprefix="...")을 찾습니다.
  3. 따옴표 안의 잘못된 URI 주소(%1$s)를 자신이 소유한 도메인 주소나, 오해의 소지가 없는 다른 고유한 주소로 변경합니다. (주소가 실제로 인터넷에 존재할 필요는 없으며, 고유 식별자로만 사용됩니다.)

### 수정 예시

  • 수정 전 (오류 예시 - idpf라는 예약어를 사용):
  • XML
     
    <html xmlns="http://www.w3.org/1999/xhtml"
          xmlns:mycorp="http://www.my-idpf-vocab.com/terms/">
    
  • 수정 후 (올바른 코드):
  • XML
     
    <html xmlns="http://www.w3.org/1999/xhtml"
          xmlns:mycorp="http://www.my-ebook-corp.com/terms/">
반응형