Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Une entité est une déclaration qui indique un nom à utiliser dans le code XML à la place du contenu ou du balisage. Une entité présente deux aspects. Tout d’abord, vous devez lier un nom au contenu de remplacement à l’aide d’une déclaration d’entité. Une déclaration d’entité est créée à l’aide de la <!ENTITY name "value">
syntaxe d’une définition de type de document (DTD) ou d’un schéma XML. Deuxièmement, le nom défini dans la déclaration d’entité est ensuite utilisé dans le code XML. Lorsqu’elle est utilisée dans le code XML, elle est appelée référence d’entité. Par exemple, la déclaration d’entité suivante déclare une entité du nom publisher
associé au contenu de « Microsoft Press ».
<!ENTITY publisher "Microsoft Press">
L’exemple suivant montre l’utilisation de cette déclaration d’entité en XML comme référence d’entité.
<author>Fred</author>
<pubinfo>Published by &publisher;</pubinfo>
Certains analyseurs développent automatiquement les entités lorsqu’un document est chargé en mémoire. Par conséquent, lorsque le code XML est lu en mémoire, les déclarations d’entité sont mémorisées et enregistrées. Lorsque l’analyseur rencontre par la suite des &;
caractères, qui identifient une référence d’entité générale, l’analyseur recherche ce nom dans une table de déclaration d’entité. La référence &publisher;
est remplacée par le contenu qu'il représente. À l’aide du code XML suivant,
<author>Fred</author>
<pubinfo>Published by &publisher;</pubinfo>
L'expansion de la référence d’entité et le remplacement du contenu de Microsoft Press par le &publisher;
donne le code XML élargi suivant.
Sortie
<author>Fred</author>
<pubinfo>Published by Microsoft Press</pubinfo>
Il existe de nombreux types d’entités. Le diagramme suivant montre la répartition des types d’entités et de la terminologie.
La valeur par défaut de l’implémentation microsoft .NET Framework du modèle DOM (Document Object Model) XML consiste à conserver les références d’entités et à ne pas développer les entités lorsque le code XML est chargé. L’implication de ceci est qu’en tant que document est chargé dans le DOM, un nœud XmlEntityReference contenant la variable &publisher;
de référence est créé, avec des nœuds enfants représentant le contenu dans l’entité déclarée dans la DTD.
À l’aide de la <!ENTITY publisher "Microsoft Press">
déclaration d’entité, le diagramme suivant montre les nœuds XmlEntity et XmlText créés à partir de cette déclaration.
Les différences lorsque les références d’entité sont développées et lorsqu'elles ne le sont pas influent sur les nœuds générés dans l’arborescence DOM, en mémoire. La différence entre les nœuds générés est expliquée dans les rubriques Les Références d’entité sont conservées et Les références d’entité sont développées et non conservées.