Son interesantes los atributos @xml:id
y @xml:lang
, que se pueden añadir a casi todas las etiquetas y sirven para dotar de un identificador único a ese elemento (identification) y para definir el idioma en el que está esa etiqueta y todo lo que contiene (language).
@xml:id
Los @xml:id
tienen unas normas estrictas para su composición:
- No pueden contener más que letras (mayúsculas y minúsculas), números, el punto (.), el guión corto (-), y el guión bajo (_).
- Han de empezar por una letra.
- Han de llevar el número que corresponda al verso, al capítulo, al idioma, etc., para que sean significativos.
- Si el identificador hay que introducirlo no sólo en el texto original sino también en las traducciones, es necesario usar la abreviatura del idioma en el que está el texto como primera parte del identificador. Por ejemplo,
@xml:id="la.4.236"
identifica al verso 4.236 de la obra que estamos etiquetando, pero en su versión latina. El mismo verso, en la traducción al castellano, llevaría un identificador@xml:id="es.4.236"
. - Cuando los identificadores sirvan para marcar etiquetas especiales, han de incluir en el identificador como texto esa etiqueta o su abreviatura. Así se diferencian de otros identificadores únicos que pueda llevar ese verso o ese párrafo, que llevan todos el mismo número.
Hay etiquetas que remiten a elementos anteriormente definidos en el documento mediante un @xml:id
. El atributo que apunte a ellos habrá de citar exactamente el valor de ese @xml:id
precedido del símbolo «#».
@xml:lang
En cuanto a los @xml:lang
, sirven para definir el idioma en que está esa etiqueta y todas las que contiene. Por ejemplo, un <text>
así definido:
<text type="translation" xml:lang="es"> … Contenidos … </text>
sirve para introducir toda la traducción de nuestro texto original, que, por su parte, irá identificado con:
<text type="source" xml:lang="grc"> … Contenidos … </text>
Los valores de idioma que usaremos en nuestras ediciones son:
- latín: «la»
- griego antiguo: «grc»
- español: «es»
- inglés: «en»
- italiano: «it»
- alemán: «de»
- griego moderno: «el»
- francés: «fr»
- gallego: «gl»
- vasco: «eu»
- catalán: «ca»
- portugués: «pt»
Estas abreviaturas de idioma nos serán útiles también para los @xml:id que habremos de asignar a los segmentos para alinear texto y traducción.
Para una lista completa de las abreviaturas de idioma se puede consultar la página web oficial de IANA (Internet Assigned Numbers Authority).