XML スキーマの要素

XML スキーマ要素は機能別に分類され、最上位要素、パーティクル、複数の XML ドキュメントおよび名前空間、ID 制約、属性、名前付き属性、複合型定義、および単純型定義といったグループに分けられます。

  • 最上位の要素

  • パーティクル

  • 複数の XML ドキュメントおよび名前空間

  • ID 制約

  • 属性

  • 名前つきスキーマ オブジェクト

  • 複合型定義

  • 単純型定義

最上位の要素

スキーマ ドキュメントの最上位に出現する要素を次に示します。

要素 説明

<xsd:annotation> 要素

注釈を定義します。

<xsd:attribute> 要素

属性を宣言します。

<xsd:attributeGroup> 要素

一連の属性宣言をグループ化して、複合型定義にグループとして組み入れることができるようにします。

<xsd:complexType> 要素

属性セットと要素のコンテンツを決定する複合型を定義します。

<xsd:element> 要素

要素を宣言します。

<xsd:group> 要素

一連の要素宣言をグループ化して、複合型定義に 1 つのグループとして組み入れることができるようにします。

<xsd:import> 要素

コンテナー スキーマによって参照されるスキーマ コンポーネントが含まれている名前空間を識別します。

<xsd:include> 要素

指定したスキーマ ドキュメントをコンテナー スキーマの対象名前空間にインクルードします。

<xsd:notation> 要素

XML ドキュメント内の XML 以外のデータ書式を記述する表記を保持します。 XML スキーマ表記の宣言は、XML 1.0 NOTATION 宣言を再構築したものです。

<xsd:redefine> 要素

外部スキーマ ファイルから取得する単純型、複合型、グループ、および属性グループを現在のスキーマ内で再定義できます。

<xsd:simpleType> 要素

単純型を定義します。単純型は、属性値またはテキストだけのコンテンツを持つ要素に対する制約や情報を決定します。

パーティクル

minOccurs 属性と maxOccurs 属性を持つことができる要素を次に示します。 これらの要素は、常に、複合型定義の一部または名前付きモデル グループの一部として出現します。

要素 説明

<xsd:all> 要素

グループ内の要素をコンテナー要素内に任意の順序で含める、または含めないようにできます。

<xsd:any> 要素

指定した名前空間の任意の要素をコンテナー sequence 要素またはコンテナー choice 要素内に含めることができます。

<xsd:choice> 要素

選択したグループに含まれている要素のうちの 1 つだけをコンテナー要素内に含めることができます。

<xsd:element> 要素

要素を宣言します。

<xsd:group> 要素

一連の要素宣言をグループ化して、複合型定義に 1 つのグループとして組み入れることができるようにします。

<xsd:sequence> 要素

グループ内の要素がコンテナー要素内で指定したシーケンスで使用されることを要求します。

複数の XML ドキュメントおよび名前空間

他の名前空間からスキーマ要素を持ち込む要素、または同じ名前空間のスキーマ要素を再定義する要素を次に示します。

要素 説明

<xsd:import> 要素

コンテナー スキーマによって参照されるスキーマ コンポーネントが含まれている名前空間を識別します。

<xsd:include> 要素

指定したスキーマ ドキュメントをコンテナー スキーマの対象名前空間にインクルードします。

<xsd:redefine> 要素

外部スキーマ ファイルから取得する単純型、複合型、グループ、および属性グループを現在のスキーマ内で再定義できます。

ID 制約

ID 制約に関連のある要素を次に示します。

要素 説明

<xsd:field> 要素

ID 制約 (uniquekeykeyref の各要素) を定義するために使用される値 (または値の 1 つ) を指定する XPath (XML Path Language) 式を指定します。

<xsd:key> 要素

属性の値または要素の値 (または値セット) が指定したスコープ内のキーである必要があることを指定します。 キーのスコープは、インスタンス ドキュメント内のコンテナー要素です。 キーは、一意であり、null 値を許容せず、常に存在する必要があります。

<xsd:keyref> 要素

属性の値または要素の値 (または値セット) が、指定した key 要素または unique 要素の値と対応することを指定します。

<xsd:selector> 要素

ID 制約 (uniquekeykeyref の各要素) 用の要素セットを選択する XPath 式を指定します。

<xsd:unique> 要素

指定したスコープ内で、属性値または要素値 (あるいは属性値または要素値の組み合わせ) が一意である必要があることを指定します。 値は一意または null である必要があります。

属性

スキーマ内の属性を定義する要素を次に示します。

要素 説明

<xsd:anyAttribute> 要素

指定した名前空間の任意の属性をコンテナー complexType 要素またはコンテナー attributeGroup 要素内に含めることができます。

<xsd:attribute> 要素

属性を宣言します。

<xsd:attributeGroup> 要素

一連の属性宣言をグループ化して、複合型定義にグループとして組み入れることができるようにします。

名前つきスキーマ オブジェクト

スキーマ内の名前付きコンストラクトを定義する要素を次に示します。 名前付きコンストラクトは、QName と共に他のスキーマ要素によって参照されます。

要素 説明

<xsd:attribute> 要素

属性を宣言します。

<xsd:attributeGroup> 要素

一連の属性宣言をグループ化して、複合型定義にグループとして組み入れることができるようにします。

<xsd:complexType> 要素

属性セットと要素のコンテンツを決定する複合型を定義します。

<xsd:element> 要素

要素を宣言します。

<xsd:group> 要素

一連の要素宣言をグループ化して、複合型定義に 1 つのグループとして組み入れることができるようにします。

<xsd:key> 要素

属性の値または要素の値 (または値セット) が指定したスコープ内のキーである必要があることを指定します。 キーのスコープは、インスタンス ドキュメント内のコンテナー要素です。 キーは、一意であり、null 値を許容せず、常に存在する必要があります。

<xsd:keyref> 要素

属性の値または要素の値 (または値セット) が、指定した key 要素または unique 要素の値と対応することを指定します。

<xsd:notation> 要素

XML ドキュメント内の XML 以外のデータ書式を記述する表記を保持します。 XML スキーマ表記の宣言は、XML 1.0 NOTATION 宣言を再構築したものです。

<xsd:simpleType> 要素

単純型を定義します。単純型は、属性値またはテキストだけのコンテンツを持つ要素に対する制約や情報を決定します。

<xsd:unique> 要素

指定したスコープ内で、属性値または要素値 (あるいは属性値または要素値の組み合わせ) が一意である必要があることを指定します。 値は一意または null である必要があります。

複合型定義

複合型定義を作成する要素を次に示します。

要素 説明

<xsd:all> 要素

グループ内の要素をコンテナー要素内に任意の順序で含める、または含めないようにできます。

<xsd:annotation> 要素

注釈を定義します。

<xsd:any> 要素

指定した名前空間の任意の要素をコンテナー sequence 要素またはコンテナー choice 要素内に含めることができます。

<xsd:anyAttribute> 要素

指定した名前空間の任意の属性をコンテナー complexType 要素またはコンテナー attributeGroup 要素内に含めることができます。

<xsd:appinfo> 要素

アプリケーションによって使用される情報を annotation 要素内で指定します。

<xsd:attribute> 要素

属性を宣言します。

<xsd:attributeGroup> 要素

一連の属性宣言をグループ化して、複合型定義にグループとして組み入れることができるようにします。

<xsd:choice> 要素

選択したグループに含まれている要素のうちの 1 つだけをコンテナー要素内に含めることができます。

<xsd:complexContent> 要素

混合コンテンツを含むかまたは要素だけを含む複合型に対する拡張または制限を含めます。

<xsd:documentation> 要素

ユーザーが読む (または使用する) 情報を annotation 要素内に指定します。

<xsd:element> 要素

要素を宣言します。

<xsd:extension> 要素 (simpleContent)

simpleContent の拡張を定義します。 指定された属性、属性グループ、または anyAttribute を追加することによって、単純コンテンツを持つ単純型または複合型を拡張します。

<xsd:extension> 要素 (complexContent)

complexContent の拡張を保持します。

<xsd:group> 要素

一連の要素宣言をグループ化して、複合型定義に 1 つのグループとして組み入れることができるようにします。

<xsd:restriction> 要素 (simpleContent)

simpleContent 定義の制約を定義します。

<xsd:restriction> 要素 (complexContent)

complexContent 定義の制約を定義します。

<xsd:sequence> 要素

グループ内の要素がコンテナー要素内で指定したシーケンスで使用されることを要求します。

<xsd:simpleContent> 要素

コンテンツとして文字データまたは simpleType 要素を含む complexType 要素に対する拡張または制限を保持し、要素は保持しません。

単純型定義

単純型定義を作成する要素を次に示します。

要素 説明

<xsd:annotation> 要素

注釈を定義します。

<xsd:appinfo> 要素

アプリケーションによって使用される情報を annotation 要素内で指定します。

<xsd:documentation> 要素

ユーザーが読む (または使用する) 情報を annotation 要素内に指定します。

<xsd:element> 要素

要素を宣言します。

<xsd:list> 要素

1 つの simpleType 定義のコレクションを定義します。

<xsd:restriction> 要素 (simpleType)

simpleType 定義の制約を定義します。

<xsd:union> 要素

複数の simpleType 定義のコレクションを定義します。

参照

リファレンス

XML スキーマ (XSD) リファレンス
XML データ型リファレンス
プリミティブ XML データ型
派生 XML データ型

概念

データ型のファセット