XML 結構描述項目

XML 結構描述項目會以它們的函式進行分組:最上層項目、物件、多個 XML 文件與命名空間、識別條件約束、屬性、具名屬性、複雜型別定義,以及簡單型別定義。

  • 最上層項目

  • 物件

  • 多個 XML 文件與命名空間

  • 識別條件約束

  • 屬性

  • 具名結構描述物件

  • 複雜型別定義

  • 簡單型別定義

最上層項目

以下是顯示在結構描述文件最上層的項目。

項目

說明

<xsd:annotation> 項目

定義註釋。

<xsd:attribute> 項目

宣告屬性。

<xsd:attributeGroup> 項目

將一組屬性宣告歸成一組,以便在複雜型別定義中整組加入。

<xsd:complexType> 項目

定義決定屬性集和項目內容的複雜型別。

<xsd:element> 項目

宣告項目。

<xsd:group> 項目

將一組項目宣告設定為群組,以便整組加入複雜型別定義中。

<xsd:import> 項目

識別結構描述元件由包含結構描述所參考的命名空間。

<xsd:include> 項目

在包含結構描述的目標命名空間中包含指定的結構描述文件。

<xsd:notation> 項目

包含描述 XML 文件中非 XML 資料格式之標記法的定義。XML 結構描述標記法宣告是 XML 1.0 NOTATION 宣告的重建。

<xsd:redefine> 項目

允許在目前結構描述中重新定義自外部結構描述檔案取得的簡單和複雜型別、群組及屬性群組。

<xsd:simpleType> 項目

定義簡單型別,決定具有純文字內容之屬性或項目值的條件約束及相關資訊。

物件

以下是可具有 minOccursmaxOccurs 屬性的項目。這類項目一律顯示為複雜型別定義或具名模型群組的一部分。

項目

說明

<xsd:all> 項目

允許群組中的項目在包含項目中以任何順序顯示 (或不顯示)。

<xsd:any> 項目

讓指定的命名空間中的任何項目在包含 sequencechoice 項目中出現。

<xsd:choice> 項目

允許所選群組中包含的一個 (而且只有一個) 項目在包含項目中存在。

<xsd:element> 項目

宣告項目。

<xsd:group> 項目

將一組項目宣告設定為群組,以便整組加入複雜型別定義中。

<xsd:sequence> 項目

要求群組中的項目在包含項目中以指定的順序出現。

多個 XML 文件與命名空間

以下是從其他命名空間引入結構描述項目的項目,或對相同命名空間中的結構描述項目重新定義的項目。

項目

說明

<xsd:import> 項目

識別結構描述元件由包含結構描述所參考的命名空間。

<xsd:include> 項目

在包含結構描述的目標命名空間中包含指定的結構描述文件。

<xsd:redefine> 項目

允許在目前結構描述中重新定義自外部結構描述檔案取得的簡單和複雜型別、群組及屬性群組。

識別條件約束

以下是與識別條件約束有相關的項目。

項目

說明

<xsd:field> 項目

指定 XML 路徑語言 (XPath) 運算式,這個運算式指定了用於定義識別條件約束 (uniquekeykeyref 項目) 的值 (或其中一個值)。

<xsd:key> 項目

指定屬性或項目值 (或值集合) 必須是指定範圍內的索引鍵。索引鍵範圍是執行個體文件中的包含項目。索引鍵必須是唯一的、非 Nillable,而且一定要存在。

<xsd:keyref> 項目

指定屬性或項目值 (或值集合) 對應至指定之 keyunique 項目的屬性或項目值。

<xsd:selector> 項目

指定選取識別條件約束之一組項目 (uniquekeykeyref 項目) 的 XPath 運算式。

<xsd:unique> 項目

指定屬性或項目值 (或屬性或項目值的組合) 在指定範圍內必須是唯一的。值必須是唯一的或 Nil。

屬性

以下是在結構描述中定義屬性的項目。

項目

說明

<xsd:anyAttribute> 項目

讓指定的命名空間中任何的屬性在包含 complexType 項目或包含 attributeGroup 項目中出現。

<xsd:attribute> 項目

宣告屬性。

<xsd:attributeGroup> 項目

將一組屬性宣告歸成一組,以便在複雜型別定義中整組加入。

具名結構描述物件

以下是在結構描述中定義具名建構的項目。其他結構描述項目會以 QName 來參考具名建構。

項目

說明

<xsd:attribute> 項目

宣告屬性。

<xsd:attributeGroup> 項目

將一組屬性宣告歸成一組,以便在複雜型別定義中整組加入。

<xsd:complexType> 項目

定義決定屬性集和項目內容的複雜型別。

<xsd:element> 項目

宣告項目。

<xsd:group> 項目

將一組項目宣告設定為群組,以便整組加入複雜型別定義中。

<xsd:key> 項目

指定屬性或項目值 (或值集合) 必須是指定範圍內的索引鍵。索引鍵範圍是執行個體文件中的包含項目。索引鍵必須是唯一的、非 Nillable,而且一定要存在。

<xsd:keyref> 項目

指定屬性或項目值 (或值集合) 對應至指定之 keyunique 項目的屬性或項目值。

<xsd:notation> 項目

包含描述 XML 文件中非 XML 資料格式之標記法的定義。XML 結構描述標記法宣告是 XML 1.0 NOTATION 宣告的重建。

<xsd:simpleType> 項目

定義簡單型別,決定具有純文字內容之屬性或項目值的條件約束及相關資訊。

<xsd:unique> 項目

指定屬性或項目值 (或屬性或項目值的組合) 在指定範圍內必須是唯一的。值必須是唯一的或 Nil。

複雜型別定義

以下是建立複雜型別定義的項目。

項目

說明

<xsd:all> 項目

允許群組中的項目在包含項目中以任何順序顯示 (或不顯示)。

<xsd:annotation> 項目

定義註釋。

<xsd:any> 項目

讓指定的命名空間中的任何項目在包含 sequencechoice 項目中出現。

<xsd:anyAttribute> 項目

讓指定的命名空間中任何的屬性在包含 complexType 項目或包含 attributeGroup 項目中出現。

<xsd:appinfo> 項目

指定要讓 annotation 項目中各應用程式使用的資訊。

<xsd:attribute> 項目

宣告屬性。

<xsd:attributeGroup> 項目

將一組屬性宣告歸成一組,以便在複雜型別定義中整組加入。

<xsd:choice> 項目

允許所選群組中包含的一個 (而且只有一個) 項目在包含項目中存在。

<xsd:complexContent> 項目

包含複雜型別 (包含混合內容或只有項目) 的擴充部分或限制。

<xsd:documentation> 項目

指定 annotation 項目中要由使用者讀取或使用的資訊。

<xsd:element> 項目

宣告項目。

<xsd:extension> 項目 (simpleContent)

包含 simpleContent 的擴充部分。這可藉由加入指定屬性、屬性群組或 anyAttribute,來擴充具有簡單內容的簡單型別或複雜型別。

<xsd:extension> 項目 (complexContent)

包含 complexContent 的擴充部分。

<xsd:group> 項目

將一組項目宣告設定為群組,以便整組加入複雜型別定義中。

<xsd:restriction> 項目 (simpleContent)

simpleContent 定義上定義條件約束。

<xsd:restriction> 項目 (complexContent)

complexContent 定義上定義條件約束。

<xsd:sequence> 項目

要求群組中的項目在包含項目中以指定的順序出現。

<xsd:simpleContent> 項目

在具有字元資料的 complexType 項目或做為內容且未包含項目的 simpleType 項目上包含擴充部分或限制。

簡單型別定義

以下是建立簡單型別定義的項目。

項目

說明

<xsd:annotation> 項目

定義註釋。

<xsd:appinfo> 項目

指定要讓 annotation 項目中各應用程式使用的資訊。

<xsd:documentation> 項目

指定 annotation 項目中要由使用者讀取或使用的資訊。

<xsd:element> 項目

宣告項目。

<xsd:list> 項目

定義由單一 simpleType 定義組成的集合。

<xsd:restriction> 項目 (simpleType)

定義針對 simpleType 定義的條件約束。

<xsd:union> 項目

定義由多重 simpleType 定義組成的集合。

請參閱

參考

XML 結構描述 (XSD) 參考

XML 資料型別參考

基本 XML 資料型別

衍生 XML 資料型別

概念

資料型別 Facet