<完全なXMLスキーマリファレンス
定義と使用法
属性要素は、属性を定義します。
要素情報
- Parent elements: attributeGroupの、スキーマ、complexTypeに、制限(both simpleContent and complexContent) 、拡張子(simpleContentにとcomplexContentを両方)
構文
<attribute
default=string
fixed=string
form=qualified|unqualified
id=ID
name=NCName
ref=QName
type=QName
use=optional|prohibited|required
any attributes
>
(annotation?,(simpleType?))
</attribute>
(?記号は要素が属性要素内に0回または1回発生する可能性があることを宣言します)
属性 | 説明 |
---|---|
default | 任意。 属性のデフォルト値を指定します。 デフォルトおよび固定属性が両方存在することはできません |
fixed | 任意。 属性の固定値を指定します。 デフォルトおよび固定属性が両方存在することはできません |
form | 任意。 属性の形式を指定します。 デフォルト値はの値であるattributeFormDefault属性を含む要素の属性。 次のいずれかに設定できます。
|
id | 任意。 要素の一意のIDを指定します。 |
name | 任意。 属性の名前を指定します。 名前とref属性が両方存在することはできません |
ref | 任意。 名前の属性への参照を指定します。 名前とref属性が両方存在することはできません。 参考文献が存在する場合、simpleType要素、形状、及び種類は存在することができません |
type | 任意。 組み込みデータ型または単純型を指定します。 typeコンテンツはsimpleType要素が含まれていない場合に属性が唯一の存在することができます |
use | 任意。 属性が使用される方法を指定します。 次の値のいずれかになります。
|
any attributes | 任意。 非スキーマの名前空間を持つ任意の他の属性を指定します。 |
例1
<xs:attribute name="code">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[A-Z][A-Z]"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
上記の例では、ことを示し"code"属性が制限されています。 唯一の許容値は、AからZまでの大文字の2です。
例2
複合型の中で、既存の属性の定義を使用して属性を宣言するには、使用ref属性を:
<xs:attribute name="code">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[A-Z][A-Z]"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:complexType name="someComplexType">
<xs:attribute ref="code"/>
</xs:complexType>
例3
属性はデフォルト値または指定された固定値のいずれかを有することができます。 デフォルト値は、自動的に他の値が指定されていない属性に割り当てられます。 次の例では、デフォルト値は"EN" 。
<xs:attribute name="lang" type="xs:string" default="EN"/>
固定値は、自動的に他の値が指定されていない属性に割り当てられます。 しかし、デフォルト値とは異なり、 あなたは固定よりも別の値を指定した場合、文書は無効とみなされます。 次の例では固定値である"EN" :
<xs:attribute name="lang" type="xs:string" fixed="EN"/>
例4
すべての属性はデフォルトではオプションです。 明示的に指定すること 属性はオプションであり、使用する"use"属性を:
<xs:attribute name="lang" type="xs:string" use="optional"/>
必要な属性を作成するには:
<xs:attribute name="lang" type="xs:string" use="required"/>
<完全なXMLスキーマリファレンス