본문 바로가기

3.1.2 부분 언어 표시

(Level AA)

목표
보조 기술은 페이지에서 사용되는 언어를 식별할 수 있다.
할 일
다른 언어로 된 단어가 있을 경우 표시한다.
중요성
보조 기술을 사용하는 사람들은 올바른 언어로 정보를 얻는다.

성공 기준(SC)

콘텐츠의 각 문단 또는 구절의 언어프로그래밍 방식으로 판별될 수 있어야 한다. 다만, 고유명사, 기술 용어, 언어를 특정할 수 없는 단어, 그리고 바로 주변 문맥에서 이미 통용되는 단어나 구절은 제외한다.

이 성공 기준의 목적은 사용자 에이전트가 여러 언어의 구절, 문단, 그리고 경우에 따라 단어를 올바르게 처리하여 표시할 수 있도록 하는 것이다. 이를 통해 사용자 에이전트와 보조 기술은 해당 언어의 표현 및 발음 규칙에 따라 콘텐츠를 제공할 수 있다. 이는 그래픽 브라우저뿐만 아니라 스크린 리더, 점자 디스플레이 및 기타 음성 브라우저에도 적용된다.

보조 기술과 사용자 에이전트는 각 텍스트 구간의 언어가 식별되면 텍스트를 더욱 정확하게 렌더링 할 수 있다. 스크린 리더는 해당 언어의 발음 규칙을 적용하여 텍스트를 읽을 수 있으며, 시각적 브라우저는 문자와 스크립트를 해당 언어에 적합한 방식으로 표시할 수 있다. 이는 특히 왼쪽에서 오른쪽으로 읽는 언어와 오른쪽에서 왼쪽으로 읽는 언어를 전환하는 경우나, 서로 다른 알파벳을 사용하는 언어로 텍스트가 표시될 때 중요하다. 웹 페이지에 사용된 모든 언어를 이해하는 장애인 사용자는 각 구절이 해당 언어에 맞게 렌더링 될 때 콘텐츠를 더욱 쉽게 이해할 수 있다.

텍스트의 구절이나 문단에 다른 언어가 지정되지 않은 경우, 해당 텍스트의 언어는 웹 페이지의 기본 언어이다(성공 기준 3.1.1 페이지 언어 표시 참조). 따라서 단일 언어로 작성된 문서에서는 모든 콘텐츠의 언어를 프로그래밍 방식으로 판별할 수 있다.

참조

특정 상황이나 동작 모드에서는 스크린 리더와 같은 보조 기술이 요소를 계산된 접근 가능한 이름을 기준으로 안내할 수 있다. 예를 들어, 현재 대부분의 스크린 리더에서 페이지의 링크 목록을 별도로 조회할 때 이러한 방식이 사용된다.

접근 가능한 이름은 구조나 추가 정보를 포함하지 않는 “평면적인” 문자열이다. 따라서 코드나 마크업에서 언어 변경이 올바르게 지정되어 있더라도, 이러한 정보는 접근 가능한 이름에 반영되지 않아 보조 기술에 전달되지 않는다. 그 결과, 보조 기술은 지정된 언어에 맞게 발음 규칙이나 음성·언어 팩을 전환하지 못할 수 있다. 간단한 경우에는 lang 속성을 자식 요소가 아닌 해당 요소 자체에 지정하는 등의 우회 방법이 가능할 수 있지만, 이러한 방법도 모든 사용자 에이전트와 보조 기술의 조합에서 항상 동작하는 것은 아니다.

이러한 문제는 사용자 에이전트와 보조 기술의 한계에서 비롯된 것으로, 콘텐츠 작성자가 제어할 수 있는 범위를 벗어난다. 따라서 이러한 이유만으로는 이 성공 기준을 위반한 것으로 판단하지 않는다. 이 성공 기준을 평가할 때에는 보조 기술이 실제로 읽어 주는 결과만으로 판단해서는 안 되며, 코드나 마크업에서 언어의 변경이 올바르게 식별되어 있는지를 함께 확인해야 한다.

언어마다 고유명사의 개념과 정의는 다를 수 있지만, 일반적으로는 특정 대상을 명확하게 식별하기 위해 사용하는 이름을 의미한다. 여기에는 제품의 브랜드명이나 특정 인물 또는 장소의 이름 등이 포함되며, 이에 한정되지는 않는다. 고유명사는 일반적으로 번역하지 않고 여러 언어에서 그대로 사용된다(원래의 문자 체계와 다른 문자 체계를 사용하는 경우에는 음역될 수 있다). 따라서 고유명사에는 일반적으로 명시적인 언어 변경을 필요로 하지 않는다. 간단한 예로, 영어로 작성된 철학 문서에서 “Albert Camus(알베르 카뮈)“라는 이름은 프랑스어임을 명시적으로 표시할 필요가 없다.

한 언어의 개별 단어나 구는 다른 언어의 일부로 자리 잡을 수 있다. 예를 들어, “rendezvous”는 프랑스어 단어로 영어에 차용되어 영어 사전에 등재되어 있으며 영어 스크린 리더에서 올바르게 발음된다. 따라서 영어 문서에 “rendezvous”라는 단어가 포함되어 있더라도 해당 단어의 언어를 프랑스어로 별도로 명시하지 않아도 이 성공 기준을 충족한다.

텍스트의 언어가 단어 하나에서만 변하는 것처럼 보이는 경우, 그 단어는 이미 주변 텍스트의 언어에 편입된 외래어인 경우가 많다. 이러한 현상은 일부 언어에서 매우 흔하므로, 명확하게 언어가 변경되었음을 의도한 경우가 아니라면 개별 단어는 주변 텍스트와 동일한 언어의 일부로 간주해야 한다.

언어 변경을 의도했는지 확신하기 어렵다면, 해당 단어가 바로 주변 텍스트의 언어에서도(억양이나 강세의 차이를 제외하고) 동일하게 발음되는지를 고려해 볼 수 있다.

참조

스크린 리더와 음성 합성기의 발음 품질과 정확성은 크게 달라질 수 있다.

“rendezvous”와 같이 프랑스어에서 차용된 단어는 영어 문맥에서 이해 가능한 수준으로 발음될 수도 있지만, 다른 단어는 그렇지 않을 수 있다. 이러한 현상은 특히 고유명사에서 더욱 두드러질 수 있다.

이 성공 기준을 충족하기 위해 규범적으로 요구되는 사항은 아니지만, 이러한 단어의 원래 언어를 프로그램밍 방식으로 표시하는 것은 정확한 발음을 유도하고 이해도를 높이기 위한 모범 사례이다. 예를 들어 HTML에서는 lang 속성을 사용할 수 있다.

It can be a <span lang="fr">faux pas</span> to omit the <code>lang</code> attribute.

페이지의 언어와 다른 문자 체계(또는 음역)를 사용하는 경우에는 원래 언어를 명시적으로 지정하는 것이 정확한 발음에 특히 도움이 된다.

Good <span lang="zh-Latn-pinyin">feng shui</span> begins with good markup.

대부분의 전문 분야에서는 외국어에서 유래한 기술 용어를 자주 사용한다. 이러한 용어는 일반적으로 모든 언어로 번역되지 않는다. 또한 기술 용어의 보편성은 전문가 간의 의사소통을 용이하게 한다.

기술 용어의 일반적인 예로는 Homo sapiens, Alpha Centauri, hertz, habeas corpus 등이 있다.

언어 변경을 식별하는 것은 다음과 같은 여러 이유에서 중요하다.

  • 점자 번역 소프트웨어는 언어 변화를 인식할 수 있도록 한다. 예를 들어 악센트가 있는 문자에 대한 제어 코드를 대체하거나 2급 점자 축약어의 잘못된 생성을 방지하는 데 필요한 제어 코드를 삽입할 수 있다.
  • 여러 언어를 지원하는 음성 합성기는 해당 언어의 억양과 올바른 발음으로 텍스트를 읽을 수 있다. 언어 변경이 표시되지 않으면 음성 합성기는 기본 언어의 발음 규칙에 따라 단어를 읽으려고 한다. 예를 들어, 자동차를 의미하는 프랑스어 단어 “voiture”는 기본 언어가 영어인 음성 합성기에서는 “voyture”와 같이 발음될 수 있다.
  • 언어 변경을 표시하면 향후 기술 발전에도 도움이 될 수 있다. 예를 들어, 여러 언어를 직접 번역할 수 없는 사용자는 기계를 이용해 익숙하지 않은 언어를 번역할 수 있게 될 것이다.
  • 언어 변경을 표시하면 사용자 에이전트가 사전을 이용하여 단어의 의미를 제공하는 데에도 도움이 될 수 있다.

이 성공 기준은 다음 사용자에게 도움이 된다.

  • 스크린 리더 또는 텍스트를 합성 음성으로 변환하는 기타 기술을 사용하는 사람
  • 문자와 알파벳을 인식하고, 단어를 해독하며, 단어와 구를 이해하는 등, 문서를 유창하고 정확하게 읽는 데 어려움을 겪는 사람
  • 텍스트 음성 변환 소프트웨어를 사용하는 일부 인지, 언어 및 학습 장애가 있는 사람
  • 동기화된 미디어 콘텐츠의 음성에서 언어가 변경되는 부분을 자막을 통해 인식하는 사람

“그는 DDR(독일 민주 공화국)이 단지 ‘Treppenwitz der Weltgeschichte(세계사적 장난)‘에 불과하다고 주장했다”라는 문장에서, 독일어 구절인 ‘Treppenwitz der Weltgeschichte’는 독일어로 표시되어 있다. 마크업 언어에 따라 영어는 지정된 부분을 제외한 전체 문서의 언어로 표시되거나, 문단 수준에서 영어로 표시될 수 있다. 스크린 리더가 독일어 구절을 만나면, 해당 단어를 올바르게 발음하기 위해 영어에서 독일어로 발음 규칙을 전환한다.

HTML 웹 페이지에는 다른 언어(예: Deutsch, Français, Nederlands, Catalan 등)의 페이지 버전에 대한 링크가 포함되어 있다. 각 링크의 텍스트는 해당 언어의 언어 이름이다. 각 링크의 언어는 lang 속성을 통해 표시된다.

<ul>
<li><a href="..." lang="de">Deutsch</a></li>
<li><a href="..." lang="it">Italiano</a></li>
<li><a href="..." lang="fr">Français</a></li>
...
<li><a href="..." lang="zh-hant">繁體中文</a></li>
</ul>

프랑스어 문장에서 사용된 “podcast”

Section titled “프랑스어 문장에서 사용된 “podcast””

다음 문장에서 “podcast”는 바로 주변 텍스트에서 일반적으로 사용되는 표현의 일부이므로 언어 변경을 표시할 필요가 없다. “À l’occasion de l’exposition “Energie éternelle. 1500 ans d’art indien”, le Palais des Beaux-Arts de Bruxelles a lancé son premier podcast. Vous pouvez télécharger ce podcast au format M4A et MP3.

요소의 콘텐츠와 속성 값이 서로 다른 언어인 경우

Section titled “요소의 콘텐츠와 속성 값이 서로 다른 언어인 경우”

이 예에서는 페이지의 기본 언어가 영어라고 가정한다. 링크의 title 속성은 영어로 작성되어 있지만, Español이라는 단어를 포함하는 중첩된 span 요소에는 lang="es" 속성이 지정되어 있다.

<a title="Spanish" href="qa-html-language-declarations-es.html"><span lang="es">Español</span></a>

자료는 정보 제공 목적으로만 제공되며 보증을 암시하지 않는다.

이 섹션의 각 번호가 매겨진 항목은 접근성 지침 실무 그룹이 이 성공 기준을 충족하기에 충분하다고 판단하는 기법 또는 기법의 조합을 나타낸다. 기법은 기준의 최소 요구 사항을 넘어설 수 있다. 이러한 기법에서 포괄하지 않은 기준 충족의 다른 방법이 있을 수 있다. 다른 기법 사용에 대한 정보는 WCAG 성공 기준에 대한 기법 이해, 특히 “기타 기법” 섹션을 참조하라.

다음은 이 성공 기준의 특정 측면에 대한 점검 규칙이다. WCAG 준수 여부를 확인하기 위해 이러한 특정 점검 규칙을 사용할 필요는 없지만 이것은 정의되고 승인된 검사 방법이다. 점검 규칙 사용에 대한 자세한 내용은 WCAG 성공 기준에 대한 점검 규칙 이해를 참고하라.

의견 남기기