Création d'un schéma

Création d'un schéma

La première étape de la capture d'un client consiste à créer un schéma DS. Cette section présente comment créer un schéma de base qui définit la capture de données client générales.

Le DS stocke les données collectées des utilisateurs lors du balayage en ligne et de la saisie des applications. Le contenu du DS est définissable de façon dynamique par le biais d'une définition de schéma. Les conditions requises pour la capture et le stockage des données sur un client peuvent être complexes. Toutefois, avec un schéma approprié, ces données peuvent être gérées de façon efficace sur tout son cycle de vie.

L'objectif de l'exemple suivant consiste à capturer ce qui suit :

Tableau 1. Données client à capturer
attributs Type
Prénom Chaîne
Deuxième nom Chaîne
Nom de famille Chaîne
Sexe Masculin/Féminin
Date de naissance Date

Un schéma doit comporter un ensemble minimum de définitions. Pour utiliser un schéma dans IEG, la configuration suivante est requise :

Pour plus d'informations sur l'ensemble minimum de définitions requises, voir le manuel Creating Datastore Schemas .

Le schéma doit ressembler à ceci avant d'ajouter un nouveau contenu, tel que l'entité Person décrite ci-dessus :

Figure 1. Schéma de démarrage
<xsd:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" 
  xmlns:d="http://www.curamsoftware.com/BaseDomains">
  <xsd:import namespace="http://www.curamsoftware.com/BaseDomains"/>
  <xsd:include schemaLocation="IEGDomains"/>
  <xsd:element name="Application">
    <xsd:complexType>
      <xsd:sequence minOccurs="0">
    </xsd:sequence>
    </xsd:complexType>
  </xsd:element> 
</xsd:schema>

Le contenu du schéma indique qu'il s'agit d'un schéma XML qui importe un schéma BaseDomains et contient le schéma IEGDomains. Le premier élément appelé Application est l'entité racine du schéma. IEG nécessite de toujours appeler l'entité racine Application.

Le schéma IEGDomains contient les domaines requis pour définir les attributs des entités à utiliser avec IEG. Les types des attributs doivent être dérivés des domaines IEG plutôt que des domaines de base. Une entité Person peut être définie pour représenter un client comme suit :

Figure 2. Entité Person
<xsd:element name="Person">
  <xsd:complexType>
    <xsd:attribute name="firstName" type="IEG_STRING"/>
    <xsd:attribute name="middleName" type="IEG_STRING"/>
    <xsd:attribute name="lastName" type="IEG_STRING"/>
    <xsd:attribute name="gender" type="IEG_GENDER"/>
    <xsd:attribute name="dateOfBirth" type="IEG_DATE"/>
  </xsd:complexType>
</xsd:element>

Plusieurs éléments sont à noter sur la définition d'une entité comme personne :

Le schéma permettant de capturer les informations de base relatives à une personne peut être défini comme suit :

Figure 3. Schéma de base
<xsd:element name="Application">
  <xsd:complexType>
    <xsd:sequence minOccurs="0">
       <xsd:element ref="Person" minOccurs="0" 
                                maxOccurs="unbounded"/>
    </xsd:sequence>
  </xsd:complexType>
</xsd:element>
<xsd:element name="Person">
  <xsd:complexType>
    <xsd:attribute name="personID" type="d:SVR_KEY"/>
    <xsd:attribute name="firstName" type="IEG_STRING"/>
    <xsd:attribute name="middleName" type="IEG_STRING"/>
    <xsd:attribute name="lastName" type="IEG_STRING"/>
    <xsd:attribute name="gender" type="IEG_GENDER"/>
    <xsd:attribute name="dateOfBirth" type="IEG_DATE"/>
  </xsd:complexType>
  <xsd:key name="Person_Key">
    <xsd:selector xpath="./Person"/>
    <xsd:field xpath="@personID"/>
  </xsd:key>
</xsd:element>

Une fois le schéma défini, vous pouvez ensuite créer un script pour utiliser le schéma.