Canalblog
Editer l'article Suivre ce blog Administration + Créer mon blog
Publicité
mli07 Terminographie
Derniers commentaires
Archives
8 décembre 2010

Ecrire une DTD (Définition du Type de Document)

Source : ISTI - D.E.S.S. TIL : 12

La DTD permet de préciser quel est le modèle de données utilisé. Elle définit des éléments, des attributs et des entités.

1 Définition des éléments

De manière générale, la définition des éléments adopte la forme suivante :
    <!ELEMENT nom de l’élément ( contenu de l’élément )>

soit :
    <!ELEMENT nom de l’élément ANY>
    <!ELEMENT nom de l’élément EMPTY>
    <!ELEMENT nom de l’élément (#PCDATA)>
    <!ELEMENT nom de l’élément (élément1)>
    <!ELEMENT nom de l’élément (élément1, élément2, élément3…)>
    <!ELEMENT nom de l’élément (élément1 | élément2 | élément3 | …)>
    <!ELEMENT nom de l’élément (élément1?)>
    <!ELEMENT nom de l’élément (élément1+)>
    <!ELEMENT nom de l’élément (élément1*)>
.
DÉFINIR LE CONTENU DE L’ÉLÉMENT

    ANY N’importe quel contenu autorisé (à éviter).
    EMPTY Aucun contenu n’est autorisé.
    (#PCDATA) Abréviation de Parsed Character Data. N’importe quel(s) caractère(s) : lettres, chiffres, symboles et entités.
    (élément1) L’élément est un « parent » qui contient nécessairement un autre élément, qui est son « enfant ».
    (élément1, élément2, élément3…) L’élément est un « parent » qui contient nécessairement plusieurs « enfants ». Les virgules indiquent l’ordre dans lequel doivent se succéder ces enfants : elles équivalent à ET.
    (élément1 | élément2 | élément3 | …) L’élément est un « parent » qui contient nécessairement un « enfant » parmi plusieurs possibles. Les signes | indiquent qu’un seul des enfants peut être utilisé : ils équivalent à un OU exclusif.
    (élément1?)  L’élément enfant peut être utilisé 0 ou 1 fois. Si ce caractère est placé après les parenthèses d'une liste de contenu, il s'applique à tout le contenu : <!ELEMENT nom de l’élément (élément1, élément2, élément3…)?>.
    (élément1+) L’élément enfant doit être utilisé une ou plusieurs fois. Si ce caractère est placé après les parenthèses d'une liste de contenu, il s'applique à tout le contenu : <!ELEMENT nom de l’élément (élément1, élément2, élément3…)+>
    (élément1*) L’élément enfant est optionnel. Il peut être utilisé 0, 1 ou plusieurs fois. Si ce caractère est placé après les parenthèses d'une liste de contenu, il s'applique à tout le contenu : <!ELEMENT nom de l’élément (élément1, élément2, élément3…)*>

2 Définition des attributs

Les attributs doivent être énumérés dans la DTD.
La définition des éléments adopte la forme suivante : <!ATTLIST nom de l’élément nom de l’attribut type d’attribut conditions de présence>

exemples :
    <!ATTLIST population année CDATA #REQUIRED>
    <!ATTLIST population année CDATA #FIXED "2002">
    <!ATTLIST nom catgram (sm | sf) # REQUIRED >
    <!ATTLIST étymon langue CDATA #IMPLIED>

2.1 LE TYPE DE L’ATTRIBUT

CDATA  Character Data : n’importe quelle combinaison de caractères non réservés.
(valeur1 | valeur2 | valeur3 | …) Liste des valeurs possibles pour l’attribut, une seule pouvant être utilisée à a fois dans le document XML.

2.2 LES CONDITIONS DE PRÉSENCE DE L’ATTRIBUT

    FIXED L’attribut doit nécessairement posséder cette valeur.
    REQUIRED L’attribut doit nécessairement posséder une valeur.
    IMPLIED L’attribut n’a pas de valeur par défaut et celle-ci peut même être omise.

3 Définition d’attributs à valeur non répétable dans le document (ID)

Les valeurs des attributs ID ne peuvent pas être répétées dans un même document XML.
    <!ATTLIST concept num ID #REQUIRED>
Attention, les attributs ID doivent respecter les règles d’écriture : ils ne peuvent pas commencer par un chiffre.

4 Définition d’attributs possédant la valeur d’un attribut ID (IDREFS)

Il s’agit de faire en sorte qu’un attribut ne puisse posséder comme valeur qu’une référence à un attribut ID.
    <!ATTLIST homonymes renvoi IDREFS #REQUIRED>
Ce mécanisme permet de donner plusieurs ID comme valeur d’un attribut.
    <hyponymes renvoi="T033 T156 T596"/>

4 Définition d’attributs dont la valeur doit respecter les normes d’écriture XML (NMTOKEN)

Leur usage peut être utile lorsqu’on veut obliger à respecter un certain nombre de contraintes, comme par exemple interdire une valeur contenant un espace blanc.
    <!ATTLIST aspect couleur_dominante NMTOKEN #IMPLIED>
Appliqué à un fichier XML :
    Valide : <aspect couleur_dominante="orange">
    Non valide : <aspect couleur_dominante="orange foncé">

5 Définition d’entités

Les entités sont des abréviations qui permettent de représenter un contenu plus long sous la forme &abréviation; (cf. 1.4).

5.1 ENTITÉS INTERNES À LA DTD

Dans la DTD : <!ENTITY isti "Institut supérieur de traducteurs et interprètes">
Dans le texte : L’&isti; est situé à Bruxelles.
Dans le navigateur : L’institut supérieur de traducteurs et interprètes est situé à Bruxelles.

5.2 ENTITÉS EXTERNES À LA DTD

Il est possible de créer une entité qui renvoie à un document externe.
Il convient d’abord à veiller à ce que la déclaration xml du fichier XML comporte bien la mention standalone="no".
Dans la DTD, on inclut la mention suivante, dans laquelle SYSTEM indique que l’abréviation est définie dans un autre fichier :
    <!ENTITY abréviation SYSTEM nom et emplacement du fichier>

exemple :     <!ENTITY bob SYSTEM bob.ent>

Le fichier extérieur bob.ent doit être un simple fichier texte contenant le texte à insérer, éventuellement balisé.

exemple de contenu du fichier bob.ent : <source>(Nouveau Petit Robert 2003)</source>

Dans le texte :
    <entrée>
    <nom>lexicographe</nom>
    <def>Personne qui fait un dictionnaire de langue</def>
    &bob;
    </entrée>

Dans le navigateur :
    <entrée>
    <nom>lexicographe</nom>
    <def>Personne qui fait un dictionnaire de langue</def>
    <source>(Nouveau Petit Robert 2003)</source>
    </entrée>

BIBLIOGRAPHIE
    Popescu-Bellis (A.), 2003 : Cours XML pour le DESS en TAO et le DEA en TIM : L'impact d'XML pour les technologies multilingues, Genève : Université de Genèvre, www.issco.unige.ch/staff/andrei/xml/ index.html.
    Castro (E.), 2001 : XML pour le World wide web, Paris : Peachpit (Quickstar visuel), exemples téléchargeables à l’adresse www.informit.fr/rubriques/download.asp

Publicité
Commentaires
mli07 Terminographie
  • Terminographie. Recensement et étude des termes appartenant aux nomenclatures scientifiques et techniques d'une langue. Terminotique. Terminologie informatisée. Dictionnairique. Discipline traitant de la conception des dictionnaires
  • Accueil du blog
  • Créer un blog avec CanalBlog
Publicité
Publicité