Elemento Attributo schema GDL
Il tipo di dati di tutti gli <elementi GDL_ATTRIBUTE> viene specificato per ogni istanza usando xsi:type. Gli attributi senza una definizione specifica del tipo di dati sono istanze designate dell'elemento attributo generico (<GDL_UntypedAtt>), definito nello schema prodotto da GDL come indicato di seguito:
<complexType name="GDL_UntypedAtt" mixed="true">
<sequence>
<any processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
<attribute name="Name" type="string" use="required"/>
<attribute name="Personality" type="string" use="optional"/>
</complexType>
Questo tipo di dati generico viene usato quando il contenuto dell'attributo non è descritto da un tipo di dati più specifico. Il tipo di dati generico non limita il contenuto dell'elemento che può essere visualizzato. Il contenuto effettivo dell'elemento è determinato dai modelli di tipo di dati GDL.
<> GDL_UntypedAtt ha due attributi: Nome e Personalità. Il nome è obbligatorio e contiene il nome della parola chiave dell'attributo GDL. La personalità è facoltativa e specifica il tag di personalità se l'attributo è definito come *DataType: MULTIPLE_PERSONALITY.
Se il tipo di dati GDL del valore è definito in modo specifico nello schema XSD, il tipo di dati della definizione viene fatto riferimento dall'attributo xsi:type . I tipi di dati XML_TYPE, ENUMERATOR e XSD_DEFINED creano nuovi tipi di dati nello schema XSD.
I tipi di dati composti GDL sono rappresentati dal tipo di dati generico. Le istanze dei tipi di dati composti contengono elementi figlio che potrebbero contenere altri elementi figlio o contenuto carattere che rappresenta un tipo di dati XML semplice. I nomi degli elementi figlio sono definiti dalla direttiva *ElementTags del modello DATATYPE.
I valori degli attributi GDL senza tipo di dati definito o non sono associati a un modello o non sono conformi alla sintassi prevista per il tipo di dati specificato sono rappresentati da una <sezione CDATA> nell'elemento <GDL_ATTRIBUTE> . Questa sezione consente ai client o ad altri Parser-Filters di elaborare il valore desiderato. Tali tipi di dati sconosciuti non conterranno l'attributo xsi:type . Potrebbe essere necessaria più di una <sezione CDATA> per rappresentare il valore se il valore contiene la stringa "]]>".