ล่าสุดการพัฒนาเว็บบทเรียน
×

XML เกี่ยวกับการสอน

XML บ้าน XML บทนำ XML วิธีใช้ XML ต้นไม้ XML วากยสัมพันธ์ XML องค์ประกอบ XML แอตทริบิวต์ XML namespaces XML แสดง XML XSLT XML XPath XML XLink XML ตรวจสอบ XML DTD XML schema XML เซิร์ฟเวอร์ XML การประยุกต์ใช้งาน XML ตัวอย่าง XML ทดสอบ XML ใบรับรอง

XML DOM

DOM แนะนำ DOM โหนด DOM XMLHttpRequest DOM การเข้าถึง DOM ข้อมูลโหนด DOM รายการโหนด DOM ภายใน DOM การนำทาง DOM ได้รับค่า DOM Change โหนด DOM Remove โหนด DOM Replace โหนด DOM Create โหนด DOM Add โหนด DOM Clone โหนด DOM ตัวอย่าง

DOM การอ้างอิง

DOM ประเภทโหนด DOM ปม DOM NodeList DOM NamedNodeMap DOM เอกสาร DOM ธาตุ DOM คุณลักษณะ DOM ข้อความ DOM CDATA DOM คิดเห็น DOM XMLHttpRequest DOM parser

XML DTD

DTD แนะนำ DTD การก่อสร้างตึก DTD องค์ประกอบ DTD แอตทริบิวต์ DTD องค์ประกอบ VS attr DTD หน่วยงาน DTD ตัวอย่าง

XSD Schema

XSD แนะนำ XSD ทำอย่างไร XSD <schema> XSD องค์ประกอบ XSD แอตทริบิวต์ XSD ข้อ จำกัด

XSD ซับซ้อน

XSD องค์ประกอบ XSD ว่างเปล่า XSD เพียงองค์ประกอบ XSD ข้อความเท่านั้น XSD ผสม XSD ตัวชี้วัด XSD <any> XSD <anyAttribute> XSD การแทน XSD ตัวอย่าง

XSD Data

XSD เชือก XSD วันที่ XSD เป็นตัวเลข XSD อื่น ๆ XSD การอ้างอิง

Web บริการ

XML บริการ XML WSDL XML SOAP XML RDF XML RSS

 

XML Schema complexType ธาตุ


<XML Schema อ้างอิงที่สมบูรณ์

ความหมายและการใช้งาน

องค์ประกอบ complexType กำหนดประเภทที่ซับซ้อน องค์ประกอบที่ซับซ้อนชนิดเป็นองค์ประกอบ XML ที่มีองค์ประกอบอื่น ๆ และ / หรือแอตทริบิวต์

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

  • Parent elements: องค์ประกอบ redefine แบบแผน

วากยสัมพันธ์

<complexType
id=ID
name=NCName
abstract=true|false
mixed=true|false
block=(#all|list of (extension|restriction))
final=(#all|list of (extension|restriction))
any attributes
>

(annotation?,(simpleContent|complexContent|((group|all|
choice|sequence)?,((attribute|attributeGroup)*,anyAttribute?))))

</complexType>

(หรือไม่สัญญาณบอกว่าองค์ประกอบที่สามารถเกิดขึ้นได้ศูนย์หรือหนึ่งเวลาและการเข้าสู่ระบบ * บอกว่าองค์ประกอบที่สามารถเกิดขึ้นได้เป็นศูนย์หรือมากกว่าครั้งภายในองค์ประกอบ complexType)

คุณลักษณะ ลักษณะ
id ไม่จำเป็น ระบุรหัสเฉพาะสำหรับองค์ประกอบ
name ไม่จำเป็น ระบุชื่อสำหรับองค์ประกอบ
abstract ไม่จำเป็น ระบุว่าชนิดที่ซับซ้อนสามารถนำมาใช้ในเอกสารเช่น ทรูชี้ให้เห็นว่าเป็นองค์ประกอบที่ไม่สามารถใช้ชนิดที่ซับซ้อนนี้โดยตรง แต่ต้องใช้ชนิดที่มีความซับซ้อนได้มาจากประเภทที่ซับซ้อนนี้ เริ่มต้นเป็นเท็จ
mixed ไม่จำเป็น ระบุว่าข้อมูลตัวอักษรได้รับอนุญาตให้ปรากฏระหว่างองค์ประกอบของเด็กขององค์ประกอบ complexType นี้ เริ่มต้นเป็นเท็จ ถ้าองค์ประกอบ simpleContent เป็นองค์ประกอบเด็ก mixed แอตทริบิวต์ไม่ได้รับอนุญาต!
block ไม่จำเป็น ป้องกันไม่ให้ชนิดที่ซับซ้อนที่มีประเภทที่กำหนดมาจากการใช้ในสถานที่ของประเภทที่ซับซ้อนนี้ ค่านี้สามารถมี #all หรือรายการที่เป็นส่วนหนึ่งของการขยายหรือข้อ จำกัด :
  • ขยาย - ป้องกันประเภทที่ซับซ้อนได้มาโดยการขยาย
  • ข้อ จำกัด - ป้องกันประเภทที่ซับซ้อนได้มาจากข้อ จำกัด
  • #all - ป้องกันทุกประเภทมาที่ซับซ้อน
final ไม่จำเป็น ป้องกันไม่ให้ชนิดที่ระบุแหล่งที่มาขององค์ประกอบประเภทนี้มีความซับซ้อน สามารถมี #all หรือรายการที่เป็นส่วนหนึ่งของการขยายหรือข้อ จำกัด
  • ขยาย - ป้องกันไม่ให้มาโดยการขยาย
  • ข้อ จำกัด - ป้องกันไม่ให้มาจากข้อ จำกัด
  • #all - ป้องกันไม่ให้แหล่งที่มาทั้งหมด
any attributes ไม่จำเป็น ระบุคุณลักษณะอื่น ๆ ใด ๆ ที่ไม่ใช่สคี namespace

ตัวอย่างที่ 1

ตัวอย่างต่อไปนี้มีองค์ประกอบที่มีชื่อว่า "note" ที่เป็นประเภทที่ซับซ้อน:

<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>

ตัวอย่างที่ 2

ตัวอย่างต่อไปนี้มีประเภทที่ซับซ้อน "fullpersoninfo" ที่มาจากชนิดอื่นที่ซับซ้อน "personinfo" โดยการขยายประเภทได้รับมรดกที่มีสามองค์ประกอบเพิ่มเติม (address, city and country) :

<xs:element name="employee" type="fullpersoninfo"/>

<xs:complexType name="personinfo">
  <xs:sequence>
    <xs:element name="firstname" type="xs:string"/>
    <xs:element name="lastname" type="xs:string"/>
  </xs:sequence>
</xs:complexType>

<xs:complexType name="fullpersoninfo">
  <xs:complexContent>
    <xs:extension base="personinfo">
      <xs:sequence>
        <xs:element name="address" type="xs:string"/>
        <xs:element name="city" type="xs:string"/>
        <xs:element name="country" type="xs:string"/>
      </xs:sequence>
    </xs:extension>
  </xs:complexContent>
</xs:complexType>

ในตัวอย่างข้างต้น "employee" องค์ประกอบที่จะต้องมีในลำดับองค์ประกอบต่อไปนี้: "firstname" , "lastname" , "address" , "city" และ "country"


<XML Schema อ้างอิงที่สมบูรณ์