ホーム HTML CSS XML JAVASCRIPT   PHP SQL MORE...   リファレンス 事例集    

XML スキーマ any 要素


XML Schema Reference 完全なXMLスキーマリファレンス

定義と用法

any 要素は、作成者がスキーマで指定されていない要素で XML 文書を拡張することを可能にします。

要素情報

  • 親要素: choice, sequence

構文

<any
id=ID
maxOccurs=nonNegativeInteger|unbounded
minOccurs=nonNegativeInteger
namespace=namespace
processContents=lax|skip|strict
any attributes
>

(annotation?)

</any>

(any 要素内で、? 記号は要素が 0 または 1 回出現できることを宣言します)

属性 説明
id オプション。 要素へユニークな ID を指定する
maxOccurs オプション。any 要素が親要素内に出現できる最大回数を指定する。 値は、任意の数値 >= 0 にすることができる。また、最大数の上限を設定しない場合は、 値として "unbounded" を使用する。デフォルト値は 1
minOccurs オプション。any 要素が親要素内に出現できる最小回数を指定する。 値は、任意の数 >= 0にすることができる。デフォルト値は 1
namespace オプション。使用可能な要素を含む名前空間を指定する。次のいずれかに設定できる:
  • ##any - 任意の名前空間からの要素が出現できる(これがデフォルト)
  • ##other - 親要素の名前空間ではない任意の名前空間からの要素が出現できる
  • ##local - 名前空間を持たない任意の要素が出現できる
  • ##targetNamespace - 親要素の名前空間の要素が出現できる
  • {名前空間の URI 参照、##targetNamespace、##local} のリスト - 名前空間の空白区切りリストの要素が出現できる
processContents オプション。 XMLプロセッサがこの any 要素によって指定された要素に対する妥当性確認 処理方法を指定する。次のいずれかに設定できる:
  • strict - XMLプロセッサは、要求された名前空間のスキーマを取得し、 要素の妥当性確認を行う必要がある(これがデフォルト)
  • lax - strict に同じだが、スキーマを取得できない場合でもエラーは発生しない
  • skip - XMLプロセッサは、指定された名前空間からの任意の要素に対する妥当性確認をしない
any attributes オプション。非スキーマ名前空間を持つ他の属性を指定する

例 1

次の例では、"person" と言う要素の宣言を示しています。 <any> 要素を使用することで、作成者は任意の要素を持つ "person" の内容(<lastname> の後) を拡張することができる:

<xs:element name="person">
  <xs:complexType>
    <xs:sequence>
      <xs:element name="firstname" type="xs:string"/>
      <xs:element name="lastname" type="xs:string"/>
      <xs:any minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
</xs:element>


XML Schema Reference 完全なXMLスキーマリファレンス