Tipi complessi

Le dichiarazioni degli elementi dello schema XML possono contenere tipi semplici o complessi. Le dichiarazioni degli attributi possono contenere tipi semplici. In genere, gli elementi con tipi semplici e gli attributi sono mappati sui campi di Designer. Gli elementi di tipo complesso contengono altri elementi e attributi, o attributi, e sono generalmente mappati ai sottomoduli.

I tipi complessi sono utilizzati per definire tutti gli altri elementi. I tipi complessi possono definire il contenuto di un elemento, il contenuto semplice, misto o vuoto.

Gli elementi di tipo complesso, possono dichiarare gli attributi o meno.

Generazione di un sottomodulo a partire dal contenuto di un elemento in un'origine dati

Un elemento che possiede solo contenuto ed eventualmente, attributi, genererà un sottomodulo quando viene importato nella struttura del modulo.

Il sottomodulo conterrà oggetti per ciascun attributo dichiarato sull'elemento e oggetti o sottomoduli per ciascun elemento secondario.

Contenuto semplice

Per contenuto semplice si intende un elemento che contiene contenuto semplice (dati testuali) e può anche dichiarare attributi. Se l'elemento non dichiara alcun attributo, la mappatura è identica a quella degli elementi semplici.

Quando si dichiarano gli attributi, gli elementi sono mappati a un sottomodulo nominato con il nome dell'elemento. Il sottomodulo conterrà un campo associato all'elemento e campi addizionali per ciascun attributo. Il nome del campo associato all'elemento sarà il nome dell'elemento con la stringa "_data" aggiunta al termine del nome. Un esempio è costituito da un elemento, ad esempio numero telefonico, con contenuto numerico e un attributo denominato type:

<Telefoo </Telefoo>

Viene quindi generato un sottomodulo denominato numero telefonico contenente oggetti denominati tipo e phone_data. L'oggetto type è associato a $data...phone.type, il campo phone_data è associato a $data...phone.

Contenuto misto

Per contenuto misto si intende un elemento che contiene un insieme di elementi secondari e contenuto testuale.

Contenuto vuoto

I tipi complessi con contenuto vuoto saranno considerati come contenuto semplice, dove l'oggetto creato e associato all'elemento non può avere alcun contenuto.

Occorrenza

Gli attributi di occorrenza dello schema XML (minOccurs e maxOccurs) per le dichiarazioni degli elementi, che generano sottomoduli, saranno mappate alle proprietà di ripetizione del sottomodulo.

Modelli di contenuto

Quando il modello di contenuto dei componenti secondari di un elemento è una semplice sequenza, le mappature tenteranno di modellare la scelta e tutti i gruppi utilizzando subformSets.