EPUB 제작의 기초/EPUBCheck 오류

"%1$s"은(는) 유효한 사용자 정의 데이터 속성이 아닙니다 (하이픈(-) 뒤에 하나 이상의 문자가 있어야 하고, XML과 호환되어야 하며, ASCII 대문자를 포함하지 않아야 합니다).

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

"%1$s" is not a valid custom data attribute (it must have at least one character after the hyphen, be XML-compatible, and not contain ASCII uppercase letters).

 

이 오류는 HTML 태그에 추가한 사용자 정의 data-* 속성의 이름이 정해진 규칙을 따르지 않았을 때 발생합니다.

data-* 속성은 스크립트나 CSS에서 사용하기 위해 요소에 추가적인 정보를 저장하는 유용한 기능이지만, 이름에는 몇 가지 엄격한 규칙이 적용됩니다.

친절하게도 오류 메시지 자체에 그 규칙들이 요약되어 있습니다.


## data-* 속성의 이름 규칙

  1. data- 뒤에 글자가 있어야 합니다. 속성 이름은 반드시 data-로 시작해야 하며, 하이픈(-) 뒤에 최소 한 글자 이상이 와야 합니다. data-만 단독으로 사용할 수는 없습니다.
  2. ASCII 대문자를 사용할 수 없습니다. 속성 이름에는 A부터 Z까지의 대문자를 포함할 수 없습니다. 모든 글자는 소문자여야 합니다.
  3. XML과 호환되어야 합니다. 이름에는 공백이나 대부분의 특수문자(:, @ 등)를 사용할 수 없습니다. **알파벳 소문자, 숫자, 하이픈(-)**만 사용한다고 생각하는 것이 가장 안전합니다.

## 해결 방법

오류 메시지에 나온 잘못된 data-* 속성(%1$s)을 찾아 위의 규칙에 맞게 수정하면 됩니다.

### 수정 예시

잘못된 이름 (오류 발생) 위반한 규칙 올바른 이름 (수정 후)
data-BookID 대문자("B", "ID") 사용 data-book-id
data- 하이픈 뒤 내용 없음 data-info
data-user id 공백 포함 data-user-id
data-section:1 콜론(:) 포함 data-section-1
Sheets로 내보내기
  • 코드 수정 예시:
  • HTML
     
    <div data-chapter-number="3">...</div>
  • HTML
     
    <div data-ChapterNumber="3">...</div>
    
반응형