Entités générales analysées |
    <!ENTITY name "Replacement text.">
    <!ENTITY name SYSTEM "system-literal">
    <!ENTITY name PUBLIC "pubid-literal" "system-literal">
Les entités générales analysées sont déclarées dans la définition du type de document puis référencées dans le contenu d'attribut et le texte du document. Lorsque le document est analysé, le texte de remplacement de l'entité remplace la référence d'entité. L'analyseur reprend ensuite l'analyse en commençant par le texte tout juste remplacé. Les entités générales analysées sont déclarées dans la DTD au moyen d'un surensemble de la syntaxe utilisée pour déclarer les entités de paramètre. Les entités internes stockent le texte de remplacement en ligne comme une chaîne littérale. Le texte de remplacement d'une entité interne est inclus en totalité dans la déclaration même, évitant ainsi d'avoir à utiliser un fichier externe pour contenir le texte de remplacement. Cette situation ressemble fortement aux macrofonctions de remplacement de chaîne que l'on trouve dans de nombreux environnements et langages de programmation courants :
    <!ENTITY name "Replacement text">
Lorsqu'une entité générale analysée est référencée, les contenus de l'entité externe sont inclus dans le document, et l'analyseur XML reprend l'analyse en commençant par le nouveau texte inclus. Il existe deux types d'entités générales autorisées par la recommandation XML : analysée et non analysée. Une entité non analysée est déclarée au moyen de la même syntaxe qu'une entité générale externe analysée, mais en ajoutant un nom de notation XML à la déclaration :
    <!ENTITY name SYSTEM "system-literal" notation-name>
    <!ENTITY name PUBLIC "pubid-literal" "system-literal"
    notation-name>
Les entités générales non analysées ne sont pas référencées en utilisant la syntaxe &name;. Pour référencer des entités externes non analysées, il faut déclarer un attribut en utilisant le type d'attribut ENTITY ou ENTITIES. Les entités générales externes non analysées font partie des fonctionnalités XML les moins bien maîtrisées et prises en charge, et les moins utilisées dans la pratique en règle générale. Nous vous recommandons d'utiliser d'autres mécanismes pour référencer des données non-XML externes (comme par exemple, XLinks ou des chaînes URI simples).