HOPEX UML : HOPEX XML Schemas : Génération XSD : Génération XSD : Espaces de nommage et schémas
   
Génération XSD : Espaces de nommage et schémas
 
Générer l’espace de nommage
Autres paquetages
Génération XSD : La classe schéma
Utiliser des éléments externes au schéma
Générer l’espace de nommage
Un espace de nommage est représenté par un paquetage de stéréotype "XML Document Definition". Les paquetages de ce type contiennent une ou plusieurs classes de stéréotype "XML Document Definition Root" et un certain nombre de classes définissant les éléments qui forment le vocabulaire de l’espace de nommage.
Le paramètre de génération "XDD urn" du paquetage correspond à l'identificateur de l’espace de nommage (urn).
*Il est impératif que dans la hiérarchie des paquetages détenteurs d'une classe, un seul paquetage ait le stéréotype XML Document Definition. En d'autre termes, un espace de nommage ne peut détenir un autre espace de nommage ou être détenu par un autre espace de nommage.
Autres paquetages
Vous pouvez utiliser les paquetages non interprétés comme espaces de nommage à des fins d'organisation. Vous pouvez regrouper des paquetages représentant des espaces de nommage dans un ou des paquetages qui ne sont pas de stéréotype "XML Document Definition". De même, les classes définissant le vocabulaire peuvent être "rangées" dans des paquetages inclus dans le paquetage "espace de nommage".
Génération XSD : La classe schéma
Les schémas sont représentés par des classes de stéréotype "XML Document Definition Root".
Le vocabulaire contenu par le schéma est relié à la classe schéma par la patte "XML Document Definition Tag", ce qui permet de partitionner l’espace de nommage. Si des définitions de balise sont contenues dans le paquetage "espace de nommage" sans être reliées à une classe schéma, les définitions de balise apparaîssent dans chaque schéma de l’espace de nommage.
La classe racine sert également de point de départ pour les déclarations d'éléments ou d'attributs globaux (respectivement associés aux rôles de classes UML et aux attributs de classes UML).
Vous pouvez paramétrer une classe schéma sous l’onglet XSD de sa fenêtre de propriétés :
XSD Name : nom de la classe schéma dans le cadre de la génération XSD. Le nom du fichier généré contenant le schéma est calculé à partir du nom de la classe schéma (ou du paramètre "XSD Name" s’il est présent).
XSD AttributeFormDefault : correspond à l'attribut "attributeFormDefault".
XSD BlockExtension, XSD BlockRestriction et XSD BlockSubstitution : permettent de définir les valeurs de l'attribut "blockDefault". La valeur de l'attribut "blockDefault" est une combinaison des valeurs "extension", "restriction" et "substitution".
XSD ElementFormDefault : correspond à l'attribut "elementFormDefault".
XSD FinalExtension et XSD FinalRestriction : permettent de définir les valeurs de l'attribut "finalDefault". La valeur de l'attribut "finalDefault" est une combinaison des valeurs "extension" et "restriction".
XSD id : valeur de l'attribut "id".
XSD version : correspond à l'attribut "version".
XSD xml:lang : correspond à l'attribut "xml:lang".
specificationLocation : désigne l’emplacement du schéma. Il est notamment utilisé pour les imports et inclusions.
Sous l’onglet Alias, vous pouvez relier un espace de nommage à la classe schéma. Voir "Import et inclusion d'autres schémas".
Utiliser des éléments externes au schéma
Vous pouvez utiliser des éléments externes au schéma.
Ces éléments sont :
Les élements globaux
Les attributs globaux
Les "attributeGroup" (définition de groupes d'attributs)
Les groupes d’éléments (définition de groupes modèles)
Les types simples et les types complexes
Vous pouvez également déclarer d’autres schémas et espaces de nommage dont vous souhaitez utiliser le vocabulaire. Voir "Import et inclusion d'autres schémas".