Une entité non-analysable permet de déclarer un contenu non-XML dans un document XML.

Les entités non-ananalysables sont notamment des fichiers audios, vidéos ou images.

La déclaration d'une entité non-analysable s'effectue en spécifiant le type de données de l'entité par l'intermédaire du mot clé NDATA. Chacune de ces entités est associée à une notation, identifiée par une chaîne de caractères par l'intermédiaire de l'instruction <!NOTATION...>.

La déclaration dans la DTD d'une entité non-analysable s'effectue comme suit :

<!ENTITY nom SYSTEM "URI" NDATA notation>

Les références d'entités non-analysables sont utilisées dans le document XML de la manière suivante :

&nom_entité;
Déclaration dans la DTD :
<!ENTITY illustration SYSTEM "image.gif" NDATA GIF>
Utilisation de l'entité dans le document XML :

Ce genre d'entité ne pouvant être analysée doit être déclarée dans un conteneur afin d'être correctement traité par l'analyseur XML courant.

<image src="illustration"/>

Le nom des entités non-analysables est fourni par la valeur d'un attribut de type ENTITY ou ENTITIES dans l'instruction <!ATTLIST...>.

<?XML version="1.0" STANDALONE="yes">
<!DOCTYPE collection [
  <!ELEMENT album EMPTY>
  <!ATTLIST album src ENTITY #REQUIRED>
  <!NOTATION jpg SYSTEM "image/jpg">
  <!ENTITY photo SYSTEM "../mariage.jpg" NDATA jpg>
]>
<collection>
  <album src="photo">
</collection>