GDL 架構屬性元素
所有 < GDL_ATTRIBUTE > 元素的資料類型都是使用 xsi:type,以每個實例為基礎來指定。 沒有特定資料類型定義的屬性是泛型屬性元素的指定實例, (< GDL_UntypedAtt) > ,其定義于 GDL 產生的架構中,如下所示:
<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>
當屬性的內容不是由更特定的資料類型描述時,就會使用這個泛型資料類型。 泛型資料類型不會限制可以出現的專案內容。 實際的元素內容是由 GDL 資料類型範本所決定。
<>GDL_UntypedAtt有兩個屬性:名稱和特質。 名稱 是必要的,並保留 GDL 屬性的關鍵字名稱。 如果屬性定義為 *DataType:MULTIPLE_PERSONALITY,則個人化是選擇性的,並指定個人化標記。
如果在 XSD 架構中特別定義值的 GDL 資料類型,則 xsi:type 屬性會參考定義的資料類型。 XML_TYPE、ENUMERATOR 和XSD_DEFINED資料類型會在 XSD 架構中建立新的資料類型。
GDL 複合資料型別是由泛型資料類型表示。 複合資料型別的實例包含可能包含其他子專案或字元內容,代表簡單 XML 資料類型的子專案。 子專案的名稱是由 DATATYPE 範本的 *ElementTags 指示詞所定義。
沒有已定義資料類型或未與範本建立關聯的 GDL 屬性值,或不符合指定資料類型預期的語法,是由GDL_ATTRIBUTE > 專案中的 CDATA > 區段 < 表示 < 。 本節可讓用戶端或其他Parser-Filters視需要處理值。 這類未知的資料類型不會包含 xsi:type 屬性。 如果值包含字串 「]] > 」,可能需要多個 < CDATA > 區段來表示值。