XML : eXtensible Markup Lanquage©s/partie 2... · XML : eXtensible Markup Lanquage Le DTD : La...

6
XML : eXtensible Markup Lanquage Le DTD : La Document Type Definition ou Définition de Type de Document, est un document permettant de décrire un modèle de document de type SGML ou XML. 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. Un document suivant les règles de XML est appelé document bien formé. Un document XML possédant une DTD et étant conforme à celle-ci est appelé document valide. Une DTD indique les noms des éléments pouvant apparaître et leur contenu, c'est-à-dire les sous- éléments et les attributs. En dehors des attributs, le contenu est spécifié en indiquant le nom, l'ordre, et le nombre de répétition. En revanche, les DTD ne permettent pas de poser des contraintes sur la valeur du texte comme « le contenu de l'élément X est un entier en décimal », ou encore «dans l'élément Y , toutes les séquences de blancs sont équivalentes à un seul espace». Une DTD peut définir des entités générales. Celles-ci ont les rôles suivants : - une référence à un fragment de document externe, typiquement un autre fichier, - une abréviation pour un fragment de texte répétitif, - un synonyme de caractère permettant des références par nom plutôt que par un code numérique. Oxygen XML : Pour la création de notre DTD nous avons utilisé lors du TP un logiciel qui est : Oxygene XML. - Oxygen est un éditeur XML multi-plateformes pour le développement de document en utilisant des langages de tels que le XML, le XSD, le XSL ou encore le DTD. - Il offre aux utilisateurs un puissant environnement intégré de développement. - Basé sur JAVA, l'interface graphique d'utilisateur de l'éditeur XML est facile à utiliser et offre des fonctionnalités robustes pour l'édition, la gestion de projet et la validation de sources structurées. - Oxygen supporte la sortie vers de multiples formats cibles, dont : le PDF, le PS, l'HTML, le TXT et bien sûr le XML. - Oxygen est sans dout l'éditeur XML de choix pour les développeurs et toutes autres personnes qui demandent une sortie de haute qualitée avec un environnement flexible, une source unique, et un formatage structuré.

Transcript of XML : eXtensible Markup Lanquage©s/partie 2... · XML : eXtensible Markup Lanquage Le DTD : La...

Page 1: XML : eXtensible Markup Lanquage©s/partie 2... · XML : eXtensible Markup Lanquage Le DTD : La Document Type Definition ou Définition de Type de Document, est un document permettant

XML : eXtensible Markup Lanquage

Le DTD :

La Document Type Definition ou Définition de Type de Document, est un document permettant de décrire un modèle de document de type SGML ou XML. 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.

Un document suivant les règles de XML est appelé document bien formé. Un document XML possédant une DTD et étant conforme à celle-ci est appelé document valide.

Une DTD indique les noms des éléments pouvant apparaître et leur contenu, c'est-à-dire les sous-éléments et les attributs. En dehors des attributs, le contenu est spécifié en indiquant le nom, l'ordre, et le nombre de répétition. En revanche, les DTD ne permettent pas de poser des contraintes sur la valeur du texte comme « le contenu de l'élément X est un entier en décimal », ou encore «dans l'élément Y, toutes les séquences de blancs sont équivalentes à un seul espace».

Une DTD peut définir des entités générales. Celles-ci ont les rôles suivants :

- une référence à un fragment de document externe, typiquement un autre fichier, - une abréviation pour un fragment de texte répétitif, - un synonyme de caractère permettant des références par nom plutôt que par un code numérique.

Oxygen XML :

Pour la création de notre DTD nous avons utilisé lors du TP un logiciel qui est : Oxygene XML.

- Oxygen est un éditeur XML multi-plateformes pour le développement de document en utilisant des langages de tels que le XML, le XSD, le XSL ou encore le DTD.- Il offre aux utilisateurs un puissant environnement intégré de développement.- Basé sur JAVA, l'interface graphique d'utilisateur de l'éditeur XML est facile à utiliser et offre desfonctionnalités robustes pour l'édition, la gestion de projet et la validation de sources structurées.- Oxygen supporte la sortie vers de multiples formats cibles, dont : le PDF, le PS, l'HTML, le TXT et bien sûr le XML. - Oxygen est sans dout l'éditeur XML de choix pour les développeurs et toutes autres personnes qui demandent une sortie de haute qualitée avec un environnement flexible, une source unique, et un formatage structuré.

Page 2: XML : eXtensible Markup Lanquage©s/partie 2... · XML : eXtensible Markup Lanquage Le DTD : La Document Type Definition ou Définition de Type de Document, est un document permettant

Une des interface de Oxygen XML Editor sur une plateforme de type Mac.

La même interface du logiciel mais cette fois-çi sur une plateforme Window.

Création d'un DTD dans Oxygéne :

Il existe deux méthodes pour la création d'un DTD :

- Première méthode :

Page 3: XML : eXtensible Markup Lanquage©s/partie 2... · XML : eXtensible Markup Lanquage Le DTD : La Document Type Definition ou Définition de Type de Document, est un document permettant

Une fois le fichier XML ouvert dans Oxygen XML Editor, ouvrir l'onglet Outil puis Générer/Convertir Schéma...

La page suivante s'ouvre : - dans la partie droite de la fenêtre l'on y indique le format d'entrées (pour le TP nous aurons donc un document XML) et l'emplacement du fichier que l'on traite,- dans la partie de gauche de la fenêtre l'on y indique le format de sortie désiré (toujours dans le cadre du TP nous choisissons XML 1.0 DTD) et l'emplacement de reception du nouveau fichier.

Page 4: XML : eXtensible Markup Lanquage©s/partie 2... · XML : eXtensible Markup Lanquage Le DTD : La Document Type Definition ou Définition de Type de Document, est un document permettant

Obtention du DTD de manière précise grâce à cette méthode.

- Deuxième méthode :

Une fois le document au format XML ouvert, ouvrir l'onglet DocuMent puis dans le menus ouvrir Document XML et pour finir dans le sous-menus ouvrir Enregistrer la structure du document.

Page 5: XML : eXtensible Markup Lanquage©s/partie 2... · XML : eXtensible Markup Lanquage Le DTD : La Document Type Definition ou Définition de Type de Document, est un document permettant

Une fois le fenêtre ici présente ouverte sélectionner votre format (toujours DTD pour le TP) puis enregistrer votre transformation.

Dans cette version de la création du DTD le fichier obtenu est trop « large », mais en revanche dans cette méthode une déclaration s'insère automatiquement dans le document XML de type :

<!DOCTYPE cv SYSTEM "cv2.dtd">

Conversion du DTD en schéma :

Le XML Schema amène plusieurs différences avec les DTD. Il permet par exemple de définir des domaines de validité pour la valeur d'un champ, alors que cela n'est pas possible dans une DTD, en revanche, il ne définit pas des entités. XML Schema est un document au format XML, alors que les DTD sont des documents au format SGML.

Page 6: XML : eXtensible Markup Lanquage©s/partie 2... · XML : eXtensible Markup Lanquage Le DTD : La Document Type Definition ou Définition de Type de Document, est un document permettant

Comme pour la première méthode lors de la transformation d'un document XML au format DTD, on ouvre le DTD puis l'onglet Outils et ensuite on ouvre la fenêtre dans le menus qui s'intitule Générer/Convertir schéma...Il suffit alors pour terminer l'opération de sélectionner le format XML 1.0 DTD en entrée et W3M XML Schéma en format de sorti.

Le schéma permet d'affiner par la suite les contraintes liés au fichier.