Introduction

Un dictionnaire de données permet aux utilisateurs professionnels d’utiliser des informations provenant de sources de données en arrière-plan sans connaître les détails techniques de leurs modèles de données sous-jacents. Un dictionnaire de données est composé d’éléments de dictionnaire de données (DDE). Vous utilisez ces éléments de données pour intégrer des données principales sur les lettres comme entrées à utiliser dans la correspondance client. 

Un dictionnaire de données est une représentation indépendante des métadonnées qui décrivent les structures des données sous-jacentes et leurs attributs associés. Un dictionnaire de données est créé à l’aide d’un vocabulaire métier. Il peut être mappé à un ou plusieurs modèles de données sous-jacents.. 

Le dictionnaire de données est composé d’éléments de trois types : simple, composite et de collection. Les DDE simples sont des éléments primitifs tels que des chaînes, des nombres, des dates et des valeurs booléennes qui contiennent des informations telles qu’un nom de ville. Un DDE composite contient d’autres éléments de dictionnaire de données qui peuvent être de type primitif, composite ou de collection. Par exemple, une adresse, qui se compose d’un nom de rue, d’une ville, d’une province, d’un pays et d’un code postal. Une collection est une liste de DDE simples ou composites similaires. Par exemple, un client avec plusieurs emplacements différents ou des adresses de facturation et de livraison différentes.

Correspondence Management utilise des données d’arrière-plan, client,  ou destinataire stockées conformément à la structure du dictionnaire de données pour créer des correspondances destiné à différents utilisateurs. Par exemple, un document peut être créé avec des noms conviviaux, tels que « Cher/chère {Prénom} » ou « M. {Nom} ».

En règle générale, les utilisateurs professionnels n’ont pas besoin de connaître les représentations de métadonnées telles que le schéma XSD (schéma XML) et les classes Java. Cependant, ils ont le plus souvent besoin de l’accès à ces structures de données et à leurs attributs dans le but de créer des solutions.

Flux de travaux de dictionnaire de données

  1. Un auteur crée le Dictionnaire de données en important un schéma ou en partant de zéro.
  2. L’auteur crée la lettre et les actifs en fonction du dictionnaire de données et associe les éléments de dictionnaire de données dans la lettre et les actifs là où c’est nécessaire. 
  3. Il peut exporter le fichier XML de données d’exemple, qui repose sur le schéma d’un dictionnaire de données. L’auteur peut modifier le fichier XML de données d’exemple, qui peut être associé en tant que données de test au dictionnaire de données. Le même nœud est utilisé pendant l’aperçu de la lettre. 
  4. Durant l’aperçu d’une lettre, un auteur choisit de prévisualiser la lettre avec des données (aperçu personnalisé).  La lettre s’ouvre préremplie avec les données que l’auteur a fournies. Elle s’ouvre dans l’interface de création de correspondance. L’agent qui prévisualise cette lettre peut modifier le contenu, les données, les pièces jointes de la lettre et envoyer la lettre finale. Pour plus d’informations sur la création de lettres, voir Création de correspondance.

Création d’un dictionnaire de données

Utilisez l’Editeur du dictionnaire de données pour créer un dictionnaire de données ; vous pouvez également importer un fichier de schéma XSD pour créer un dictionnaire de données à partir de cela. Vous pouvez ensuite étendre le dictionnaire de données en ajoutant d’autres informations obligatoires, y compris des champs. Quelle que soit la façon dont le dictionnaire de données a été créé, le propriétaire du processus d’entreprise n’a pas besoin de connaître les systèmes en arrière-plan. Le propriétaire du processus d’entreprise n’a besoin de connaître que les objets du domaine et leurs définitions pour leur traitement.

  1. Choisissez Formulaires > Dictionnaires de données.

  2. Cliquez sur Créer un dictionnaire de données.

  3. Dans l’écran de propriétés, ajoutez ce qui suit :

    • Nom : le nom unique du dictionnaire de données.
    • Nom d’affichage : (facultatif) Prérempli avec le texte que vous avez saisi dans le champ Nom. Vous pouvez remplacer le nom d’affichage par défaut par un nom d’affichage plus convivial.
    • Description : (facultatif) Description du dictionnaire de données.
    • Balises : (facultatif) Pour créer une balise personnalisée, saisissez la valeur dans le champ de texte et appuyez sur Entrée. Vous pouvez afficher la balise sous le champ de texte des balises. Lorsque vous enregistrez ce texte, les balises nouvellement ajoutées sont également créées.
    • Propriétés étendues : (facultatif) Cliquez sur Ajouter un champ pour spécifier des attributs de métadonnées pour votre dictionnaire de données. Dans la colonne Nom de la propriété, saisissez un nom de propriété unique. Dans la colonne Valeur, saisissez une valeur à associer à la propriété.
  4. (Facultatif) Pour importer une définition de schéma XSD pour votre dictionnaire de données, cliquez sur Importer un schéma XML dans le volet Structure du dictionnaire de données. Recherchez le fichier XSD, sélectionnez-le et cliquez sur Ouvrir. Un dictionnaire de données est créé en fonction du schéma XML importé. Vous devez modifier les noms d’affichage et les descriptions des éléments du dictionnaire de données. Pour ce faire, sélectionnez les nom des éléments en cliquant dessus et modifiez leur description, leur nom d’affichage, ou d’autres détails dans les champs du panneau de droite.

    Pour plus d’informations sur les Eléments de dictionnaire de données calculés, voir Eléments de dictionnaire de données calculés.

    Remarque :

    Vous pouvez ignorer l’importation du fichier de schéma et créer votre dictionnaire de données à partir de zéro dans l’interface utilisateur. Pour ce faire, ignorez cette étape et poursuivez en effectuant les étapes suivantes.

  5. Cliquez sur Suivant.

  6. Dans l’écran Ajouter des propriétés, ajoutez des éléments au dictionnaire de données. Vous pouvez également ajouter ou supprimer des éléments et modifier leurs détails si vous avez importé un schéma pour obtenir une structure de base du dictionnaire de données.

    Vous pouvez cliquer sur les trois points du côté droit d’un élément et ajouter un élément à la structure du dictionnaire de données.

     

    Sélectionnez Elément composite, Elément de collection ou Elément primitif.

    • Un DDE composite contient d’autres éléments de dictionnaire de données qui peuvent être de type primitif, composite ou de collection. Par exemple, une adresse, qui se compose d’un nom de rue, d’une ville, d’une province, d’un pays et d’un code postal. 
    • Les DDE simples sont des éléments tels que des chaînes, des nombres, des dates et des valeurs booléennes qui contiennent des informations telles qu’un nom de ville.
    • Une collection est une liste de DDE simples ou composites similaires. Par exemple, un client avec plusieurs emplacements différents ou des adresses de facturation et de livraison différentes.

    Voici quelques règles pour créer un dictionnaire de données :

    • Seul le type composite est autorisé en tant que DDE de niveau supérieur dans un dictionnaire de données. 
    • Le nom, le nom de référence et le type d’élément sont des champs obligatoires pour un dictionnaire de données et des DDE.
    • Le nom de référence doit être unique.
    • Un DDE parent (composite) ne peut pas avoir deux enfants ayant le même nom.
    • Les énumérations contiennent uniquement des types de chaînes primitifs.

    Pour plus d’informations sur les éléments composites, de collection ou primitifs et l’utilisation d’éléments de dictionnaire de données, voir Mappage des éléments du dictionnaire de données avec le schéma XML.

    Pour plus d’informations sur les validations dans le dictionnaire de données, voir Validations de l’Editeur du dictionnaire de données.

  7. (Facultatif) Après la sélection d’un élément, vous pouvez ajouter des propriétés dans l’onglet Avancé (attributs). Vous pouvez également cliquer sur Ajouter le champ et étendre les propriétés d’un élément de dictionnaire de données.

  8. (Facultatif) Vous pouvez supprimer n’importe quel élément en cliquant sur les trois points du côté droit d’un élément et en sélectionnant Supprimer.

    Remarque :

    Une suppression d’un élément composite ou de collection avec des nœuds enfant supprime également les nœuds enfant.

  9. (Facultatif) Sélectionnez un élément dans le volet Structure du dictionnaire de données et dans le volet Liste des champs et des variables. Modifiez ou ajoutez n’importe quels attributs requis associés à l’élément.

  10. Cliquez sur Enregistrer.

Utilisation des données de test

  1. Sur la page du Dictionnaires de données, cliquez surSélectionner.

  2. Cliquez sur un dictionnaire de données dont vous souhaitez exporter les données de test puis sur Exporter un exemple de données XML.

  3. Cliquez sur OK dans le message d’alerte. Un fichier XML se télécharge. 

  4. Ouvrez le fichier XML avec le Bloc-notes ou un éditeur XML différent. Le fichier XML a la même structure que les chaînes de dictionnaire de données et d’espace réservé dans les éléments. Remplacer les chaînes d’espace réservé par celles avec lesquelles vous souhaitez tester une lettre.

     

    <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    <Company>
    <Name>string</Name>
    <Type>string</Type>
    <HeadOfficeAddress>
    <Street>string</Street>
    <City>string</City>
    <State>string</State>
    <Zip>string</Zip>
    </HeadOfficeAddress>
    <SalesOfficeAddress>
    <Street>string</Street>
    <City>string</City>
    <State>string</State>
    <Zip>string</Zip>
    </SalesOfficeAddress>
    <HeadCount>1.0</HeadCount>
    <CEO>
    <PersonName>
    <FirstName>string</FirstName>
    <MiddleName>string</MiddleName>
    <LastName>string</LastName>
    </PersonName>
    <DOB>string</DOB>
    <CurrAddress>
    <Street>string</Street>
    <City>string</City>
    <State>string</State>
    <Zip>string</Zip>
    </CurrAddress>
    <DOJ>14-04-1973</DOJ>
    <Phone>1.0</Phone>
    </CEO>
    </Company>

    Remarque :

    Dans cet exemple, le code XML crée un espacement de trois valeurs pour un élément de collection, mais le nombre de valeurs peut être augmenté ou réduit selon vos besoins.

  5. Une fois les entrées de données réalisées, vous pouvez utiliser ce fichier XML lorsque vous prévisualisez une lettre avec des données de test. 

    Vous pouvez ajouter ces données de test avec DD (sélectionnez DD, cliquez sur Importer des données de test et téléchargez ce fichier XML)
    Après cette étape, lorsque vous prévisualisez une lettre normalement (et non de façon personnalisée), ces données XML sont utilisées dans la lettre. Vous pouvez également cliquer sur Personnalisé et télécharger ce fichier XML.

Exemples

Les exemples de code suivants illustrent les détails d’implémentation pour le Dictionnaire de données.

Exemple de schéma pouvant être importé dans le Dictionnaire de données

<?xml version="1.0" encoding="utf-8"?> 
<xs:schema xmlns="DCT" targetNamespace="DCT" xmlns:xs="http://www.w3.org/2001/XMLSchema" 
  elementFormDefault="qualified" attributeFormDefault="unqualified"> 
  <xs:element name="Company"> 
    <xs:complexType> 
      <xs:sequence> 
        <xs:element name="Name" type="xs:string"/> 
        <xs:element name="Type" type="xs:anySimpleType"/> 
        <xs:element name="HeadOfficeAddress" type="Address"/> 
        <xs:element name="SalesOfficeAddress" type="Address" minOccurs="0"/> 
        <xs:element name="HeadCount" type="xs:integer"/> 
        <xs:element name="CEO" type="Employee"/> 
        <xs:element name="Workers" type="Employee" maxOccurs="unbounded"/> 
      </xs:sequence> 
    </xs:complexType> 
  </xs:element> 
  <xs:complexType name="Employee"> 
    <xs:complexContent> 
      <xs:extension  base="Person"> 
        <xs:sequence> 
          <xs:element name="CurrAddress" type="Address"/> 
          <xs:element name="DOJ" type="xs:date"/> 
          <xs:element name="Phone" type="xs:integer"/> 
        </xs:sequence> 
      </xs:extension> 
    </xs:complexContent> 
  </xs:complexType> 
  <xs:complexType name="Person"> 
    <xs:sequence> 
      <xs:element name="PersonName" type="Name"/> 
      <xs:element name="DOB" type="xs:dateTime"/> 
    </xs:sequence> 
  </xs:complexType> 
  <xs:complexType name="Name"> 
    <xs:sequence> 
      <xs:element name="FirstName" type="xs:string"/> 
      <xs:element name="MiddleName" type="xs:string"/> 
      <xs:element name="LastName" type="xs:string"/> 
    </xs:sequence> 
  </xs:complexType> 
  <xs:complexType name="Address"> 
    <xs:sequence> 
      <xs:element name="Street" type="xs:string"/> 
      <xs:element name="City" type="xs:string"/> 
      <xs:element name="State" type="xs:string"/> 
      <xs:element name="Zip" type="xs:string"/> 
    </xs:sequence> 
  </xs:complexType> 
</xs:schema>

Attributs communs associés à un DDE

Le tableau suivant récapitule les attributs communs liés à un DDE :

AttributTypeDescription
NomChaîneObligatoire.
Nom du DDE. Ce nom doit être unique.
Nom de
référence
ChaîneObligatoire. Nom de référence unique pour le DDE permettant d’obtenir des références au DDE indépendantes des modifications apportées à la hiérarchie ou à la structure du dictionnaire de données. Les modules de texte sont mappés à l’aide ce nom.
displaynameChaîneNom convivial facultatif du DDE.
descriptionChaîneDescription du DDE.
elementTypeChaîneObligatoire. Le type de DDE : chaîne, nombre, date, booléen, composite, de collection.
elementSubTypeChaîneSous-type pour le DDE : ENUM. Uniquement autorisée pour les types d’élément CHAINE et NOMBRE.
ToucheBooléenChamp de valeur booléenne pour indiquer si un DDE est un élément clé.
CalculéBooléenChamp de valeur booléenne pour indiquer si un DDE est calculé. Une valeur de DDE calculée est une fonction d’autres valeurs de DDE. Par défaut, les expressions du langage EL (Expression Language) JSP sont prises en charge.
expressionChaîneExpression pour le DDE « calculé ». Le service d’évaluation d’expression fourni par défaut prend en charge les expressions EL JSP. Vous pouvez remplacer le service d’expression par une implémentation personnalisée.
valueSetListeEnsemble de valeurs autorisées pour un DDE de type Enum. Par exemple, le Type de compte ne peut comporter que les valeurs épargne et courant.
extendedPropertiesObjetCarte des propriétés personnalisées ajoutées au DDE (spécifique d’une interface utilisateur ou toute autre information).
ObligatoireBooléenLe drapeau indique que la source des données d’instance correspondant au dictionnaire de données doit contenir la valeur de ce DDE spécifique.
LiaisonElément de liaisonLiaison XML ou Java de l’élément.

Eléments de dictionnaire de données calculés

Un dictionnaire de données peut également contenir des éléments calculés. Un élément de dictionnaire de données calculé est toujours associé à une expression. Cette expression est évaluée pour obtenir la valeur d’un élément de dictionnaire de données au moment de l’exécution. Une valeur de DDE calculée est une fonction d’autres valeurs ou littéraux d’éléments de dictionnaire de données. Par défaut, les expressions du langage EL (Expression Language) JSP sont prises en charge. Les expressions EL utilisent les caractères ${ } et les expressions valides peuvent inclure des littéraux, des opérateurs, des variables (références d’élément de dictionnaire de données) ainsi que des appels de fonction. Tout en faisant référence à un élément de dictionnaire de données dans l’expression, le nom de référence de DDE est utilisé. Le chemin d’accès est unique pour chaque élément de dictionnaire de données au sein d’un dictionnaire de données.

Un DDE calculé de type PersonfullName peut être associé à une expression de concaténation EL telle que ${PersonfirstName} ${PersonlastName}.

Mappage de type de données entre XSD et le dictionnaire de données

L’exportation d’un schéma XSD nécessite un mappage de données spécifique, détaillé dans le tableau ci-dessous. La colonne DDI indique le type de la valeur DDE disponible dans la DDI.

XSD 

Dictionnaire de données 

DDI (valeur d’instance de type de données)

xs:élément de type - Type composite

DDE de type - COMPOSITE

java.util.Map

xs:élément où maxOccurs > 1

DDE de type - COLLECTION-
Un nœud de DDE est créé en regard du DDE COLLECTION qui capture les informations à partir du nœud COLLECTION parent. Le même nœud est également créé pour les deux types de collection de données simples/composites. Pour chaque instance de COLLECTION de type composite, l’arborescence du dictionnaire de données capture les champs élémentaires dans les enfants du DDE créé pour la capture des informations de type.
- DDE (COLLECTION)
- DDE (COMPOSITE pour saisir des informations)
- DDE (CHAÎNE) champ1
- DDE (CHAÎNE) champ2

java.util.List

Attribut de type xs:id 

DDE de type CHAÎNE 
java.lang.String

xs:attribut /xs:element de type xs:string

DDE de type CHAÎNE
java.lang.String
xs:attribute /xs:element de type xs:boolean 
DDE de type Booléen
java.lang.Boolean
xs:attribute /xs:element de type xs:date DDE de type DATE java.lang.String
xs:attribute /xs:element de type xs:integer DDE de type NOMBRE java.lang.Double
xs:attribute /xs:element de type xs:longDDE de type NOMBRE java.lang.Double
xs:attribute /xs:element de type xs:doubleDDE de type NOMBRE java.lang.Double
Elément de type enum et baseType xs:stringDDE de
type CHAÎNE
et de sous-type ENUM
valueSet - les valeurs autorisées pour ENUM
java.lang.String

Exportation d’un fichier de données d’exemple d’un dictionnaire de données

Une fois que vous avez créé un dictionnaire de données, vous pouvez l’exporter vers un fichier de données XML pour y effectuer des entrées de texte. 

  1. Dans la page du Dictionnaires de données, cliquez sur Sélectionner puis cliquez sur un dictionnaire de données pour le sélectionner. 

  2. Sélectionnez Exporter les données XML d’exemple

  3. Cliquez sur OK dans le message d’alerte.

    Correspondence Management crée un fichier XML basé sur la structure du dictionnaire de données sélectionné et le télécharge vers votre ordinateur avec le nom -SampleData. Vous pouvez désormais modifier ce fichier dans un éditeur XML ou de texte pour créer des entrées de données lors de la création d’une lettre.

Internationalisation des métadonnées

Lorsque vous souhaitez envoyer la même lettre dans différentes langues à vos clients, vous pouvez localiser le nom, la description, et les valeurs d’énumération du dictionnaire de données et des Eléments du dictionnaire de données.

 

Localisation du dictionnaire de données

  1. Sur la page de dictionnaires de données, cliquez sur Sélectionner et cliquez sur un dictionnaire de données pour le sélectionner. 

  2. Cliquez sur Exporter les données de localisation.

  3. CliquezOK dans l’alerte. Correspondence Management télécharge un fichier zip dans votre ordinateur avec le nom DataDictionary-.zip.

  4. Le fichier .zip contient un fichier .properties. Ce fichier définit le dictionnaire de données exporté. Le contenu du fichier de propriétés est semblable au contenu suivant :

    # Informations de localisation du dictionnaire de données nommé : EmployeeDD, paramètres régionaux : par défaut
    # mercredi 20 mai, 16h06 et 23 s BST 2015
    DataDictionary.EmployeeDD.description=
    DataDictionary.EmployeeDD.displayName=EmployeeDataDictionary
    DataDictionaryElement.name.description=
    DataDictionaryElement.name.displayName=name
    DataDictionaryElement.person.description=
    DataDictionaryElement.person.displayName=person

    La structure du fichier de propriétés définit une ligne chacune pour la description et le nom d’affichage pour le dictionnaire de données et chaque élément du dictionnaire de données dans le dictionnaire de données. En outre, le fichier de propriétés définit une ligne pour une valeur d’énumération définie pour chaque élément du dictionnaire de données. Comme avec un dictionnaire de données, le fichier de propriétés correspondant peut avoir plusieurs définitions d’éléments de dictionnaire de données. En outre, le fichier peut contenir des définitions pour un ou plusieurs ensembles de valeur d’énumération.

  5. Pour mettre à jour le fichier .properties dans une langue différente, mettez à jour le nom d’affichage et les valeurs de description dans le fichier. Créez plus d’instances du fichier pour chaque langue à localiser. Seuls le français, l’allemand, le japonais et l’anglais sont pris en charge.

  6. Enregistrer les différents fichiers de propriétés mis à jour avec les noms suivants :

    _fr_FR.properties (français)

    _de_DE.properties (allemand)

    _ja_JA.properties (japonais)

    _en_EN.properties (anglais)

  7. Archivez le fichier .properties (ou les fichiers si vous avez plusieurs langues) dans un fichier .zip unique.

  8. Dans la page du Dictionnaires de données, sélectionnez Plus > Importer les données de localisation et sélectionnez le fichier .zip contenant des fichiers de propriétés localisés. 

     

  9. Pour afficher les modifications de localisation, modifiez la langue de votre navigateur.

Validations du Dictionnaire de données

 

L’Editeur du dictionnaire de données impose les validations suivantes lors de la création ou de la mise à jour d’un dictionnaire de données.

  • Seul le type Composite est autorisé en tant qu’élément de niveau supérieur dans la définition du dictionnaire de données.
  • Les éléments Composite et Collection ne sont pas autorisés au niveau de la feuille. Seuls les éléments de type primitif (chaîne, date, nombre, booléen) sont autorisés au niveau feuille. Cette validation permet de s’assurer qu’il n’existe aucun élément Composite et Collection sans DDE enfant.
  • Lors de l’importation d’un schéma XSD pour créer un dictionnaire de données, l’Editeur du dictionnaire de données invite à n’importer qu’un seul élément de niveau supérieur, s’il en existe plusieurs, afin de créer le dictionnaire de données.
  • Le nom est le seul paramètre obligatoire pour un dictionnaire de données.
  • Un DDE parent (composite) ne peut pas avoir deux enfants ayant le même nom.
  • Fait en sorte qu’un DDE soit marqué comme calculé, dans le cas où il ne s’agit pas d’un paramètre obligatoire. Un élément obligatoire ne peut pas être calculé et un élément calculé ne peut pas être obligatoire. Aussi, les éléments Collection et Composite ne peuvent pas être des éléments calculés.
  • L’Editeur du dictionnaire de données fait en sorte qu’un DDE soit marqué comme obligatoire uniquement lorsqu’il n’est pas calculé. Il s’assure également qu’il n’est pas l’élément de collection indiquant le type de collection (c’est à dire le seul enfant d’un élément de collection).
  • Les clés vides ou dupliquées ne sont pas autorisées dans les propriétés étendues d’un dictionnaire de données ou d’un DDE.
  • N’utilisez pas les caractères deux-points (:) ou de barre verticale (|) au sein de la clé ou la valeur d’une propriété étendue. Il n’existe aucune validation pour l’utilisation de ces caractères interdits.

Validations appliquées au niveau du Dictionnaire de données

  • Le nom du dictionnaire de données ne doit pas être nul.
  • Le nom du dictionnaire de données ne doit contenir que des caractères alphanumériques.
  • La liste des éléments enfants dans le dictionnaire de données ne doit pas être nulle ou vide.
  • Le dictionnaire de données ne doit pas contenir plus d’un élément de dictionnaire de données de niveau supérieur.
  • Seul le type Composite est autorisé en tant qu’élément de niveau supérieur dans la définition du dictionnaire de données.

Validations appliquées au niveau de l’Elément du dictionnaire de données.

  • Aucun nom de DDE ne doit être nul et contenir d’espaces.
  • Tous les DDE doivent comporter un type d’élément « not null/non null ».
  • Aucun nom de référence de DDE ne doit être nul.
  • Tous les noms de référence de DDE doivent être uniques.
  • Tous les noms de référence de DDE ne doivent contenir que des caractères alphanumériques et le signe « _ ».
  • Tous les noms d’affichage de DDE ne doivent contenir que des caractères alphanumériques et le signe « _ ».
  • Les éléments Composite et Collection ne sont pas autorisés au niveau de la feuille. Seuls les éléments de type primitif (chaîne, date, nombre, booléen) sont autorisés au niveau feuille. Cette validation permet de s’assurer qu’il n’existe aucun élément Composite et Collection sans DDE enfant.
  • Un DDE composite parent ne doit pas avoir deux éléments enfants portant le même nom.
  • Le sous-type ENUM est utilisé uniquement pour les éléments Chaîne et Nombre.
  • Les éléments Collection et Composite ne peuvent pas être calculés.
  • Un DDE ne peut pas être à la fois calculé et obligatoire.
  • Les DDE calculés doivent contenir une expression valide.
  • Les DDE calculés ne doivent pas comporter de liaison XML.
  • Un DDE qui indique le type d’un DDE Collection ne peut pas être calculé ni obligatoire.
  • Les DDE de sous-type ENUM ne doivent pas contenir d’ensembles de valeurs nuls ou vides.
  • La liaison XML d’un DDE de collection ne doit pas correspondre à un attribut.
  • La syntaxe de liaison XML doit être valide, par exemple, un seul @ s’affiche, le caractère @ n’est autorisé que lorsqu’il est suivi d’un nom d’attribut.

 

 

 

Mappage des éléments du dictionnaire de données avec le schéma XML

Vous pouvez créer un dictionnaire de données à partir d’un schéma XML ou le construire à l’aide l’Interface utilisateur du dictionnaire de données. Tous les éléments de dictionnaire de données (DDE) au sein d’un dictionnaire de données ont un champ de liaison XML pour stocker la liaison du DDE à un élément dans le schéma XML. La liaison dans chaque DDE dépend du DDE parent.

Les exemples de modèles et de codes indiquant les détails d’implémentation pour le Dictionnaire de données sont détaillés ci-dessous.

Mappage des éléments simples (primitifs)

Un DDE primitif représente un champ ou un attribut atomique par nature. Les DDE primitifs définis hors type complexe (DDE Composite) ou élément répété (DDE Collection) peuvent être stockés à n’importe quel emplacement au sein du schéma XML. L’emplacement des données correspondant à un DDE primitif ne dépend pas du mappage de son DDE parent. Les DDE primitifs utilisent les informations de mappage à partir du champ de liaison XML pour déterminer sa valeur et le mappage les traduit par l’un des objets suivants :

  • un attribut ;
  • un élément ;
  • un contexte de texte ;
  • rien (un DDE ignoré).

L’exemple suivant montre un schéma simple.

<?xml version="1.0" encoding="UTF-8"?> 
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> 
  <xs:element name='age' type='integer'/> 
  <xs:element name='price' type='decimal'/> 
</xs:schema>
Elément du dictionnaire de donnéesLiaison XML par défaut
âge/âge
prix/prix

Mappage des éléments composites

La liaison n’est pas prise en charge pour les éléments composites ; si la liaison est fournie, elle est ignorée. La liaison pour tous les DDE enfants élémentaires de type primitif doit être absolue. L’autorisation de mappage absolu pour les éléments enfant d’un DDE composite offre plus de flexibilité en termes de liaison XPath. Le mappage d’un DDE composite à un type complexe d’élément de schéma XML limite la portée de la liaison pour ses éléments enfant.

L’exemple suivant illustre le schéma d’une note.

<xs:element name="note"> 
    <xs:complexType> 
        <xs:sequence> 
            <xs:element name="to" type="xs:string"/> 
            <xs:element name="from" type="xs:string"/> 
            <xs:element name="heading" type="xs:string"/> 
            <xs:element name="body" type="xs:string"/> 
        </xs:sequence> 
    </xs:complexType> 
</xs:element> 
Elément du dictionnaire de donnéesLiaison XML par défaut
remarquevide (nulle)
à/note/à
de/note/de
titre/note/titre
corps :/note/corps

Mappage des éléments de collection

Un élément Collection est uniquement mappé à un autre élément Collection de cardinalité > 1. Les DDE enfants d’un DDE Collection ont des liaisons XML relatives (locales) par rapport à la liaison XML de leur DDE parent. Etant donné que les DDE enfants d’un élément Collection doivent avoir la même cardinalité que celle du DDE parent, la liaison relative est chargée d’assurer la contrainte de cardinalité de sorte que le DDE enfant ne pointe pas vers un élément de schéma XML non répété. Dans l’exemple ci-dessous, la cardinalité de « TokenID » doit être la même que celle de « Tokens », son DDE Collection parent.

Lors du mappage d’un DDE de collection à un élément de schéma XML :

  • La liaison de la DDE correspondant à l’élément Collection doit être le XPath absolu.

  • Ne fournissez aucune liaison pour le DDE représentant le type d’élément Collection. Si une liaison est fournie, elle sera ignorée.

  • La liaison pour tous les DDE enfants d’éléments de collection doit être relative à l’élément de collection parent.

Le schéma XML ci-dessous déclare un élément portant le nom Tokens et doté d’un attribut maxOccurs de type « unbounded » (illimité). Par conséquent, Tokens est un élément Collection.

<?xml version="1.0" encoding="utf-8"?> 
<Root> 
  <Tokens> 
    <TokenID>string</TokenID> 
    <TokenText> 
      <TextHeading>string</TextHeading> 
      <TextBody>string</TextBody> 
    </TokenText> 
  </Tokens> 
  <Tokens> 
    <TokenID>string</TokenID> 
    <TokenText> 
      <TextHeading>string</TextHeading> 
      <TextBody>string</TextBody> 
    </TokenText> 
  </Tokens> 
  <Tokens> 
    <TokenID>string</TokenID> 
    <TokenText> 
      <TextHeading>string</TextHeading> 
      <TextBody>string</TextBody> 
    </TokenText> 
  </Tokens> 
</Root> 

Le fichier Token.xsd associé à cet exemple serait :

<xs:element name="Root"> 
  <xs:complexType> 
    <xs:sequence> 
      <xs:element name="Tokens" type="TokenType" maxOccurs="unbounded"/> 
    </xs:sequence> 
  </xs:complexType> 
</xs:element> 
  
<xs:complexType name="TokenType"> 
  <xs:sequence> 
    <xs:element name="TokenID" type="xs:string"/> 
    <xs:element name="TokenText"> 
      <xs:complexType> 
        <xs:sequence> 
          <xs:element name="TextHeading" type="xs:string"/> 
          <xs:element name="TextBody" type="xs:string"/> 
        </xs:sequence> 
      </xs:complexType> 
    </xs:element> 
  </xs:sequence> 
</xs:complexType>
Elément du dictionnaire de donnéesLiaison XML par défaut
Racinevide (nulle)
Jetons/Racine/Jetons
Compositevide (nulle)
IDjetonIDjeton
TexteJetonvide (nulle)
TitreJetonTexteJeton/TitreJeton
CorpsJetonTexteJeton/CorpsTexte

Ce produit est distribué sous licence Creative Commons Attribution - Pas d’utilisation commerciale - Partage à l’identique 3.0 non transposé  Les publications Twitter™ et Facebook ne sont pas couvertes par les dispositions Creative Commons.

Mentions légales   |   Politique de confidentialité en ligne