Elemento De atributo de esquema GDL
O tipo de dados de todos os <elementos GDL_ATTRIBUTE> é especificado por instância usando xsi:type. Atributos sem uma definição de tipo de dados específica são instâncias designadas do elemento de atributo genérico (<GDL_UntypedAtt>), que é definido no esquema produzido por GDL da seguinte maneira:
<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>
Esse tipo de dados genérico é usado quando o conteúdo do atributo não é descrito por um tipo de dados mais específico. O tipo de dados genérico não restringe o conteúdo do elemento que pode aparecer. O conteúdo do elemento real é determinado pelos modelos de tipo de dados GDL.
<> GDL_UntypedAtt tem dois atributos: Nome e Personalidade. O nome é necessário e contém o nome palavra-chave do atributo GDL. A personalidade é opcional e especifica a marca de personalidade se o atributo for definido como um *DataType: MULTIPLE_PERSONALITY.
Se o tipo de dados GDL do valor for definido especificamente no esquema XSD, o tipo de dados da definição será referenciado pelo atributo xsi:type . Os tipos de dados XML_TYPE, ENUMERATOR e XSD_DEFINED criam novos tipos de dados no esquema XSD.
Os tipos de dados compostos de GDL são representados pelo tipo de dados genérico. Instâncias de tipos de dados compostos contêm elementos filho que podem conter outros elementos filho ou conteúdo de caractere que representa um tipo de dados XML simples. Os nomes dos elementos filho são definidos pela diretiva *ElementTags do modelo DATATYPE.
Valores de atributos GDL que não têm nenhum tipo de dados definido ou não estão associados a um modelo ou não estão em conformidade com a sintaxe esperada para o tipo de dados especificado são representados por uma <seção CDATA> no <elemento GDL_ATTRIBUTE> . Esta seção permite que clientes ou outras Parser-Filters processem o valor conforme desejarem. Esses tipos de dados desconhecidos não conterão o atributo xsi:type . Mais de uma <seção CDATA> poderá ser necessária para representar o valor se o valor contiver a cadeia de caracteres "]]>".