Crear un esquema

El primer paso en la captura de datos acerca de un cliente es crear un esquema DS. Esta sección proporciona un ejemplo de cómo crear un esquema básico que defina la captura de algunos datos de cliente generales.

El DS almacena los datos recopilados de los usuarios durante la exploración en línea y la admisión de solicitudes. El contenido del DS se puede definir dinámicamente mediante una definición de esquema. Los requisitos para capturar y almacenar datos acerca de un cliente pueden ser complejos pero con el diseño de esquema apropiado, estos datos se pueden gestionar de forma eficiente a lo largo del tiempo de vida.

Para este ejemplo, el requisito es capturar lo siguiente:

Tabla 1. Datos de cliente a capturar
Atributos Tipo
Nombre Serie
Segundo nombre Serie
Apellido/Nombre de familia Serie
Sexo Hombre/Mujer
Fecha de nacimiento Fecha

Existe un conjunto mínimo de definiciones necesarias en un esquema. Para un esquema que se debe utilizar en IEG, se necesita lo siguiente:

Para obtener más información sobre el conjunto mínimo de definiciones necesarias, consulte la guía Creación de esquemas de almacén de datos.

El esquema tendrá un aspecto similar al del siguiente antes de añadir contenido nuevo como la entidad de persona descrita más arriba:

Figura 1. Esquema inicial
<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>

El contenido del esquema indica que se trata de un esquema XML que importa el esquema BaseDomains e incluye el esquema IEGDomains. El primer elemento denominado Application es la entidad raíz para el esquema. IEG necesita que la entidad raíz se denomine siempre Application.

El esquema IEGDomains contiene los dominios necesarios para definir los atributos de las entidades que se van a utilizar con IEG. Los tipos de los atributos se deben derivar de los dominios IEG, en lugar de los dominios base. Una entidad de persona puede definirse para representar un cliente como se indica a continuación:

Figura 2. Entidad de persona
<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>

Hay un par de cuestiones a tener en cuenta acerca de la adición anterior para una entidad como persona:

El esquema para capturar información básica acerca de una persona puede definirse como se indica a continuación:

Figura 3. Esquema básico
<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>

Una vez que se ha definido el esquema, puede crear un script para utilizar el esquema.