EPUB 제작의 기초/EPUBCheck 오류
MathML에는 "alttext" 속성 또는 "annotation-xml" 자식 요소가 있어야 합니다.
내.맘.대.로
2025. 9. 23. 09:27
MathML should either have an "alttext" attribute or "annotation-xml" child element.
이 오류는 책에 포함된 수학 수식(MathML)에 대한 설명이 빠져있다는 의미입니다. ♿
수식은 시각적으로는 보이지만, 화면 낭독기(Screen Reader)와 같은 보조 기술은 수식을 이미지처럼 인식하여 내용을 읽어줄 수 없습니다. 따라서 시각 장애가 있는 독자를 위해 수식이 무엇을 의미하는지 알려주는 대체 텍스트를 반드시 제공해야 합니다.
해결 방법은 오류 메시지에 나온 대로 두 가지가 있습니다.
## 해결 방법 1: alttext 속성 사용 (쉬운 방법)
가장 간단하고 일반적인 해결책은 <math> 태그에 직접 alttext 속성을 추가하여 수식에 대한 간단한 설명을 제공하는 것입니다.
- 오류 예시 (수정 전):
-
XML
<math> <mrow> <mi>a</mi> <msup> <mi>x</mi> <mn>2</mn> </msup> <mo>+</mo> <mi>b</mi> <mi>x</mi> <mo>+</mo> <mi>c</mi> </mrow> </math>
- 수정 예시 (수정 후): ✅
-
XML
<math alttext="ax 제곱 더하기 bx 더하기 c"> <mrow> <mi>a</mi> <msup> <mi>x</mi> <mn>2</mn> </msup> <mo>+</mo> <mi>b</mi> <mi>x</mi> <mo>+</mo> <mi>c</mi> </mrow> </math>
## 해결 방법 2: annotation-xml 요소 사용 (고급 방법)
더 자세하거나 구조적인 설명이 필요할 때 사용하는 방법입니다. 기존의 <math> 태그를 <semantics> 태그로 감싸고, 그 안에 <annotation-xml> 요소를 추가하여 설명을 넣습니다.
- 수정 예시: ✅
-
XML
<math> <semantics> <mrow> <mi>E</mi> <mo>=</mo> <mi>m</mi> <msup> <mi>c</mi> <mn>2</mn> </msup> </mrow> <annotation-xml encoding="application/mathml-alternative"> <mrow> <mtext>에너지(E)는 질량(m) 곱하기 빛의 속도(c)의 제곱과 같다.</mtext> </mrow> </annotation-xml> </semantics> </math>
⭐ 추천: 대부분의 경우, alttext 속성을 사용하는 첫 번째 방법으로 충분히 문제를 해결할 수 있고 훨씬 간편합니다.
반응형