Génération de schémas XML à partir de fichiers DTD

La génération d'un schéma XML à partir d'un fichier DTD vous permet de créer un schéma XML automatiquement rempli avec les éléments et les attributs provenant de votre fichier DTD. Cela peut vous permettre de gagner du temps si vous voulez utiliser un schéma XML plutôt qu'un fichier DTD pour valider votre fichier XML, tout en utilisant des règles déjà configurées dans votre fichier DTD.

Les instructions suivantes ont été écrites dans la perspective Ressource, mais elles fonctionneront également dans de nombreuses autres perspectives.

Pour générer un schéma XML à partir d'un fichier DTD, effectuez les opérations suivantes :

  1. Dans la vue Navigateur, cliquez avec le bouton droit de la souris sur votre DTD et cliquez surGénérer > Schéma XML.
  2. Sélectionnez le dossier ou le projet qui contiendra le schéma.
  3. Acceptez le nom par défaut ou saisissez-en un nouveau et cliquez sur Suivant.
  4. Si vous voulez créer un schéma XML qui contiendra votre fichier DTD et tout fichier DTD qu'il référence, cliquez sur le bouton d'optionCréer un schéma XML incluant les fichiers DTD.
  5. Sinon, si vous voulez créer un schéma individuel pour votre fichier DTD et chaque fichier DTD qu'il référence, cliquez sur le bouton d'option Créer un schéma XML pour chaque fichier DTD. Si vous sélectionnez cette option, chaque schéma XML aura le même nom que le DTD référencé à partir duquel il a été généré. Par exemple, si votre DTD est appelé Greetings.dtd et qu'il référence Hello.dtd et Goodbye.dtd, vous aurez un schéma généré à partir de Greetings.dtd (avec le nom que vous avez spécifié pour lui) et deux schémas supplémentaires appelés Hello.xsd et Goodbye.xsd.
  6. Cliquez sur Terminer.

Vos schémas apparaissent dans la vue Navigateur. Ils porteront le même nom que le fichier DTD à partir duquel ils ont été générés (si vous avez accepté la valeur par défaut dans la zone Nom de fichier lorsque vous avez généré le schéma XML).

Les entités de votre fichier DTD ne se retrouveront pas dans le schéma XML (puisque les entités ne sont pas prises en charge dans les schémas XML). Cependant, les éléments et attributs qui faisaient référence à une entité transposeront la valeur de l'entité au schéma XML.

Par exemple, vous avez un DTD appelé "Legal" contenant une entité appelée "Copyright". La valeur de l'entité est "Copyright 2004. MyCompany Publishing". Dans votre DTD, vous avez un élément appelé "MyCopyright" qui se réfère à l'entité Copyright. Après avoir créé le schéma XML, l'entité Copyright n'apparaîtra pas dans le schéma XML, mais sa valeur sera transposée (c'est-à-dire, MyCopyright aura la valeur : Copyright 2004. MyCompany Publishing).

Tous les éléments et attributs qui existaient dans votre fichier DTD existeront dans le fichier de schéma XML.

Les éléments de votre DTD avec un modèle de contenu de (#PCDATA) (et sans attributs) apparaîtront vides dans l'éditeur de schéma XML. Ils sont indiqués comme ayant des types simples intégrés de string. C'est-à-dire, un élément DTD ayant une valeur de (#PCDATA) mappera vers un élément de schéma XML avec un type primitif de schéma XMLstring.

Remarque : Lorsque vous générez un schéma XML à partir d'un fichier DTD contenant des éléments en hébreu ou en arabe, certains noms d'éléments peuvent être encodés avec leurs valeurs d'encodage en arabe ou en hébreu hexadécimales équivalentes. Pour éviter ce problème, modifiez l'attribut d'encodage du fichier de schéma XML ou du fichier DTD d'origine en UTF-8 avant de procéder à la génération : la déclaration XML devrait donc être la suivante : <?xml version="1.0" encoding="UTF-8"?> La liste des valeurs d'encodage affectées est : ISO-8859-8-I, ISO-8859-8, Windows-1256 et ISO-8859-6.
Tâches associées
Création de DTD

Retour d'informations