xsdxs:complexType


前書き

xs:complexTypeは、インスタンス・ドキュメント内のXML要素のコンテンツの説明を提供します。 xs:complexTypeの定義はグローバルに行うことができ、その場合には名前を持ち、スキーマ内で再利用できます。また、宣言されたコンテキスト内でのみ使用できます。

パラメーター

属性説明
抽象 trueに設定すると、複合型はxsi:typeを介してインスタンスXML文書で直接使用することはできません。ただし、要素定義の基本型として使用できます。 (デフォルトはfalse) - ルートレベルのxs:complexTypeに対してのみ有効
ブロック XMLインスタンス文書で使用できる型を制限します(デフォルトでは、xs:schemas blockDefault属性の値が設定されていればそれがデフォルトです)。 'union')を空白で区切ります。
最後の型がスキーマ内で特定の方法でこの型を使用することを派生することを制限します(デフォルトでは、xs:schemaのfinalDefault属性の値が設定されていればそれが設定され、それ以外の場合は空値、 '#all'値| '、' union ')を空白で区切ります) - ルートレベルのxs:complexTypeにのみ有効です
id スキーマ項目のID(オプション)
混合インスタンスXML要素に混在コンテンツが含まれる可能性があることを示します(デフォルトはfalse)
xs:complexTypeの名前 - ルートレベルのxs:complexTypeにのみ有効
どれか ' http://www.w3.org/2001/XMLSchema '名前空間にない他の属性も許可されます。
----------------- ------
要素 説明
----------------- ------
xs:注釈ドキュメントと機械で読み取り可能なデータを追加する機能を提供します。
xs:simpleContent xs:complexTypeがxs:simpleTypeから派生している場合に使用されます。
xs:complexContent xs:complexTypeが別のxs:complexTypeから派生している場合に使用されます。
xs:group xs:groupの要素をxs:complexTypeの定義に追加します。
xs:all xs:allからxs:complexType定義に要素を追加します。
xs:choice xs:choiceの要素をxs:complexTypeの定義に追加します。
xs:シーケンス xs:sequenceの要素をxs:complexTypeの定義に追加します。
xs:属性 xs:complexType定義にxs:属性を追加します。
xs:attributeGroup xs:attributeTypeをxs:complexType定義に追加します。
xs:anyAttribute xs:anyAttributeをxs:complexType定義に追加します。

備考

xs:complexTypeから派生する

xs:complexTypeが別のxs:complexTypeから派生している場合は、 拡張制限によってそれを行うことができます。

  • extension - 派生型は、基本型で定義されたすべてを取り出し、それに追加します。
  • 制限 - 派生型は、選択した部分のみを基底型から取り出し、必要な部分のみを許可します。追加アイテムは追加できません。

xs:simpleTypeから派生する

xs:complexTypeがxs:simpleTypeから派生している場合、 拡張子を使ってそれを行うことができます。この場合、結果の型に属性を追加できますが、要素は追加できません。

コンテンツタイプ

概念的には、xs:complexTypeには単純または複雑なコンテンツが含まれます。 xs:complexTypeがxs:anySimpleType(xs:int、xs:stringなど)に基づいた型から派生している場合、 単純です。 複雑なコンテンツを含むxs:complexTypeから派生した場合、それ自体は複雑です (xs:complexTypeが型から派生していない場合は複雑です)。

xs:complexType 関連する例