最新のWeb開発のチュートリアル
 

XMLスキーマ要素要素


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

定義と使用法

element要素は、要素を定義します。

要素情報

  • Parent elements:スキーマ、選択、すべて、シーケンス、グループ

構文

<element
id=ID
name=NCName
ref=QName
type=QName
substitutionGroup=QName
default=string
fixed=string
form=qualified|unqualified
maxOccurs=nonNegativeInteger|unbounded
minOccurs=nonNegativeInteger
nillable=true|false
abstract=true|false
block=(#all|list of (extension|restriction))
final=(#all|list of (extension|restriction))
any attributes
>

annotation?,(simpleType|complexType)?,(unique|key|keyref)*

</element>

(?記号は要素が0回または1回発生する可能性があることを宣言し、*記号は、要素が要素要素内に0回以上発生する可能性があることを宣言します)

属性 説明
id 任意。 要素の一意のIDを指定します。
name 任意。 要素の名前を指定します。 親要素がschema要素である場合、この属性は必須です
ref 任意。 他の要素の名前を指します。 ref属性は、名前空間接頭辞を含めることができます。 親要素がschema要素である場合、この属性は使用できません。
type 任意。 組み込みデータ型の名前、またはのsimpleTypeまたはcomplexTypeの要素の名前のいずれかを指定します。
substitutionGroup 任意。 この要素で置換することができる要素の名前を指定します。 親要素がschema要素でない場合、この属性は使用できません。
default 任意。 (要素の内容が単純型またはテキストのみである場合にのみ使用することができます)要素のデフォルト値を指定します
fixed 任意。 (要素の内容が単純型またはテキストのみである場合にのみ使用することができます)要素の固定値を指定します。
form 任意。 要素の形式を指定します。 "unqualified" 、この要素は、名前空間接頭辞で修飾する必要がないことを示しています。 "qualified"この要素は名前空間接頭辞で修飾する必要があることを示します。 デフォルト値はの値であるelementFormDefaultスキーマ要素の属性。 親要素がschema要素である場合、この属性は使用できません。
maxOccurs 任意。 この要素が親要素で発生する可能性が最大回数を指定します。 値が> = 0、任意の番号にすることができ、またはあなたは、最大数に制限を設定しない値を使用したい場合は"unbounded" 。 デフォルト値は、親要素がschema要素である場合には、この属性を使用することができない1です。
minOccurs 任意。 この要素が親要素で発生する可能性が最小回数を指定します。 親要素がschema要素である場合、この値は、任意の数> = 0のデフォルト値は、この属性を使用することができない1であることができ
nillable 任意。 明示的にNULL値が要素に割り当てることができるかどうかを指定します。 Trueが持っている要素のインスタンスを可能にnull trueに設定された属性を。 null属性はインスタンスのXMLスキーマの名前空間の一部として定義されています。 デフォルトはfalse
abstract 任意。 要素がインスタンス文書で使用できるかどうかを指定します。 Trueの場合、要素がインスタンス文書に表示されないことを示します。 その代わりに、そののsubstitutionGroup属性修飾名含まれている別の要素(QName)この要素のは、この要素の代わりに表示しなければなりません。 デフォルトはfalse
block 任意。 この要素の代わりに使用されているから派生の指定された型を持つ要素を禁止します。 この値は、#ALLまたは拡張子、制限、またはequivClassのサブセットであるリストを含めることができます。
  • 拡張 - 拡張によって導出要素を防止
  • 制限 - 制限によって派生要素を防止
  • 置換は - 置換によって誘導された要素を防ぎます
  • #ALL - すべての派生要素を防止
final 任意。 デフォルト値を設定しfinal要素の要素の属性を。 親要素は、スキーマ要素でない場合、この属性を使用することができません。 この値は、#ALLまたは拡張または制限のサブセットであるリストを含めることができます。
  • 拡張 - 拡張によって導出要素を防止
  • 制限 - 制限によって派生要素を防止
  • #ALL - すべての派生要素を防止
any attributes 任意。 非スキーマの名前空間を持つ任意の他の属性を指定します。

例1

次の例では、4つの簡単な名前の要素を持つスキーマである"fname""lname""age" 、および"dateborn"文字列型、NonNegativeIntegerの、日付のものであり、:

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">

<xs:element name="fname" type="xs:string"/>
<xs:element name="lname" type="xs:string"/>
<xs:element name="age" type="xs:nonNegativeInteger"/>
<xs:element name="dateborn" type="xs:date"/>

</xs:schema>

例2

次の例では、名前付き要素を持つスキーマである"note"複雑なタイプのものです。 "note"の要素は、他の4つの単純な要素が含まれています。 "to""from""heading" 、および"body"

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">

<xs:element name="note">
  <xs:complexType>
    <xs:sequence>
      <xs:element name="to" type="xs:string"/>
      <xs:element name="from" type="xs:string"/>
      <xs:element name="heading" type="xs:string"/>
      <xs:element name="body" type="xs:string"/>
    </xs:sequence>
  </xs:complexType>
</xs:element>

</xs:schema>

例3

この例では、実施例2と同じであるが、ここでは使用することを選択したref要素名を参照するために属性を:

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">

<xs:element name="note">
  <xs:complexType>
    <xs:sequence>
    <xs:element ref="to"/>
    <xs:element ref="from"/>
    <xs:element ref="heading"/>
    <xs:element ref="body"/>
    </xs:sequence>
  </xs:complexType>
</xs:element>

<xs:element name="to" type="xs:string"/>
<xs:element name="from" type="xs:string"/>
<xs:element name="heading" type="xs:string"/>
<xs:element name="body" type="xs:string"/>

</xs:schema>

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