Le générateur XML s'appuie sur un fichier XML physique ou sur des données XML en mémoire qui peuvent être automatiquement créées à l'aide d'un composant externe, les données XML en entrée reposant sur le fichier de définition de structure XML XMLBuilderDiagram dans les deux cas. Pour un modèle de diagramme basé sur le générateur XML, les noms des classes d'entités schématiques associées à ce modèle de diagramme doivent correspondre aux valeurs spécifiées pour les éléments <FeatureClassName> associés à chaque type NodeFeature, LinkFeature, NodeOnLinkFeature et SubLinkFeature présents dans les données XML en entrée.
Procédure de génération du générateur XML
Lorsque vous générez un diagramme en fonction du générateur XML, le générateur renseigne les classes d'entités schématiques, c'est-à-dire qu'il crée les entités schématiques attendues dans le diagramme comme suit :
- Pour chaque élément NodeFeature, LinkFeature, NodeOnLinkFeature et SubLinkFeature présents dans les données XML en entrée, il vérifie qu'une classe d'entités schématiques dont le nom correspond à la valeur indiquée pour sa balise <FeatureClassName> existe pour le modèle de diagramme.
Si une telle classe d'entités schématiques est présente pour le modèle de diagramme, il crée l'entité schématique associée à l'élément XML en mémoire, importe les valeurs de toutes les balises XML en entrée dans les attributs schématiques attendus et initialise la topologie et la géométrie.
- Si des règles schématiques sont spécifiées pour le modèle de diagramme associés, elles sont exécutées sur toutes les entités schématiques intégrées en mémoire.
- Si un algorithme de mise en page schématique par défaut est configuré pour le modèle de diagramme, l'algorithme est exécuté et la géométrie de toutes les entités schématiques en mémoire est mise à jour en conséquence.
- Toutes les entités schématiques en mémoire depuis le début du processus de génération sont enregistrées dans les classes d'entités schématiques du jeu de données schématiques.
- Toutes les entités schématiques créées sont interrogées à partir des classes d'entités schématiques, et le diagramme est affiché.
Ensuite, à tout moment et tout au long de son existence (c'est-à-dire jusqu'à ce qu'il soit supprimé du jeu de données schématiques, le diagramme peut être
- rouvert ;
- mis à jour, mis en page et enregistré ;
- mis à jour à partir d'une version actualisée des données XML en entrée de sorte que les modifications soient répercutées sur le diagramme.
Correspondance entre les balises XML et les champs de la classe d'entités schématiques
Les tableaux ci-dessous montrent dans quel champ de la classe d'entités schématiques chaque balise possible présente dans les données XML en entrée est migrée au cours du processus. Les noms de balise et de champ affichés en gras représentent des informations obligatoires dans les données XML en entrée :
- Informations présentes pour tout type XFeature
Balise dans les données XML en entrée Champ(s) affecté(s) dans la classe d'entités schématiques <ExternalUniqueID>
SCHEMATICTID
<DatasourceName>
DATASOURCEID
<UCID>
UCID
<UOID>
UOID
<USID>
USID
<RelatedContainerID>
RELATIONOBJECTID et RELATIONCLASSID
Correspondance entre les balises XML et les champs de la classe d'entités schématiques pour tout type XFeature - Informations spécifiques présentes pour l'élément NodeFeature
Balise dans les données XML en entrée Champ(s) affecté(s) dans la classe d'entités schématiques <InitialX>
INITIALX
<InitialY>
INITIALY
Correspondance entre les balises XML et les champs de classe d'entités schématiques pour tout type NodeFeature - Informations spécifiques présentes pour l'élément LinkFeature
Balise dans les données XML en entrée Champ(s) affecté(s) dans la classe d'entités schématiques <FromNode>
FROMTID
<ToNode>
TOTID
<Vertices>
SHAPE
Correspondance entre les balises XML et les champs de la classe d'entités schématiques pour tout type LinkFeature - Informations spécifiques présentes pour l'élément NodeOnLinkFeature
Balise dans les données XML en entrée Champ(s) affecté(s) dans la classe d'entités schématiques <InitialPosition>
INITIALPOSITION
<ReferenceLink>
REFERENCELINK
Correspondance entre les balises XML et les champs de la classe d'entités schématiques pour tout type NodeOnLinkFeature - Informations spécifiques présentes pour l'élément SubLinkFeature
Balise dans les données XML en entrée Champ(s) affecté(s) dans la classe d'entités schématiques <FromNode>
FROMTID
<ToNode>
TOTID
<ReferenceLink>
REFERENCELINK
Correspondance entre les balises XML et les champs de la classe d'entités schématiques pour tout type SubLinkFeature - Données dans la balise <PropertySetProperty>
En ce qui concerne les données de la balise <PropertySetProperty>, soit (1) un champ dont le nom correspond à la valeur <Key> dans les données XML en entrée existe déjà dans la classe d'entités schématiques et la valeur <Value> associée est stockée dans ce champ, soit (2) la valeur <Value> est stockée dans une propriété Ensemble de propriétés <Key> créée dans le champ PROPERTYSET au cours du processus.
pour en savoir plus sur la signification exacte de ces balises XML