องค์ประกอบ all ของ XML Schema

คำอธิบายและการใช้งาน

องค์ประกอบ all กำหนดว่าองค์ประกอบลูกสายสามารถปรากฏขึ้นในลำดับที่ใดก็ได้ และลูกสายแต่ละองค์ประกอบสามารถปรากฏขึ้นโดยไม่มีครั้งหรือหนึ่งครั้ง

ข้อมูลองค์ประกอบ

จำนวนการปรากฏ หนึ่งครั้ง
องค์ประกอบพ่อ group、restriction (simpleContent)、extension (simpleContent)、restriction (complexContent)、extension (complexContent)、complexType
เนื้อหา annotation、element

ภาษาบอก

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

(? สัญลักษณ์นี้บอกว่าองค์ประกอบสามารถปรากฏขึ้นโดยไม่มีครั้งหรือหนึ่งครั้ง และ * สัญลักษณ์นี้บอกว่าองค์ประกอบสามารถปรากฏขึ้นโดยไม่มีครั้งหรือหลายครั้งในองค์ประกอบทั้งหมด)

คุณสมบัติ คำอธิบาย
id ใช้งานตามความต้องการ หมายเลขระบุองค์ประกอบนี้
maxOccurs ใช้งานตามความต้องการ กำหนดจำนวนของการปรากฏขององค์ประกอบสูงสุด ค่านี้ต้องเป็น 1
minOccurs ใช้งานตามความต้องการ กำหนดจำนวนของการปรากฏขององค์ประกอบ ค่านี้จะเป็นตัวเลข 0 หรือ 1 ถ้าต้องการกำหนดองค์ประกอบว่าเป็นใช้งานตามความต้องการ โปรดตั้งค่าคุณสมบัตินี้เป็น 0 ค่าเริ่มต้นคือ 1
any attributes ใช้งานตามความต้องการ กำหนดคุณสมบัติอื่นที่มีชื่อชั้นแบบ non-schema

ตัวอย่าง 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" สามารถปรากฏขึ้นเรียงลำดับที่ต่างกันได้ และแต่ละองค์ประกอบสามารถปรากฏขึ้นหรือไม่ปรากฏขึ้นเพียงครั้งเดียว!