W3C XML Schema Definition (XSD) 1.0 - Import
Prérequis du pont
Ce pont :n'est supporté que sous Microsoft Windows.
Spécifications du pont
Fournisseur | World Wide Web Consortium |
Nom de l'outil | XML Schema Definition (XSD) |
Version de l'outil | 1.0 |
Site Web de l'outil | http://www.w3.org/XML/Schema |
Méthodologie supportée | [Modélisation XML] Data Store (Modèle de données physique) via fichier XML XSD |
Profiling de données | |
Collecte incrémentale | |
Collecte multi-modèle | |
Navigation dans le référentiel distant pour sélectionner un modèle |
SPÉCIFICATIONS
Outil : World Wide Web Consortium/XML Schema Definition (XSD) version 1.0 via un fichier XML XSD
Consultez http://www.w3.org/XML/Schema
Métadonnées : [Modélisation XML] Data Store (Modèle de données physique)
Composant : W3cXmlXsd version 11.2.0
VUE D'ENSEMBLE
PRÉREQUIS
n/a
FOIRE AUX QUESTIONS
Q : Quelle version de schéma ce pont supporte-t-il ?
R : Ce pont supporte la recommandation W3C XML Schema 1.0 depuis le 2 mai 2001 telle que définie par l'espace de noms suivant dans la plupart des implémentations : <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">. Si votre fichier XSD définit un espace de noms différent non reconnu par ce pont, vous pouvez essayer de le remplacer par l'espace de noms ci-dessus.
Ce pont supporte le schéma Microsoft XML Data Reduced (XDR), tel que défini par l'espace de noms suivant : <Schema xmlns="urn:schemas-microsoft-com:xml-data"
Q : Quels sont les concepts de schéma supportés par ce pont ?
R : La plupart des concepts de la spécification W3C XML Schema 1.0 (XSD) comme : schéma, élément, attribut, simpleType, complexType, groupe, attributeGroup, restriction, extension, simpleContent, complexContent.
La plupart des concepts de la spécification Microsoft XML Data-Reduced Schema (XDR) comme : schéma, ElementType, AttributeType, élément, attribut, groupe.
Q : Quelles sont les restrictions actuelles de ce pont ?
R : Le schéma ne doit pas être intégré à un document XML d'instance, il doit être placé dans un fichier de schéma distinct.
Il ne supporte pas encore le standard W3C XML Document Content Description (DCD).
Les restrictions dans la spécification W3C XML Schema 1.0 (XSD) incluent :
- les clés et keyrefs qui impliquent une syntaxe XPath complexe ne sont pas supportées.
- les clés et keyrefs dont les champs font référence à des attributs XSD sont supportées, celles faisant référence à des éléments XSD sont également supportées si vous définissez le paramètre de pont "Réduire le niveau" sur la valeur "Un seul attribut" ou supérieure.
- le mécanisme d'import est seulement partiellement supporté. Les éléments importés sont juste ajoutés au modèle actuel, généralement sans tenir compte de l'espace de noms XML.
- Les autres concepts non supportés sont unique, appInfo, redefine.
LIMITATIONS
Consultez les limitations générales connues actuellement sur https://metaintegration.com/Products/MIMB/Help/#!Documents/mimbknownlimitations.html
SUPPORT
Fournissez un package de dépannage avec le log de débogage. Le log de débogage peut être défini dans l'interface ou dans conf/conf.properties avec MIR_LOG_LEVEL=6
Paramètres du pont
Nom du paramètre | Description | Type | Valeurs | Défaut | Périmètre | |||||
Fichier | Le pont utilise le fichier de schéma XML comme entrée. | Fichier |
|
Éléments obligatoires | ||||||
Nom du contenu d'éléments | Les éléments XML peuvent transporter des données textuelles, en plus d'attributs nommés et de sous-éléments. La spécification XML DTD fait référence à cette combinaison de données de contenu sous #PCDATA. Le comportement standard du pont est le suivant : - convertit les éléments XSD en objets d'entité/de table relationnels ; - convertit les attributs XSD en objets d'attribut/de colonne relationnels ; - pour les éléments XSD qui contiennent du texte directement, crée un attribut/une colonne supplémentaire pour transporter ce texte et pour que son nom puisse être personnalisé avec ce paramètre. Des comportements plus avancés incluent la réduction d'algorithmes, par exemple pour traiter un élément XSD comme un attribut/une colonne relationnel(le) lorsqu'utilisé(e) par un autre élément XSD. |
Chaîne de caractères | #PCDATA | Éléments obligatoires | ||||||
Niveau de réduction | Par défaut, le pont crée une classe pour chaque élément XSD (ou XDR ElementType). Pour réduire le nombre d'objets, vous pouvez réduire plusieurs classes simultanément. Cette option vous permet de spécifier quand réduire une classe : "None (Aucune)" Aucune réduction : chaque élément XSD devient une classe et chaque attribut XSD devient un attribut. "Empty (Vide)" Seules les classes vides (c'est-à-dire sans attribut) sont réduites dans leurs classes parentes. "Single Attribute (Attribut seul)" Seuls les éléments XSD avec un seul attribut et aucun enfant sont réduits dans leur classe parente. "No Children (Aucun enfant)" Tout élément XSD n'ayant pas d'élément enfant est réduit dans sa classe parente. "All (Tous)" Tous les éléments XSD pour lesquels il est possible d'effectuer une réduction sont réduits dans leur classe parente. |
ÉNUMÉRATION |
|
None (Aucun(e)) | ||||||
Réduire les éléments avec astérisque | Détermine si les éléments XML avec un lien "*" entrant doivent être réduits dans leur classe parente. "True (Vrai)" Réduire dans leur classe parente. "False (Faux)" Ne pas réduire dans leur classe parente. |
BOOLEAN | false | |||||||
Type de classe | Ce paramètre définit comment les relations entre les éléments XSD doivent être interprétées. Si vous convertissez le XSD en un modèle d'objet UML, utilisez cette option pour déterminer si un type de classe (concept UML) doit être créé lors de la réduction d'un élément dans son élément parent. "True (Vrai)" Créez des types de classe UML chaque fois que cela est possible. Vous pouvez définir cette valeur lors d'une conversion vers un outil de modélisation d'objet UML. "False (Faux)" Insérez les attributs de l'élément à réduire dans son élément parent. Définissez cette valeur lors de la conversion vers un outil de modélisation de données relationnel. |
BOOLEAN | false | |||||||
Any | Détermine s'il faut créer une classe/entité pour le pseudo-élément "ANY". "True (Vrai)" Représentez "xs:any" en créant une classe/entité. "False (Faux)" Ignorez tous les "xs:any". Par exemple, dans le fragment XSD suivant : <xs:sequence> <xs:element name='tag' type='xs:string'/> <xs:any minOccurs='0'/> </xs:sequence> le contenu de xs:any peut être représenté ou ignoré entièrement. |
BOOLEAN | true | |||||||
Générer des identifiants | Détermine si des attributs supplémentaires doivent être générés pour créer des clés primaires et étrangères. "True (Vrai)" Générez un attribut artificiel pour chaque élément de XSD pour représenter cette relation clé primaire-clé étrangère. "False (Faux)" Le modèle ne contiendra pas de clé. |
BOOLEAN | false | |||||||
Importer substitutionGroup en tant que | Vous permet de spécifier si l'héritage est représenté en tant que généralisation ou si les attributs hérités sont dupliqués (généralisés) dans la sous-classe. "Generalization (Généralisation)" Représentez l'héritage en tant que généralisation. "Roll down (Généraliser)" Généralisez les attributs du complexType parent dans le complexType enfant. |
ÉNUMÉRATION |
|
Généralisation | ||||||
Inclure un chemin d'accès | Vous permet de spécifier le chemin d'accès à un répertoire contenant les fichiers de schéma inclus. Cette option peut être utile lors de l'import d'un schéma composé de plusieurs fichiers XSD inclus. Le chemin d'accès au répertoire doit être accessible en local sur la machine exécutant ce pont. Si le pont s'exécute en local, il recherchera toujours le répertoire vers lequel le paramètre Fichier pointe. Si le pont s'exécute sur un serveur distant, ce chemin d'accès doit être un chemin d'accès accessible depuis le serveur. |
RÉPERTOIRE | ||||||||
Espace de noms UDP | Nom complet de l'espace de noms contenant les attributs à importer en tant que propriétés définies par l'utilisateur (UDP). | Chaîne de caractères |
Mapping du pont
Meta Integration Repository (MIR) Métamodèle (se base sur le standard OMG CWM) |
"W3C XML Schema Definition (XSD) 1.0 Rétro-ingénierie" Métamodèle W3cXmlXsd |
Mapping des commentaires |
Association | Contenu de l'élément | Représenter les liens entre un élément et les éléments qu'il contient. |
Agrégation | True (Vrai) sauf si l'élément est utilisé dans plusieurs types complexes (complexTypes) | |
Description | annotation, documentation | |
AssociationRole | Contenu de l'élément | |
Description | annotation, documentation | |
Multiplicité | minOccurs, maxOccurs | |
Name (Nom) | Le rôle source est nommé d'après l'élément enfant de l'association | |
Position | Position du sous-élément dans le contenu de l'élément | |
Source | basé sur la hiérarchie des Éléments | |
Attribut | Attribut, Élément | Un attribut #PCDATA particulier est créé pour représenter le contenu mélangé d'un Élément. Les éléments importés comme type de classe sont également mappés en tant qu'attributs |
Description | annotation, documentation | |
InitialValue | par défaut, fixe | |
Name (Nom) | Name (Nom) | |
Position | Ordre dans le fichier | |
BaseType | Les BaseTypes sont créés comme parents pour les simpleTypes définis dans le fichier. | |
CandidateKey | Clé | De plus, une clé primaire est créée si des attributs artificiels sont générés. |
Description | annotation, documentation | |
Name (Nom) | Name (Nom) | |
UniqueKey | Toujours configuré à True (Vrai) | |
Classe | Élément, ComplexType, Groupe, AtributeGroup | Les définitions de Groupe, attributeGroup et complexType sont développées vers les définitions d'éléments |
CppClassType | Configuré comme ENTITÉ | |
CppConcurrency | Configuré à Vrai | |
Description | annotation, documentation | |
Name (Nom) | Name (Nom) | |
ClassDiagram | Pas d'équivalent en XML. Un diagramme de classe principale "Main" sera créé et contiendra tous les éléments. | |
ClassType | Élément | lorsque l'Élément est importé en tant qu'Attribut de son parent (dépend des options du pont). |
Description | annotation, documentation | |
Name (Nom) | Nom de l'élément | Nom de l'élément |
DerivedType | SimpleType | En cas d'Union, seul le premier élément est utilisé |
DataType (TypeDeDonnées) | Voir le tableau de conversion des types de données | |
Description | annotation, documentation | |
Length (Longueur) | longueur, totalDigits, maxLength, minLength | |
LowerBound | maxExclusive, maxInclusive | |
Name (Nom) | Name (Nom) | soit explicitement dans le fichier, soit calculé en se basant sur son utilisation |
Échelle | fractionDigits | |
UpperBound | maxExclusive, maxInclusive | |
UserDefined | True (Vrai) pour les simpleTypes définis dans le fichier, False (Faux) pour ceux définis dans la spécification du schéma | |
DesignPackage | Pas d'équivalent en XML. Un package principal "Logical View (Vue logique)" sera créé pour contenir tous les éléments. | |
ForeignKey | Keyref | Les clés étrangères sont créées en se basant sur les associations si des attributs artificiels sont générés. |
Description | annotation, documentation | |
Name (Nom) | Name (Nom) | |
Regroupement | Séquence, Choix, Tous | |
Description | annotation, documentation | |
GroupingType | GROUPING_TYPE_SEQUENCE pour Séquence et Tous, GROUPING_TYPE_OR pour Choix | |
Multiplicité | minOccurs, maxOccurs | |
Position | Position du sous-élément dans le contenu de l'élément | |
Index | Un index est créé pour chaque clé générée. | |
IndexMember | Un membre d'index est créé pour chaque attribut de clé. | |
StoreModel | Schéma | Le modèle est construit à l'aide des éléments contenus dans le fichier. |
Name (Nom) | Calculé à partir du nom du fichier. | |
TypeValue | Énumération | |
Description | annotation, documentation | |
Name (Nom) | value | |
Position | Ordre dans le fichier | |
Valeur | valeur |