<XML Schema อ้างอิงที่สมบูรณ์
ความหมายและการใช้งาน
องค์ประกอบองค์ประกอบกำหนดองค์ประกอบ
องค์ประกอบข้อมูล
- 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>
(หรือไม่สัญญาณบอกว่าองค์ประกอบที่สามารถเกิดขึ้นได้ศูนย์หรือหนึ่งเวลาและเครื่องหมาย * ประกาศว่าองค์ประกอบสามารถเกิดขึ้นได้เป็นศูนย์หรือมากกว่าครั้งภายในองค์ประกอบองค์ประกอบ)
คุณลักษณะ | ลักษณะ |
---|---|
id | ไม่จำเป็น ระบุรหัสเฉพาะสำหรับองค์ประกอบ |
name | ไม่จำเป็น ระบุชื่อสำหรับองค์ประกอบ คุณลักษณะนี้จำเป็นต้องใช้ถ้าองค์ประกอบหลักเป็นองค์ประกอบคี |
ref | ไม่จำเป็น หมายถึงชื่อขององค์ประกอบอื่น ref แอตทริบิวต์สามารถรวมคำนำหน้าใน namespace คุณลักษณะนี้ไม่สามารถใช้ถ้าองค์ประกอบหลักเป็นองค์ประกอบคี |
type | ไม่จำเป็น ระบุทั้งชื่อของในตัวชนิดข้อมูลหรือชื่อของ simpleType หรือองค์ประกอบ complexType |
substitutionGroup | ไม่จำเป็น ระบุชื่อขององค์ประกอบที่สามารถแทนที่ด้วยองค์ประกอบนี้นั้น คุณลักษณะนี้ไม่สามารถใช้องค์ประกอบหลักถ้าไม่ได้เป็นองค์ประกอบคี |
default | ไม่จำเป็น ระบุค่าเริ่มต้นสำหรับองค์ประกอบ (สามารถใช้ได้เฉพาะถ้าเนื้อหาขององค์ประกอบที่เป็นชนิดง่ายหรือข้อความเท่านั้น) |
fixed | ไม่จำเป็น ระบุค่าคงที่สำหรับองค์ประกอบ (สามารถใช้ได้เฉพาะถ้าเนื้อหาขององค์ประกอบที่เป็นชนิดง่ายหรือข้อความเท่านั้น) |
form | ไม่จำเป็น ระบุแบบฟอร์มสำหรับองค์ประกอบ "unqualified" แสดงให้เห็นว่าองค์ประกอบนี้ไม่จำเป็นต้องได้รับการรับรองด้วยคำนำหน้า Namespace อย่าง "qualified" แสดงให้เห็นว่าองค์ประกอบนี้ต้องมีคุณสมบัติที่มีคำนำหน้า Namespace อย่าง ค่าเริ่มต้นคือค่าของ elementFormDefault แอตทริบิวต์ขององค์ประกอบคี คุณลักษณะนี้ไม่สามารถใช้ถ้าองค์ประกอบหลักเป็นองค์ประกอบคี |
maxOccurs | ไม่จำเป็น ระบุจำนวนครั้งสูงสุดองค์ประกอบนี้สามารถเกิดขึ้นในองค์ประกอบหลัก ค่าที่สามารถเป็นตัวเลขใด ๆ > = 0 หรือถ้าคุณต้องการที่จะตั้งไม่ จำกัด จำนวนสูงสุดให้ใช้ค่า "unbounded" ค่าเริ่มต้นคือ 1. คุณลักษณะนี้ไม่สามารถใช้ถ้าองค์ประกอบหลักเป็นองค์ประกอบคี |
minOccurs | ไม่จำเป็น ระบุจำนวนขั้นต่ำครั้งองค์ประกอบนี้สามารถเกิดขึ้นในองค์ประกอบหลัก ค่าที่สามารถเป็นค่าตัวเลข> = 0 เริ่มต้นคือ 1. คุณลักษณะนี้ไม่สามารถใช้ถ้าองค์ประกอบหลักเป็นองค์ประกอบคี |
nillable | ไม่จำเป็น ระบุว่าค่า null อย่างชัดเจนสามารถกำหนดให้องค์ประกอบ ทรูจะช่วยให้อินสแตนซ์ขององค์ประกอบที่จะมี null แอตทริบิวต์ตั้งค่าเป็นจริง null แอตทริบิวต์ถูกกำหนดให้เป็นส่วนหนึ่งของ namespace Schema XML สำหรับอินสแตนซ์ เริ่มต้นเป็นเท็จ |
abstract | ไม่จำเป็น ระบุว่าองค์ประกอบที่สามารถนำมาใช้ในเอกสารเช่น ทรูชี้ให้เห็นว่าองค์ประกอบไม่สามารถปรากฏในเอกสารอินสแตนซ์ แต่องค์ประกอบอื่นที่มี substitutionGroup แอตทริบิวต์มีชื่อที่มีคุณสมบัติเหมาะสม (QName) ขององค์ประกอบนี้จะต้องปรากฏในสถานที่ขององค์ประกอบนี้ เริ่มต้นเป็นเท็จ |
block | ไม่จำเป็น ป้องกันไม่ให้มีองค์ประกอบชนิดที่กำหนดของรากศัพท์มาจากการใช้งานในสถานที่ขององค์ประกอบนี้ ค่านี้สามารถมี #all หรือรายการที่เป็นส่วนหนึ่งของการขยายข้อ จำกัด หรือ equivClass A:
|
final | ไม่จำเป็น ตั้งค่าเริ่มต้นของ final แอตทริบิวต์ในองค์ประกอบองค์ประกอบ คุณลักษณะนี้ไม่สามารถใช้องค์ประกอบหลักถ้าไม่ได้เป็นองค์ประกอบคี ค่านี้สามารถมี #all หรือรายการที่เป็นส่วนหนึ่งของการขยายหรือข้อ จำกัด :
|
any attributes | ไม่จำเป็น ระบุคุณลักษณะอื่น ๆ ใด ๆ ที่ไม่ใช่สคี namespace |
ตัวอย่างที่ 1
ตัวอย่างต่อไปนี้เป็นสคีกับสี่องค์ประกอบที่เรียบง่ายชื่อ "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" องค์ประกอบที่มีสี่องค์ประกอบที่เรียบง่ายอื่น ๆ "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 Schema อ้างอิงที่สมบูรณ์