Según la Wikipedia, la internacionalización es "el proceso de diseñar software de manera tal que pueda adaptarse a diferentes idiomas y regiones sin la necesidad de realizar cambios de ingeniería ni en el código". ¿Qué relación guarda la internacionalización con la accesibilidad web? Está claro que ofrecer un contenido en el idioma preferido del usuario facilita su uso y comprensión para todo el mundo, con o sin discapacidad. ¿Qué dicen las pautas de accesibilidad del WAI respecto al idioma de una página web?
En WCAG 1.0, la pauta 4 Identifique el idioma usado contiene la siguiente explicación y los siguientes puntos de verificación:
Use marcadores que faciliten la pronunciación o interpretación de texto abreviado o extranjero.
Cuando los desarrolladores de contenido especifican los cambios en el idioma de un documento, los sintetizadores de voz y los dispositivos braille pueden cambiar automáticamente al nuevo lenguaje, haciendo el documento más accesible a usuarios multilingües. Los desarrolladores de contenido deberían identificar el idioma predominante del contenido de un documento (a través de un marcador o en el encabezado HTTP). Deberían también proporcionar la expansión de las abreviaturas y los acrónimos.
Además de apoyar a las ayudas técnicas, la identificación del idioma usado permite a los motores de búsqueda localizar las palabras claves e identificar los documentos en el idioma deseado. Los marcadores de idioma mejoran también la legibilidad de la Web para todo el mundo, incluso para aquellos con discapacidades de aprendizaje, cognitivas o sordera.
Cuando los cambios en las abreviaturas y el idioma no son identificados, pueden ser indescifrables para los lectores de pantalla y los dispositivos braille.
- 4.1 Identifique claramente los cambios en el idioma del texto del documento y en cualquier texto equivalente (Por ejemplo, leyendas). [Prioridad 1]
- Por ejemplo en HTML, utilice el atributo "lang". En XML, utilice "xml:lang".
- 4.2 Especifique la expansión de cada abreviatura o acrónimo cuando aparezcan por primera vez en el documento. [Prioridad 3]
- Por ejemplo, en HTML, use el atributo "title" de los elementos "ABBR" y "ACRONYM". Proporcionar la expansión en el cuerpo principal del documento también ayuda a la usabilidad del documento.
- 4.3 Identifique el idioma principal de un documento. [Prioridad 3]
- Por ejemplo, en HTML, coloque el atributo "lang" en el elemento HTML. En XML, utilice "xml:lang". Los operadores de servidores podrían configurar sus servidores para aprovechar los mecanismos de transferencia del contenido del protocolo HTTP ([RFC2068], sección 14.13), de forma que los clientes puedan recibir automáticamente los documentos en el idioma seleccionado.
En WCAG 2.0, la pauta 3.1 Readable: Make text content readable and understandable contiene los siguientes criterios de éxito (success criterion):
3.1.1 Language of Page: The default human language of each Web page can be programmatically determined. (Level A)
3.1.2 Language of Parts: The human language of each passage or phrase in the content can be programmatically determined except for proper names, technical terms, words of indeterminate language, and words or phrases that have become part of the vernacular of the immediately surrounding text. (Level AA)
Si consultamos la razón (Understanding SC 3.1.1 y Understanding SC 3.1.2) que se esconde detrás de cada uno de estos criterios de éxito, es que las tecnologías de apoyo y los agentes de usuarios tradicionales (los navegadores) pueden mostrar el texto y demás contenido de una forma más precisa si se conoce el idioma en el que está escrito el texto.
En concreto, en el caso de los lectores de pantallas, la identificación correcta del idioma del texto permite utilizar las reglas de pronunciación adecuadas para cada idioma.
¿Cómo se usan los atributos lang
y xml:lang
que se sugieren en
WCAG 1.0? ¿Qué pasa con el encabezado HTTP
Content-Language
? ¿Y con la etiqueta <meta>
? ¿Qué más necesito saber?
lang
y xml:lang
.
El W3C tiene un sitio web dedicado a Internationalization (I18n) Activity.
Entre los documentos ofrecidos, destaca
Internationalization Best Practices: Specifying Language in XHTML & HTML Content
que explica las diferentes formas de indicar el idioma principal y los cambios de idioma en una página web. Este documento está en inglés,
pero podemos encontrar en castellano un
Tutorial: Identificación del idioma en XHTML y HTML y
la respuesta a la pregunta frecuente
¿Por qué utilizar el atributo de idioma?
que justifica el empleo de los atributos lang
y xml:lang
.
En el documento Internationalization Best Practices: Specifying Language in XHTML & HTML Content se definen unas "buenas prácticas" a la hora de indicar el lenguaje del texto:
lang
se puede utilizar con todos los elementos de HTML excepto
applet
, base
, basefont
, br
, frame
,
frameset
, iframe
, param
y script
.
Si no hay etiquetas alrededor del texto con un idioma diferente, utiliza <span>
para delimitarlo.
Content-Language
o de la etiqueta <meta>
.
<body>
sólo se refiere a una parte del documento. Por ejemplo, la etiqueta
<title>
está en el <head>
y no tendría definido un idioma si se declara
en el <body>
.