Komplexe Typen

XML-Schema-Elementdeklarationen können einfache und komplexe Typen besitzen. Attributdeklarationen können von einem einfachen Typ sein. Im Allgemeinen werden Elemente mit einfachen Typen und Attributen Feldern in Designer zugeordnet. Elemente mit komplexen Typen enthalten andere Elemente und Attribute oder nur Attribute und werden normalerweise Teilformularen zugeordnet.

Komplexe Typen werden zum Definieren aller anderen Elemente verwendet. Komplexe Typen können Elementinhalt, einfachen Inhalt, gemischten Inhalt und leeren Inhalt definieren.

Jedes Element eines komplexen Typs kann Attribute deklarieren.

Ein Teilformular aus Elementinhalt in einer Datenquelle generieren

Ein Element, das nur Elementinhalt und optional Attribute besitzt, generiert ein Teilformular, wenn es in den Formularentwurf gezogen wird.

Dieses Teilformular enthält Objekte für jedes Attribut, das für das Element und für die Objekte und Teilformulare für jedes Child-Element deklariert wurde.

Einfacher Inhalt

Einfacher Inhalt ist vorhanden, wenn deklariert wird, dass ein Element einfachen Inhalt (Textdaten) enthält und auch Attribute deklarieren kann. Wenn das Element keine Attribute deklariert, ist die Zuordnung gleich der für einfache Elemente.

Wenn Attribute deklariert werden, werden die Elemente einem Teilformular zugeordnet, das den Elementnamen trägt. Dieses Teilformular enthält dann ein Feld, das an das Element gebunden ist, sowie zusätzliche Felder für jedes Attribut. Der Name des an das Element gebundenen Feldes ist dann der Name des Elements mit der angehängten Zeichenfolge "_data". Ein Beispiel dafür ist ein Element (zum Beispiel <phone>) mit numerischem Inhalt und einem Attribut mit dem Namen type:

<phone type="work">5554567</phone>

Dadurch wird ein Teilformular mit dem Namen phone generiert, das Objekte mit den Namen type und phone_data enthält. Das Objekt type wird an $data...phone.type gebunden, das Feld phone_data wird an $data...phone gebunden.

Gemischter Inhalt

Gemischter Inhalt liegt vor, wenn deklariert wird, dass ein Element eine Mischung aus Child-Elementen und Textinhalt enthält.

Leerer Inhalt

Komplexe Typen mit leerem Inhalt werden wie einfacher Inhalt behandelt, wobei das Objekt, das erstellt und an das Element gebunden wird, keinen Inhalt enthalten darf.

Vorkommen

XML-Schema-Attribute für Vorkommen (minOccurs und maxOccurs) in Elementdeklarationen, die Teilformulare generieren, werden den Wiederholungseigenschaften für das Teilformular zugeordnet.

Inhaltsmodelle

Wenn das Inhaltsmodell für die Child-Elemente eines Elements etwas anderes ist als eine Abfolge, versuchen die Zuordnungen mit Hilfe von subformSets die Auswahl und alle Gruppen nachzubilden.