Schema erstellen

Der erste Schritt zum Erfassen von Kundendaten ist das Erstellen eines DS-Schemas. In diesem Abschnitt wird ein Beispiel für das Erstellen eines Basisschemas gegeben, mit dem man das Erfassen einiger allgemeiner Kundendaten definieren kann.

Der DS speichert Benutzerdaten, die während Online-Screenings oder durch die Annahme von Anträgen erfasst werden. Die Inhalte des DS lassen sich mittels einer Schemadefinition dynamisch definieren. Die Anforderungen für das Erfassen und Speichern von Kundendaten können komplex sein, aber mit einem angemessenen Schemadesign lassen sich diese Daten während ihrer gesamten Lebensdauer effizient verwalten.

Für dieses Beispiel soll die Anforderung darin bestehen, folgende Daten zu erfassen:

Tabelle 1. Zu erfassende Kundendaten
Attribute Typ
Vorname Zeichenfolge
Zweiter Vorname Zeichenfolge
Nachname/Familienname Zeichenfolge
Geschlecht Männlich/Weiblich
Geburtsdatum Datum

Ein Schema erfordert einen Mindestsatz an Definitionen. Damit ein Schema in IEG verwendet werden kann, ist Folgendes erforderlich:

Weitere Informationen zum Mindestsatz an erforderlichen Definitionen finden Sie im Handbuch Creating Datastore Schemas (Datenspeicherschemata erstellen).

Bevor neuer Inhalt wie beispielsweise die oben beschriebene Personenentität hinzugefügt wird, sieht das Schema etwa folgendermaßen aus:

Abbildung 1. Anfangsschema
<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>

Der Inhalt des Schemas zeigt an, dass es ein XML-Schema ist, welches das Basisdomänenschema ("BaseDomains") importiert und das IEG-Domänenschema ("IEGDomains") einschließt. Das erste Element mit Namen Application stellt die Stammentität für das Schema dar. In IEG ist es erforderlich, dass die Stammentität stets mit Application benannt ist.

Das IEG-Domänenschema enthält die Domänen, die erforderlich sind, um die Attribute von Entitäten zu definieren, die mit IEG verwendet werden sollen. Die Typen der Attribute müssen von den IEG-Domänen abgeleitet sein, nicht von den Basisdomänen. Eine Personenentität kann so definiert sein, dass sie einen Kunden wie folgt darstellt:

Abbildung 2. Personenentität
<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>

Im Zusammenhang mit dem oben beschriebenen Hinzufügen einer Entität, beispielsweise einer Personenentität, sind einige Dinge zu beachten:

Das Schema zum Erfassen grundlegender Informationen zu einer Person kann wie folgt definiert werden:

Abbildung 3. Basisschema
<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>

Nachdem das Schema definiert ist, kann ein Script erstellt werden, mit dem man das Schema verwenden kann.