Flux rss
Collection CommentCaMarche.net

Présentation des DTD

Le rôle de la DTD

XML permet d'utiliser un fichier afin de vérifier qu'un document XML est conforme à une syntaxe donnée. La norme XML définit ainsi une définition de document type appelée DTD (Document Type Definition), c'est-à-dire une grammaire permettant de vérifier la conformité du document XML. La norme XML n'impose pas l'utilisation d'une DTD pour un document XML, mais elle impose par contre le respect exact des règles de base de la norme XML.

Ainsi on parlera de:

  • document valide pour un document XML comportant une DTD
  • document bien formé pour un document XML ne comportant pas de DTD mais répondant aux règles de base du XML

Une DTD peut être définie de 2 façons :

  • sous forme interne, c'est-à-dire en incluant la grammaire au sein même du document
  • sous forme externe, soit en appelant un fichier contenant la grammaire à partir d'un fichier local ou bien en y accédant par son URL

Déclarer un élément

Pour pouvoir créer un document XML il est utile dans un premier temps de définir les éléments pouvant être utilisés, ou plus exactement les informations que l'on désire utiliser.

Ainsi pour définir un élément on utilisera la syntaxe suivante :

<! ELEMENT Nom Modèle >

Le paramètre modèle représente soit un type de donnée prédéfini, soit une règle d'utilisation de l'élément.

Les types prédéfinis utilisables sont les suivants :

Type prédéfini Description
ANY L'élément peut contenir tout type de données
EMPTY L'élément ne contient pas de données spécifiques
#PCDATA L'élément doit contenir une chaîne de caractères

Ainsi un élément nommé Nom contenant un type #PCDATA sera déclaré de la façon suivante dans la DTD :

<! ELEMENT Nom (#PCDATA) >
Nota Le mot clé #PCDATA doit nécessairement être écrit entre parenthèses, au risque sinon d'obtenir une erreur du parseur !

Cet élément pourra être écrit de la façon suivante dans le document XML :

<Nom>Pillou</Nom>

D'autre part il est possible de définir des règles d'utilisation, c'est-à-dire les éléments XML qu'un élément peut ou doit contenir. Cette syntaxe se fait à l'aide de notations spécifiques dont voici un récapitulatif :

Opérateur Signification Exemple
+
L'élément doit être présent au minimum une fois A+
*
L'élément peut être présent plusieurs fois (ou aucune) A*
?
L'élément peut être optionnellement présent A?
|
L'élément A ou l'élément B peuvent être présents A|B
,
L'élément A doit être présent et suivi de l'élément B A,B
()
Les parenthèses permettent de regrouper des éléments afin de leur appliquer les autres opérateurs (A,B)+

Ainsi on peut créer la déclaration suivante dans la DTD :

<!ELEMENT personne (nom,prenom,telephone),email? >

<!ELEMENT nom (#PCDATA) >

<!ELEMENT prenom (#PCDATA) >

<!ELEMENT telephone (#PCDATA) >

<!ELEMENT email (#PCDATA) >
Cette déclaration pourra donc donner un document XML du style :
<personne>

	<nom>Pillou</nom>

	<prenom>Jean-Francois</prenom>

	<telephone>555-123456</telephone>

	<email>webmaster@commentcamarche.net</email>

</personne>
ou bien
<personne>

	<nom>Pillou</nom>

	<prenom>Jeff</prenom>

	<telephone>555-542136</telephone>

</personne>

Déclarer des attributs

Il est possible d'ajouter des propriétés à un élément particulier en lui affectant un attribut, c'est-à-dire une paire clé/valeur. Ainsi avec XML la syntaxe pour définir un attribut est la suivante :

<! ATTLIST Elément Attribut Type >
Type représente le type de donnée de l'attribut, il en existe trois :
  • littéral: il permet d'affecter une chaîne de caractères à un attribut. Pour déclarer un tel type il faut utiliser le mot clé CDATA
  • l'énumération: cela permet de définir une liste de valeurs possibles pour un attribut donné, afin de limiter le choix de l'utilisateur. La syntaxe de ce type d'attribut est :
    <! ATTLIST Elément Attribut (Valeur1 | Valeur2 | ... ) >
    Pour définir une valeur par défaut il suffit de faire suivre l'énumération par la valeur désirée entre guillemets :
    <! ATTLIST Elément Attribut (Valeur1 | Valeur2 ) "valeur par défaut" >
  • atomique: il permet de définir un identifiant unique pour chaque élément grâce au mot clé ID.
Enfin chacun de ces types d'attributs peut être suivi d'un mot clé particulier permettant de spécifier le niveau de nécessité de l'attribut :
  • #IMPLIED signifie que l'attribut est optionnel, c'est-à-dire non obligatoire
  • #REQUIRED signifie que l'attribut est obligatoire
  • #FIXED signifie que l'attribut sera affecté d'une valeur par défaut s'il n'est pas défini. Il doit être immédiatement suivi de la valeur entre guillemets
Ainsi on pourra avoir une déclaration d'attribut du type :
<! ATTLIST disque IDdisk ID #REQUIRED type(K7|MiniDisc|Vinyl|CD)"CD" >

Ce qui signifie que l'on affecte à l'élément disque deux attributs IDdisk et type. Le premier attribut est de type atomique, il s'agit d'un identifiant unique obligatoire. L'élément type peut être soit K7, MiniDisc, Vinyl ou CD, sachant que ce dernier sera affecté par défaut...

Déclarer des notations

XML permet de définir une application par défaut à lancer pour ouvrir des documents non XML encapsulés dans le code XML.

Il est ainsi possible d'associer les images JPG au programme Paint Shop Pro (psp.exe) grâce à la syntaxe suivante :

<! NOTATION jpg SYSTEM "psp.exe">


Dernière modification le mardi 14 octobre 2008 à 17:40:31.
Ce document intitulé « Présentation des DTD » issu de Comment Ça Marche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.

Résultats pour Présentation des DTD

Déclaration d'entités dans les DTD Déclarer des entités XML permet de créer des entités, c'est-à-dire de déclarer un groupe d'éléments sous un nom afin de ne pas avoir à réécrire ces derniers plusieurs fois dans la DTD s'ils se répètent, dans le même esprit que les macros dans les... www.commentcamarche.net/contents/xml/xmldtd2.php3
Télécharger The Presentation Launcher The Presentation Launcher est une aplication de présentation de document PowerPoint. Il supporte les formats de fichier : ppt et pps. Il intègre une fonction de recherche avancée de document pps ou ppt. Il propose un aperçu des documents en temps réel... www.commentcamarche.net/telecharger/telecharger-34056816-the-presentation-launcher
Présentation du numéro de tél chez free (Résolu) Bonjour, depuis plus d'un mois la présentation du numéro chez free ne s'effectue pas alors que cela fonctionnait très bien auparavant.Bien sur pas de réponse de l'assistance malgré mes relances et pas question de tél aux tarifs proposés... www.commentcamarche.net/forum/affich-3757440-presentation-du-numero-de-tel-chez-free

Résultats pour Présentation des DTD

Powerpoint partagéPowerpoint partagé Pour que vos collaborateurs, vos prospects, vos clients, accèdent à vos présentations powerpoint, plusieurs solutions : en ligne sur des sites spécialisés, en partage lors de vos conférences virtuelles, sur l'intranet de votre... www.commentcamarche.net/faq/sujet-9707-powerpoint-partage

Résultats pour Présentation des DTD

Améliorer la présentation d'un site (Résolu)Bonjour, Je souhaiterais améliorer la présentation de mon forum actif. Il est super moche et je voudrais lui donner comme thème: voyage Donc mettre un fond, une police sympa, des photos etc... Quelqu'un pour m'aider s'il vous plait... www.commentcamarche.net/forum/affich-4281844-ameliorer-la-presentation-d-un-site
Présentation sur power point (Résolu)bonjour, svp j'ai une présentation à faire sur Power Point et je désire faire une page web comme diapositive, je sais pas comment faire, pour copier toute une page web comme elle est et de la coller ou bien la faire sur power point pour illuster... www.commentcamarche.net/forum/affich-1537789-presentation-sur-power-point
CD présentation (Résolu)Bonjour, Je voudrais savoir comment créer un CD (sur Mac ou encore mieux compatible Mac/PC) qui aurait à l'ouverture une présentation du style fenêtre avec image de fond. J'ai fait plusieurs tentatives, mais à chaque fois que j'ouvre le... www.commentcamarche.net/forum/affich-3778958-cd-presentation

Résultats pour Présentation des DTD

Télécharger The Presentation LauncherThe Presentation Launcher est une aplication de présentation de document PowerPoint. Il supporte les formats de fichier : ppt et pps. Il intègre une fonction de recherche avancée de document pps ou ppt. Il propose un aperçu des documents en temps réel... www.commentcamarche.net/telecharger/telecharger-34056817-the-presentation-launcher
Télécharger Powerpoint ViewerLa visionneuse PowerPoint 2007 permet d'afficher des présentations (Fichier PPT) avec de nombreuses fonctionnalités créées via PowerPoint 97 et versions ultérieures. Elle permet également d'ouvrir les présentations PowerPoint protégées par mot de... www.commentcamarche.net/telecharger/telecharger-34055344-powerpoint-viewer

Résultats pour Présentation des DTD

Sagem D26TD 26 26 T 26T 26T, Sans-fil, Présentation du numéro appelant, 130 heures d'autonomie en veille, Présentation du numéro appelant, Répertoire, Autonomie en conversation:8.0 heures, Autonomie en veille:130.0 heures, Fonction haut-parleur, Fonction... www.commentcamarche.net/guide-achat/sagem-d26t-775284-fiche-technique
Logicom Iloa 1500Sans-fil,Présentation du numéro appelant,100 heures d'autonomie en veille,50 m de portée en intérieur,300 m de portée en extérieur,Présentation du numéro appelant,Répertoire,Autonomie en conversation:10.0 heures,Couleur:Black,Autonomie en... www.commentcamarche.net/guide-achat/logicom-iloa-1500-997424-fiche-technique
Doro 225IPC Orange225 IPC, Présentation du numéro appelant, VoIP, Présentation du numéro appelant, Prise pour mains-libres, Nombre de combinés inclus:1, USB, Écran rétro-éclairé, Nombre de combinés inclus:1, Type:Classique, Téléphone numérique (DECT), Fonction VOIP, Poids www.commentcamarche.net/guide-achat/doro-225ipc-orange-685944-fiche-technique

Résultats pour Présentation des DTD

Introduction à XMLPrésentation de XML XML (entendez eXtensible Markup Language et traduisez Langage à balises étendu, ou Langage à balises extensible) est en quelque sorte un langage HTML amélioré permettant de définir de nouvelles balises. Il s'agit effectivement... www.commentcamarche.net/contents/xml/xmlintro.php3
Introduction au HTMLPrésentation du HTML Le HTML (« HyperText Mark-Up Language ») est un langage dit de « marquage » (de « structuration » ou de « balisage ») dont le rôle est de formaliser l'écriture d'un document avec des balises de formatage. Les balises permettent... www.commentcamarche.net/contents/html/htmlintro.php3
Tableur - L'interface d'ExcelPrésentation d'Excel Microsoft Excel est le tableur de la suite bureautique Microsoft Office. Pour le lancer il suffit de cliquer sur l'icone appropriée de votre menu Démarrer (sous Windows) ou bien de cliquer sur un fichier Excel (dont... www.commentcamarche.net/contents/tableur/tabinterface.php3