Cuando diseñamos sitios web un aspecto importante es el de la internacionalización. Un sitio Web internacional permite garantizar su utilización universal incluyendo todos los idiomas y culturas.
Por ello es necesario que el usuario reciba la información adaptada a su cultura. En el caso de los que hablamos español, la correcta visualización de caracteres como la Ñ o los acentos. En otros casos es necesario que la información también se adapte al sistema de medida o al calendario.

Para ello hacemos uso de los identificadores de idiomas. Con estos podemos identificar desde el idioma principal de la página como también, la identificación de cambio dentro de la misma página.

En HTML se usa lang, mientras que para XML y XHTML se usa xml:lang. De aquí en más voy hablar cobre este último porque en mi humilde experiencia en el campo del desarrollo web creo que a estas alturas (enero 2007) ya deberías usar XHTML 1.0 Strict o mejor aún XHTML 1.1.

Entonces para identificar el idioma de una página usamos:

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es">

Para indicar los cambios de idiomas dentro de página:

<p xml:lang="en">The power of the Web is in its universality. Access by 
everyone regardless of disability is an essential aspect.</p>

La página principal está en español, pero en este parrafo se cita una frase en su idioma orignal,
que en este caso es el inglés y pertences a Tim Berners-Lee

<p xml:lang="en-ar">¿Estas mamado?</p>

En Argentina esto significa estar borracho.

<p xml:lang="en-co">¿Estas mamado?</p>

En Colombia esto significa estar cansado.

Para enlazar a otra página con el contenido en idioma diferente usamos xml:lang (siempre hablando de XHTML):

<a href="http://pixelco.us" class="idioma" 
title="Pasar a la versión es español" xml:lang="es">Versión Español</a>

Además hay que tener en cuenta la dirección del texto, si este se lee de izquierda a derecha o viceverza.

Para definir la dirección del texto lo indicamos como:

<a xhref="http://pixelco.us" mce_href="http://pixelco.us"
xml:lang="es" dir="rtl"
title="Visitar el Blog de Pixelco">El Blog de Pixelco</a>

La codificación de la página es otra cuestión muy importante. Esta consiste en transformar la secuencia de bits en una secuencia de caracteres. Esto es (la secuencia de bits) lo que envía un servidor cuando un agente de usuario le solicita una página.

¿Como codificar entonces esa secuencia de bits en caracteres?
Para ello debemos indicar el parámetro charset en el content-type, estos van siatuados en el <head> (cabecera) de nuestra página:

<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />

Otras lecturas sobre internacionalización:

Tags: , , ,

Por Diego Cambiaso

Comunicador Social, Desarrollador de Software y UX Designer. Blogger desde el 2006, creador de Pixelco Tech. Viajero y fotógrafo. Entusiasta del diseño, apasionado por la tecnología y el social media. EN-ES-IT