DÉCLARER UNE DTD EN LIGNE
Transcription
DÉCLARER UNE DTD EN LIGNE
XML/03 08/12/00 11:06 Page 32 XML DÉCLARER UNE DTD EN LIGNE V ous pouvez définir des types de données spécifiques pour chaque composant d’un document XML grâce à une définition de type de document (DTD). Les DTD sont parfois qualifiées de vocabulaires, car elles définissent un jeu commun et structuré d’éléments et d’attributs, de la même manière que les lexiques humains établissent des termes et règles syntaxiques identiques à tous. Il est par exemple possible d’utiliser une DTD pour limiter la valeur d’un élément XML à des caractères. Vous pouvez implémenter une DTD de deux manières : ■ En incluant son texte dans le document XML, comme c’est le cas dans cette tâche. Privilégiez cette approche fondée sur des DTD en ligne dans de petits documents XML et dans tous les fichiers XML en phase de développement, ainsi que dans les cas où vous n’envisagez pas d’appliquer la DTD à d’autres documents XML. ■ En enregistrant le texte de la DTD dans un fichier indépendant, auquel vous faites référence au sein du document XML. Pour plus d’informations sur ces DTD externes, consultez la page 34. Une DTD en ligne se crée au moyen de la syntaxe suivante : <!DOCTYPE élément_racine [règles_dtd]> élément_racine correspond à la racine du document XML qui renferme la DTD. règles_dtd désigne une ou plusieurs déclarations XML qui définissent des règles de DTD pour des éléments particuliers inclus dans la racine. DÉCLARER UNE DTD EN LIGNE ⁄ Ouvrez le fichier XML dans lequel vous désirez ajouter une DTD en ligne. ¤ Cliquez entre la déclaration XML et celle de l’élément racine. ■ Note. Pour créer la déclaration de document XML, consultez la page 12. Pour définir l’élément racine, consultez la page 14. 32 ‹ Tapez <!DOCTYPE. › Saisissez le nom de l’élément racine du document XML. ˇ Tapez [. XML/03 08/12/00 11:06 Page 33 CRÉER UNE DTD I - DÉCLARER DES ÉLÉMENTS DE DTD 3 Tous les éléments définis dans un fichier XML doivent être associés à une déclaration particulière dans la DTD. Dans cette tâche, nous définissons un seul élément : BIENVENUE. La déclaration correspondante dans la DTD décrit la règle de validation sémantique de cet élément. #PCDATA est un mot clé XML réservé qui limite le contenu de la valeur de l’élément BIENVENUE à des caractères (contrairement à d’autres éléments, comme des valeurs prédéfinies). Les mots clés répertoriés dans le tableau ci-dessous permettent de définir le type d’un élément XML : Mot clé Description de l’élément (#PCDATA) Caractères (#PCDATA)* Zéro ou plusieurs caractères (un_élément) Une seule instance de un_élément (un_élément+) Une ou plusieurs instances de un_élément (un_élément?) Zéro ou plusieurs instances de un_élément (un_élément, autre_élément) Une instance de un_élément et une de autre_élément (un_élément | autre_élément) Une instance de un_élément ou une de autre_élément (#PCDATA | un_élément)* Á Tapez une ou plusieurs règles de DTD. Note. Pour créer une règle de DTD, consultez les pages 38 à 49. Une instance de un_élément ou plusieurs caractères (quand #PCDATA est employé avec d’autres options, il doit figurer en premier dans la liste) EMPTY Aucun contenu ANY N’importe quel contenu (ANY désactivant la vérification du type de données, employez-le uniquement lors d’une conversion de document, et seulement si besoin est, mais jamais pendant la phase de production) ■ Ici, nous insérons le mot clé #PCDATA, afin de limiter la valeur de l’élément BIENVENUE à des caractères. ‡ Tapez la balise de fermeture de la DTD : ]>. ° Enregistrez le fichier. 33 XML/03 08/12/00 11:06 Page 34 XML DÉCLARER ET ENREGISTRER UN FICHIER DTD EXTERNE i vous envisagez d’appliquer votre DTD à plusieurs documents XML, vous pouvez enregistrer le texte qui la compose dans un fichier externe indépendant et référer ensuite à ce dernier dans votre document XML, en associant le mot clé SYSTEM à la déclaration DOCTYPE. S Les règles de validation se retrouvant ainsi séparées des données XML, cette technique favorise le réemploi des documents. Plusieurs documents XML peuvent en effet référer au même fichier DTD, sans que les règles de validation soient physiquement répétées. Pour créer une DTD externe, utilisez la syntaxe suivante : <!DOCTYPE élément_racine SYSTEM "fichier_dtd"> élément_racine correspond à la racine du document XML à laquelle est appliquée la DTD. fichier_dtd est le nom du fichier DTD externe. La déclaration DOCTYPE accepte n’importe quel nom de fichier DTD existant comme paramètre pour le nom de la DTD. Il est de rigueur d’ajouter l’extension .dtd à tous les fichiers DTD. DÉCLARER ET ENREGISTRER UN FICHIER DTD EXTERNE ⁄ Ouvrez le fichier XML à lier à une DTD externe. 34 ¤ Cliquez juste après la déclaration XML. ‹ Tapez <!DOCTYPE. XML/03 08/12/00 11:06 Page 35 CRÉER UNE DTD I - DÉCLARER DES ÉLÉMENTS DE DTD 3 Lorsque vous associez au mot clé SYSTEM uniquement le nom du fichier DTD, le parseur XML considère que ce dernier se trouve dans le même dossier que le document XML référant. Si le fichier DTD est stocké dans un autre répertoire, la valeur de ce paramètre doit correspondre au nom du fichier DTD avec son chemin d’accès. Supposons que le fichier section1.xml se trouve dans le dossier c:\xml\chapitre2, et le fichier section2.dtd, dans le sous-dossier c:\xml\chapitre2\DTD. La déclaration DOCTYPE doit alors se présenter comme suit : <!DOCTYPE livre_programmation SYSTEM "/DTD/section2.dtd"> Les mots clés répertoriés dans le tableau ci-dessous permettent de définir le type d’un attribut XML : Mot clé Description de l’attribut CDATA Caractères (chaîne) ID Identifiant unique IDREF/IDREFS Un ou plusieurs ID (alors séparés par des espaces) définis auparavant ENTITY/ENTITIES Une ou plusieurs entités prédéfinies, alors séparées par des espaces (voir <!ENTITY>) NMTOKEN/NMTOKENS Version limitée (aucun espace toléré) d’un ou plusieurs CDATA, alors séparés par des espaces a | b | c | … Liste d’attributs déjà définis et séparés par un trait vertical › Tapez le nom de la racine qui constituera le premier élément affecté par la DTD. ˇ Tapez SYSTEM. Á Entre guillemets, tapez le ‡ Tapez le chevron de fermeture : >. ° Enregistrez le fichier. nom du fichier DTD. Note. Si le fichier DTD se trouve dans un autre dossier que le document XML, indiquez son chemin d’accès complet. S’il se situe sur le Web, spécifiez son URL. 35 XML/03 08/12/00 11:06 Page 36 XML AJOUTER UN COMMENTAIRE DANS UN FICHIER DTD V ous pouvez ajouter des commentaires dans un fichier DTD, afin de faciliter la lecture et la gestion du code. Il est possible d’appliquer une DTD à plusieurs documents. De nombreux utilisateurs comptent d’ailleurs sur le développement de DTD standard dans les années à venir, qui pourraient être employées par toutes les grandes entreprises. Ajoutée à la nature non intuitive de la syntaxe DTD, cette réutilisation éventuelle par d’autres programmeurs rend les commentaires essentiels dans l’élaboration de fichiers DTD. Les commentaires s’insèrent dans un fichier DTD au moyen de la syntaxe suivante : <!–– commentaire ––> Vous pouvez inscrire à la place de commentaire n’importe quel texte, sauf un tiret double (--). Il est aussi possible d’y insérer des espaces séparateurs, comme des retours chariot, très utiles pour améliorer la lisibilité. Les commentaires peuvent figurer n’importe où dans un fichier DTD, si ce n’est à l’intérieur d’un autre commentaire de la DTD. En d’autres termes, il est impossible de les imbriquer. La syntaxe suivante, par exemple, est incorrecte et sera signalée comme erronée par le parseur : <!–– premier commentaire <!–– deuxième commentaire ––> ––> AJOUTER UN COMMENTAIRE DANS UN FICHIER DTD ⁄ Ouvrez le fichier DTD dans lequel vous désirez insérer un commentaire. 36 ¤ Tapez la balise d’ouverture du commentaire : <!--. XML/03 08/12/00 11:06 Page 37 CRÉER UNE DTD I - DÉCLARER DES ÉLÉMENTS DE DTD Grâce aux commentaires de DTD formels, vous pouvez : ■ ■ Décrire les règles de validation sous une forme intelligible pour un lecteur humain. Le nombre de DTD ne cessant de croître, les développeurs doivent être en mesure de les comprendre et de les utiliser sans peine. En incluant des commentaires adéquats dans un fichier DTD, et non dans un document séparé ou un manuel, vous vous assurez que la documentation essentielle n’est pas dissociée du fichier DTD physique. Organiser les règles de validation pour améliorer la lisibilité. Les DTD constituent généralement de longs fichiers, très complexes. En les scindant en plusieurs sections (une pour la déclaration de l’entité et une pour celle des éléments, par exemple), vous facilitez leur lecture et leur modification. ‹ Saisissez votre commentaire. 3 Lors du développement d’une application, il est conseillé d’insérer un commentaire de DTD avant chacun de ces composants : ■ Section de déclaration des éléments. Regroupez toutes les déclarations d’éléments et faites précéder cette section, qui constitue généralement l’essentiel du document DTD, d’un commentaire d’en-tête de section. ■ Section de déclaration des entités. Faites suivre la section de déclaration des éléments d’une section de déclaration des entités, où vous définissez toutes les entités de la DTD. Ajoutez ensuite un commentaire d’en-tête de section juste avant. ■ Toute déclaration d’élément ou d’entité difficilement identifiable par un lecteur occasionnel de la DTD. Ajoutez, si nécessaire, des commentaires descriptifs au sein de différentes sections. › Tapez la balise de fermeture du commentaire : -->. ˇ Enregistrez le fichier. 37 XML/03 08/12/00 11:06 Page 38 XML DÉCLARER UN ÉLÉMENT CONTENEUR ous pouvez établir des relations conteneur/contenu entre des données XML pendant la phase d’exécution. Les conteneurs sont des éléments composés exclusivement d’autres éléments prédéfinis. V La possibilité de mettre de telles relations en œuvre permet de façonner des rapports complexes entre des données XML. Vous pouvez ainsi établir des relations entre des groupes d’éléments répétitifs et apparentés, comme des employés et des projets, des clients et des commandes, ou des produits et des détaillants. Pour créer un élément conteneur, utilisez la syntaxe suivante : <!ELEMENT élément_conteneur (élément_contenu_1, élément_contenu_2... élément_contenu_N)> élément_conteneur est le nom de l’élément XML à définir comme conteneur. élément_contenu_1, élément_contenu_2 et élément_contenu_N correspondent aux noms des éléments XML à inclure dans élément_conteneur. DÉCLARER UN ÉLÉMENT CONTENEUR ⁄ Ouvrez le fichier DTD dans lequel vous souhaitez définir une relation conteneur/contenu. 38 ¤ Tapez <!ELEMENT. XML/03 08/12/00 11:06 Page 39 CRÉER UNE DTD I - DÉCLARER DES ÉLÉMENTS DE DTD 3 Les éléments contenus n’ont pas à être déclarés dans le même ordre dans la DTD que dans le document XML, mais il est recommandé de le faire. Mettre en outre chacun d’eux en retrait permet d’identifier beaucoup plus facilement les relations qui les unissent. Pour faire référence à un élément appartenant à un domaine de noms dans une DTD, vous devez en indiquer le nom totalement qualifié. La syntaxe suivante, par exemple, indique que l’élément detaillants associé au domaine de noms d dans le fichier XML correspondant est inclus dans l’élément infos_marketing : <!ELEMENT infos_marketing (caracteristiques_particulieres, gamme, d:detaillants)> Les déclarations d’attributs peuvent prendre l’une de ces quatre valeurs par défaut : Valeur par défaut de l’attribut Description #REQUIRED L’attribut doit renfermer une valeur pendant la phase d’exécution. #IMPLIED L’attribut peut ne pas renfermer de valeur pendant la phase d’exécution. "valeur_particulière" Si l’attribut ne renferme aucune valeur pendant la phase d’exécution, valeur_particulière lui est affecté. #FIXED "valeur_particulière" ‹ Tapez le nom de l’élément conteneur. La valeur valeur_particulière est affectée d’office à l’attribut. › Entre parenthèses, saisissez le nom des éléments contenus, en séparant chacun d’eux par une virgule et un espace. ˇ Tapez le chevron de fermeture (>) de la balise <!ELEMENT>. Á Enregistrez le fichier. ■ Les éléments produit et fonction_js ont été déclarés dans le document XML associé à cette DTD. 39 XML/03 08/12/00 11:06 Page 40 XML DÉCLARER UN ÉLÉMENT OBLIGATOIRE ous pouvez créer une règle de validation qui garantisse l’association d’un élément donné à une valeur unique pendant la phase d’exécution. On qualifie alors cet élément d’obligatoire, car il doit exister lors de l’exécution. Tous les éléments XML étant contenus dans un élément racine, voire également dans d’autres éléments, les éléments obligatoires sont généralement définis comme éléments contenus. V Voici quelques exemples de types d’éléments de données couramment définis comme obligatoires : ■ nom de client, ■ numéro de sécurité sociale, ■ numéro d’identification de produit, ■ numéro de compte. Un élément obligatoire se crée au moyen de la syntaxe suivante : <!ELEMENT élément_conteneur ([élément_obligatoire_N])> élément_conteneur est le nom de l’élément XML à définir comme conteneur. élément_obligatoire_N correspond au nom d’un ou plusieurs éléments XML qui, pendant la phase d’exécution, ne devront renfermer qu’une seule valeur. DÉCLARER UN ÉLÉMENT OBLIGATOIRE ⁄ Ouvrez le fichier DTD dans lequel vous désirez ajouter un élément obligatoire. 40 ¤ Tapez <!ELEMENT. XML/03 08/12/00 11:06 Page 41 CRÉER UNE DTD I - DÉCLARER DES ÉLÉMENTS DE DTD 3 Les éléments contenus peuvent se présenter sous l’une des trois formes suivantes : ■ élément : cet élément doit être associé à une valeur et une seule. ■ élément+ : cet élément doit être associé à une ou plusieurs valeurs. ■ élément* : cet élément doit être associé à zéro ou plusieurs valeurs. La syntaxe de DTD suivante, par exemple, déclare un élément contenu, produit, qui doit être associé à une valeur unique : <!ELEMENT infos_produits_bertani (produit)> La syntaxe suivante, en revanche, déclare un élément contenu, produit, qui doit être associé à une valeur, au moins : <!ELEMENT infos_produits_bertani (produit+)> La syntaxe suivante, enfin, déclare un élément contenu, produit, qui peut n’être associé à aucune valeur ou être couplé à plusieurs : <!ELEMENT infos_produits_bertani (produit*)> Attention ! si vous utilisez le symbole + ou *, n’oubliez pas de le faire figurer entre les parenthèses, comme dans les exemples ci-dessus. ‹ Tapez le nom de l’élément conteneur. › Entre parenthèses, saisissez le nom des éléments obligatoires, en séparant chacun d’eux par une virgule et un espace. ˇ Tapez le chevron de fermeture (>) de la balise <!ELEMENT>. Á Enregistrez le fichier. 41 XML/03 08/12/00 11:06 Page 42 XML DÉCLARER UN ÉLÉMENT FACULTATIF ous pouvez créer une règle de validation qui permette d’associer un élément donné à zéro ou plusieurs valeurs pendant la phase d’exécution. On qualifie alors cet élément de facultatif. V Il est possible de définir des éléments facultatifs en même temps que des éléments obligatoires. Vous pouvez par exemple déclarer un élément conteneur qui renferme à la fois des éléments facultatifs et obligatoires. Pour désigner un élément facultatif, vous devez inclure un point d’interrogation dans la syntaxe : élément_conteneur est le nom de l’élément XML à définir comme conteneur. élément_facultatif_N correspond au nom d’un ou plusieurs éléments XML qui, pendant la phase d’exécution, pourront être associés à zéro ou plusieurs valeurs. Si vous insérez plusieurs éléments, séparez-les par une virgule et un espace (exemple : élément_obligatoire+, autre_élément_obligatoire, élément_facultatif?). <!ELEMENT élément_conteneur ([élément_facultatif_N?])> DÉCLARER UN ÉLÉMENT FACULTATIF ⁄ Ouvrez le fichier DTD dans lequel vous désirez ajouter un élément facultatif. 42 ¤ Tapez <!ELEMENT. XML/03 08/12/00 11:06 Page 43 CRÉER UNE DTD I - DÉCLARER DES ÉLÉMENTS DE DTD Le point d’interrogation (?) qui permet de définir des éléments facultatifs sert principalement à établir des relations zéro/plusieurs entre des éléments de données. Ce type de rapport est très employé par les développeurs d’applications de bases de données. On en trouve également assez souvent dans des organisations de données concrètes. En associant des documents XML à des DTD, les développeurs peuvent créer des applications de bases de données composées de bases de données à fichiers « à plat » (les documents XML), de fichiers de définitions de données (les DTD) et de fonctionnalités de requête (le code de traitement). ‹ Tapez le nom de l’élément conteneur. › Entre parenthèses, saisissez le nom de l’élément contenu facultatif. ˇ Tapez un point d’interrogation juste après le nom de l’élément facultatif. 3 Dans l’exemple de cette tâche, vous pouvez associer zéro ou plusieurs instances de infos_marketing à un produit. Le DOM (Document Object Model) permet d’effectuer des boucles par toutes les instances de infos_marketing associées à un produit donné éventuel pendant la phase d’exécution. Pour ce faire, il suffit de créer un processeur XML. Consultez à cette fin le chapitre 13. Ne confondez pas la déclaration d’élément facultatif (?) avec le symbole requis pour déclarer zéro ou plusieurs caractères pour un élément (#PCDATA)* donné. Á Tapez le chevron de fermeture (>) de la balise <!ELEMENT>. ‡ Enregistrez le fichier. 43 XML/03 08/12/00 11:06 Page 44 XML DÉCLARER UN ÉLÉMENT RÉPÉTÉ ous pouvez créer une règle de validation qui garantisse l’association d’un élément donné à une ou plusieurs valeurs pendant la phase d’exécution. Ce type de déclaration est semblable à celle d’un élément obligatoire, à ceci près que cette dernière n’autorise qu’une seule valeur pendant la phase d’exécution, et non plusieurs. V Pour désigner un élément répété, vous devez inclure un signe plus (+) dans la syntaxe : <!ELEMENT élément_conteneur ([élément_contenu_N+])> élément_conteneur est le nom de l’élément XML à définir comme conteneur. élément_contenu_N correspond au nom d’un ou plusieurs éléments XML qui, pendant la phase d’exécution, devront être associés à une ou plusieurs valeurs. DÉCLARER UN ÉLÉMENT RÉPÉTÉ ⁄ Ouvrez le fichier DTD dans lequel vous désirez ajouter un élément répété. 44 ¤ Tapez <!ELEMENT. XML/03 08/12/00 11:06 Page 45 CRÉER UNE DTD I - DÉCLARER DES ÉLÉMENTS DE DTD Le signe plus (+) qui permet de définir des éléments répétés sert principalement à établir également des relations un/plusieurs entre des éléments de données. Ce type de rapport est très employé par les développeurs d’applications fondées sur des bases de données relationnelles. En associant des documents XML à des DTD, les développeurs peuvent créer des applications de bases de données composées de bases de données à fichiers « à plat » (les documents XML), de fichiers de définitions de données (les DTD) et de fonctionnalités de requête (le code de traitement). ‹ Tapez le nom de l’élément conteneur. › Entre parenthèses, saisissez le nom de l’élément répété. 3 Dans l’exemple de cette tâche, un élément infos_produits_bernati doit être associé à un ou plusieurs éléments produit pendant la phase d’exécution. Les mots clés ID et IDREF permettent également d’établir deux précieuses instructions pour les bases de données en XML : les clés primaire et externe. Pour définir des attributs de type ID et IDREF, consultez le chapitre 4. Á Tapez le chevron de fermeture (>) de la balise <!ELEMENT>. ‡ Enregistrez le fichier. ˇ Tapez un signe plus (+) juste après le nom de l’élément répété. 45 XML/03 08/12/00 11:06 Page 46 XML DÉCLARER UN ÉLÉMENT RENFERMANT DES CARACTÈRES ous pouvez créer une règle de définition de données garantissant que la valeur d’un élément donné se compose exclusivement de caractères pendant la phase d’exécution (contrairement à des éléments prédéfinis ou à une association des deux). V Pour déclarer le type de données caractère pour un élément XML, vous devez utiliser le mot clé réservé et sensible à la casse, #PCDATA (Parseable Character Data). Ce dernier représente un caractère unique analysable (c’est-à-dire autre qu’un caractère spécial). Les éléments de type #PCDATA ne peuvent renfermer que des caractères, et aucun autre élément prédéfini. La syntaxe à utiliser est la suivante : <!ELEMENT nom_élément (#PCDATA)*> nom_élément est le nom de l’élément qui devra renfermer des caractères. L’astérisque (*) qui apparaît hors de la déclaration du type de données (#PCDATA) est obligatoire. Il indique que la valeur de l’élément peut renfermer zéro ou plusieurs caractères analysables pendant la phase d’exécution. Si vous omettez l’astérisque, cette valeur est limitée à un seul caractère. DÉCLARER UN ÉLÉMENT RENFERMANT DES CARACTÈRES ⁄ Ouvrez le fichier DTD dans lequel vous désirez ajouter un élément renfermant des caractères. 46 ¤ Tapez <!ELEMENT. XML/03 08/12/00 11:06 Page 47 CRÉER UNE DTD I - DÉCLARER DES ÉLÉMENTS DE DTD Les seules valeurs non valides pour un élément de type #PCDATA sont des données de balisage, séries de caractères encadrés par des chevrons d’ouverture et de fermeture. "<Cette valeur, par exemple, ne peut pas être affectée à un élément de type #PCDATA, car elle renferme les caractères <>.>" 3 Avec le mot clé #PCDATA, les nombres sont considérés comme des caractères. Pour déclarer un type de caractères plus spécifiques, comme des entiers, une date ou une heure, vous devez utiliser un schéma ou inclure un code de détection et de gestion dans votre processeur XML. Les chapitres 6 et 7 expliquent comment créer un schéma, et le chapitre 13, un processeur XML. Si vous avez besoin de définir un élément XML qui accepte des données de balisage comme valeur, utilisez une section CDATA. Consultez à cette fin la page 30. ‹ Tapez le nom de l’élément qui devra renfermer des caractères. › Juste après le nom de l’élément, tapez (#PCDATA)*. ˇ Tapez le chevron de fermeture (>) de la balise <!ELEMENT>. Á Enregistrez le fichier. 47 XML/03 08/12/00 11:06 Page 48 XML DÉCLARER UN ÉLÉMENT VIDE ous pouvez créer une règle de définition de données garantissant que la valeur d’un élément précis ne renferme aucune donnée pendant la phase d’exécution. Bien que cela semble a priori surprenant, les éléments vides se révèlent parfois précieux. V Certains éléments servent à rassembler des données conceptuellement, et non à définir des valeurs spécifiques eux-mêmes. Prenons l’exemple d’un élément appelé description_produit. Selon l’application et le produit impliqués, il se peut qu’aucune valeur ne convienne à cet élément. Néanmoins, il est possible que plusieurs attributs, considérés conjointement, aboutissent à une description du produit acceptable. Dans de telles situations, vous pouvez déclarer l’élément comme vide et définir plusieurs attributs. Dans notre exemple, vous déclareriez les attributs hauteur, poids, prix, couleur, etc., qui, pris dans leur ensemble, décriraient un produit particulier. Les attributs associés à un élément vide ne doivent pas eux-mêmes être vides pendant la phase d’exécution. Pour déclarer des attributs, consultez le chapitre 4. Un élément vide se déclare au moyen de la syntaxe suivante : <!ELEMENT nom_élément EMPTY> nom_élément est le nom de l’élément à définir comme vide. DÉCLARER UN ÉLÉMENT VIDE ⁄ Ouvrez le fichier DTD dans lequel vous désirez créer un élément vide. 48 ¤ Tapez <!ELEMENT. XML/03 08/12/00 11:06 Page 49 CRÉER UNE DTD I - DÉCLARER DES ÉLÉMENTS DE DTD Les éléments vides ne peuvent évidemment pas être associés à une valeur unique signifiante. En revanche, il est possible de les utiliser pour regrouper plusieurs attributs. En tant que développeur, vous êtes libre de définir vos données comme éléments ou comme attributs. Gardez simplement à l’esprit que pour un programme de traitement, l’accès aux éléments et leur gestion sont plus simples que ceux des attributs. Les éléments conviennent parfaitement à la description de données que vous devez fréquemment localiser et utiliser ; les attributs sont quant à eux parfaits pour la description de métadonnées (données sur d’autres données). ‹ Tapez le nom de l’élément qui devra rester vide. › Juste après le nom de l’élément, tapez EMPTY. 3 Voici un exemple d’élément vide, appelé infos_nutrition, et associé aux attributs non vides calories_pour_cent_grammes et teneur_vitamines. Les valeurs de ces derniers définissent les informations de nutrition (infos_nutrition) pour un produit donné : <!ELEMENT infos_nutrition EMPTY> <!ATTLIST infos_nutrition calories_pour_cent_grammes CDATA #REQUIRED teneur_vitamines CDATA #IMPLIED > ˇ Tapez le chevron de fermeture (>) de la balise <!ELEMENT>. Á Enregistrez le fichier. 49