Réserver une Démo

SVP notez : Cette page d’aide n’est pas pour la dernière version d’Enterprise Architect. La dernière aide peut être trouvée ici.

Pré. Proc.

Compositions de schéma

Une composition de schéma fait référence à un ensemble restreint d'éléments tirés du modèle qui décrivent ensemble une entité unique qui n'a pas d'équivalent dans le modèle. Généralement, les compositions de schéma sont utilisées pour générer des fichiers de schéma tels que des fichiers XSD. En revanche, les compositions de modèles sont utilisées pour configurer le matériau comme base d'un sous-ensemble "transformer" - par exemple lors de la création d'un sous-ensemble de modèles NIEM.

Définir le contenu du schéma

Ces étapes vous guident à travers la procédure de base de composition de types dans un profil de schéma et montrent comment vous pouvez restreindre le contenu des éléments pour répondre aux exigences du message.

Ajouter des cours

Faites glisser les éléments de classe requis de la fenêtre Navigateur vers le panneau 'Classes'. Lorsque vous ajoutez une classe :

  • Son ascendance est répertoriée dans la section "Héritage" dans le panneau du milieu
  • Ses attributs sont répertoriés dans la section « Héritage », avec une case vide à côté de chacun ; Les entrées d'association et d'agrégation sont nommées en fonction du nom du rôle sur le connecteur
  • Son chemin de structure de modèle est affiché sous le panneau "Classes"
Adding classes to a profile in the Schema Composer

Sélectionnez Propriétés

Editing a class in the Schema Composer

Chaque fois que vous sélectionnez une classe dans la liste 'Classes', ses attributs et l'ascendance du modèle sont répertoriés dans la liste ' Attributes '. Cochez la case de chaque attribut pour définir les éléments de ce type. Lorsqu'il est choisi, le type de l'attribut est ajouté automatiquement au schéma, apparaissant dans la liste 'Classes' et le panneau 'Schéma' à droite.

Lorsqu'un attribut est décoché, le type n'est pas automatiquement supprimé. Les types peuvent être supprimés à l'aide du menu contextuel Classe. Il convient de noter qu'à chaque fois qu'une classe est sélectionnée, toutes les références à la classe sont affichées dans le panneau d'état, ce qui vous permet de révision rapidement toute utilisation de classe.

The Schema Composer provides feedback when an item is selected

Héritage

Si vous privilégiez ou prévoyez un besoin d'héritage dans le schéma que vous préparez, il serait logique de commencer la composition par les ancêtres d'abord, puis de les réutiliser au fur et à mesure que les classes enfants sont ajoutées. La méthode n'est pas figée. Vous pouvez à tout moment passer d'un modèle d'héritage à une composition agrégée ou inversement. Voici une brève description de la disposition de l'héritage dans le Compositeur de Schéma .

Le Compositeur de Schéma offre une flexibilité dans la gestion des successions. Par exemple, vous pouvez choisir d'agréger les attributs sélectionnés de la classe et de son parent, tout en choisissant d'hériter du grand-parent. Cependant, lorsque vous choisissez d'utiliser l'héritage, vous choisissez également d'hériter de la forme restreinte de ce type. Lorsqu'un ancêtre est sélectionné dans cette liste, le schéma XML généré affiche un élément d'extension identifiant cet ancêtre. Un seul ancêtre peut être sélectionné.

Cliquez sur le bouton Mettre à jour pour valider et enregistrer votre profil de schéma.

S'il y a des problèmes avec le profil, ils sont identifiés dans le panneau d'état en haut à droite de l'écran.

Types redéfinis

L'un des problèmes courants avec la composition de schéma est l'exigence de pouvoir faire varier une description de type pour répondre aux diverses demandes des instances qu'un schéma décrit. Un véhicule, par exemple, peut être décrit par sa marque, son modèle et son prix par un élément de type Camion , mais par son année, son modèle et sa couleur par un élément de type Berline . Le problème est que nous n'avons peut-être qu'une seule classe de véhicules à notre disposition. Pour résoudre ce problème, le Compositeur de Schéma vous permet de cloner la classe de véhicules et de lui donner un autre nom. Vous pouvez ensuite attribuer cette version de Véhicule à toute propriété dont le type est Véhicule . Le type créé n'est disponible que dans le domaine du schéma - le modèle n'est pas modifié.

Pour créer une nouvelle définition d'un type, sélectionnez d'abord la classe dans la liste 'Classes', puis cliquez-droit dessus et choisissez l'option 'Redéfinir le Type '. Saisissez un nom unique pour ce type et appuyez sur la touche Entrée. Vous pouvez ensuite définir ou restreindre ce type indépendamment, comme vous le feriez pour n'importe quelle classe.

Redefined Types

Éléments racine

Lorsque le schéma est généré, un seul élément de niveau supérieur représentant le message est généré. Le corps ou les éléments de cet élément de niveau supérieur sont les classes marquées comme éléments racine. La cardinalité de ces éléments racine peut être ajustée. Pour marquer un Type comme élément racine ou restreindre sa cardinalité, cliquez-droit sur le Type dans la liste et utilisez ces options du menu contextuel :

  • Définir l'élément comme racine - les éléments racine forment le corps de l'élément de niveau supérieur représentant le message/profil
  • Modifier la cardinalité de l'élément racine - définir le nombre minimum et maximum d'instances
  • Supprimer l'attribut racine de l'élément - supprime la marque racine de la classe
  • Supprimer l'élément sélectionné - supprimer l'élément sélectionné du schéma
  • Rechercher dans Projet Navigateur - localiser et mettre en surbrillance l'élément dans la fenêtre Navigateur

Restrictions de propriété

Restrictiing properties in the Schema Composer

Dans la liste ' Attributes ', cliquez-droit sur une propriété sélectionnée et utilisez le menu contextuel pour ajouter, modifier ou supprimer une restriction de propriété. Utilisez cette fonctionnalité pour :

  • Modifier la cardinalité de la propriété
  • Redéfinir le type de propriété
  • Activer et limiter les choix disponibles pour cette propriété
  • Marquer une propriété à émettre en tant que définition d'élément en ligne
  • Marquer une propriété à émettre 'Par référence'

Cardinalité

La cardinalité d'une propriété peut être davantage restreinte par rapport à son homologue modèle, mais elle ne peut pas être moins restrictive. La cardinalité peut être modifiée pour n'importe quelle classe d'élément racine et n'importe quelle propriété de classe.

Redéfinition du Type

Lorsqu'une Classe est redéfinie au sein du Compositeur de Schéma , elle crée un nouveau type. Le nouveau type est un clone de l'original, mais porte un nom unique pour le schéma. Un type d'énumération Payment, par exemple, peut être redéfini comme CardPayment pour mieux répondre à l'objectif du schéma. Le nouveau type est une restriction de l'original en ce sens qu'aucun nouvel attribut ne peut lui être ajouté. D'autres propriétés qui partagent ce type et sont également restreintes en spécifiant le nouveau type dans leur boîte de dialogue de restriction . Des types redéfinis tels que des sous-types peuvent être proposés comme éléments de choix supplémentaires dans la restriction d'autres propriétés.

Spécialisations

Lorsque des spécialisations d'un type de propriété sont présentes, ces sous-types seront disponibles dans la boîte de dialogue "Restriction" . Lorsque plus d'une spécialisation est sélectionnée, celles-ci apparaîtront comme des éléments de choix dans le schéma. Lorsqu'un seul est choisi, la propriété affichera ce sous-type dans le schéma.

Éléments en ligne

Un type de propriété sera émis en tant que définition en ligne lorsque cette case est cochée.

Par référence

Une propriété prendra la forme 'Par référence' lorsqu'elle sera émise dans le schéma. Le formulaire 'Par référence' émet un type complexe en ligne qui définit un seul attribut nommé 'ref' de type ' string '.

Contraintes de propriété - Facettes

Les facettes sont prises en charge dans le Profil Générique Compositeur de Schéma . Les sources des facettes sont la Valeur Étiquetés sur une propriété. Valeur Étiquetés sont reconnues comme des facettes si elles désignent une facette contraignante issue de la spécification XML Schema ; Les mots clés de validation JSON sont également reconnus.

Contraindre les facettes du schéma XML :

  • longueur
  • Longueur minimale
  • longueur maximale
  • motif
  • énumération
  • espaceblanc
  • maxInclus
  • maxExclusif
  • minExclusif
  • minInclus
  • totalChiffres
  • fractionChiffres

Mots-clés de validation dans JSON :

  • Nombre et integer
    -  multiple de
    -  le minimum
    - maximum
    - exclusifMinimum
    - exclusifMaximum
  • cordes
    -  Longueur minimale
    -  longueur maximale
    -  motif
  • tableaux
    - éléments minimum
    - maxItems
    - éléments uniques