Atributos de tipo NMTOKEN en DTD
En una DTD, los atributos declarados NMTOKEN son aquellos cuyo valor será una cadena de caracteres, pudiendo contener letras minúsculas, letras mayúsculas, números, puntos ".", guiones medios "-", guiones bajos "_" o el carácter dos puntos ":".
EJEMPLO En la DTD del siguiente documento XML, el atributo clave del elemento "usuario" ha sido declarado de tipo NMTOKEN:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE usuarios [
<!ELEMENT usuarios (usuario)*>
<!ELEMENT usuario (#PCDATA)>
<!ATTLIST usuario clave NMTOKEN #REQUIRED>
]>
<usuarios>
<usuario clave="123456789">Ana</usuario>
<usuario clave="ab-c-d-fg">Iker</usuario>
<usuario clave="A1_B2..C3">Elsa</usuario>
</usuarios>
- En el valor de un atributo NMTOKEN no se pueden escribir espacios en blanco ni caracteres especiales, tales como: *, $, %, &, ?, @...