Rétro-génération XSD : Schema
La balise "schema" est la racine du document XML. Elle définit la structure du schéma XSD.
Le schéma est modélisé par une classe de stéréotype "XML Document Definition Root".
Espace de nommage
Son espace de nommage est modélisé par un paquetage UML de stéréotype "XML Document Definition". Ce paquetage a pour nom la valeur de l'attribut "targetNamespace" (le nom peut être modifié). Il contient l'ensemble des schémas le définissant comme espace de nommage. L'espace de nommage est caractérisé de manière unique par son urn. L'urn est modélisé par l'attribut "XDD Urn" qui se trouve dans l'onglet de génération XML.
Il se peut qu’un schéma n’ait pas d'espace de nommage. Dans ce cas, le schéma est rétro-généré dans le paquetage de stéréotype "XML Document Definition" n'ayant pas d'urn. Si le paquetage n'existe pas, il est créé et porte le nom de "NoTargetNamespace".
Attributs de "schema"
• Nom : le schéma XSD n'a pas de nom. Le nom de la classe devient donc le nom du fichier contenant le schéma. Pour générer un nom différent de celui de la classe, indiquez le nouveau nom dans le paramètre "XSD Name".
• AttributFormDefault : est modélisé par le paramètre de génération XSD AttributeFormDefault. Il prend la valeur "qualifié" ou "non qualifié".
• ElementFormDefault : est modélisé par le paramètre de génération XSD ElementFormDefault. Il prend la valeur "qualifié" ou "non qualifié".
• BlockDefault : est modélisé par trois paramètres de génération XSD BlockExtension, XSD BlockRestriction, et XSD BlockSubstitution. Chacun de ces paramètres prend la valeur "oui" ou "non" suivant que le schéma définit un blockDefault ayant pour valeur extension, restriction, substitution ou pas.
• FinalDefault : est modélisé par les deux paramètres de génération XSD FinalExtension et XSD FinalRestriction. Chacun de ces paramètres prend la valeur "oui" ou "non" suivant que le schéma définit un finalDefault ayant pour valeur extension, restriction ou pas.
• TargetNamespace : est modélisé par le paquetage détenteur du schéma.
• Version : est modélisé par l'attribut XSD Version.
• Xml :lang : est modélisé par l'attribut XSD xml :lang. Ce paramètre a des valeurs prédéfinies comme "fr", "de", "en-GB", "en-US". Cette liste peut être étendue.
• SchemaLocation : cet attribut définit l'emplacement physique du schéma. Il est modélisé par le paramètre XSD SpecificationLocation.