XML Schema all element

definition and usage

عنصر all اجازه می‌دهد تا فرزندان آن به هر ترتیبی ظاهر شوند، و هر فرزند می‌تواند صفر یا یک بار ظاهر شود.

element information

occurrence count once
parent element group،restriction (simpleContent)،extension (simpleContent)،restriction (complexContent)،extension (complexContent)،complexType
content annotation،element

grammar

<all
id=ID
maxOccurs=1
minOccurs=0|1
any attributes
>
(annotation?,element*)
</all>

؟ نشانه‌ای است که نشان می‌دهد یک عنصر می‌تواند صفر یا یک بار ظاهر شود، در حالی که * نشانه‌ای است که نشان می‌دهد یک عنصر می‌تواند در هر عنصر صفر یا چند بار ظاهر شود.

attribute description
id اختیاری. شناسه منحصر به فرد این عنصر.
maxOccurs اختیاری. بیشترین تعداد بارهای ظهور یک عنصر. این مقدار باید 1 باشد.
minOccurs اختیاری. حداقل تعداد بارهای ظهور یک عنصر. این مقدار می‌تواند عددی بین 0 و 1 باشد. برای مشخص کردن که یک عنصر اختیاری است، این ویژگی را به 0 تنظیم کنید. مقدار پیش‌فرض 1 است.
any attributes اختیاری. مشخص می‌کند که هر属性 غیر نمونه‌شده با فضای نام غیرشکلی باید مشخص شود.

مثال 1

<xs:element name="person">
  <xs:complexType>
    <xs:all>
      <xs:element name="firstname" type="xs:string"/>
      <xs:element name="lastname" type="xs:string"/>
    </xs:all>
  </xs:complexType>
</xs:element>

این مثال نشان می‌دهد که عناصر "firstname" و "lastname" می‌توانند به هر ترتیبی ظاهر شوند و هر دو باید و تنها یک بار ظاهر شوند!

مثال 2

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

مثال بالا نشان می‌دهد که عناصر "firstname" و "lastname" می‌توانند به هر ترتیبی ظاهر شوند و هر کدام می‌توانند صفر یا یک بار ظاهر شوند!