XML Tutorial

XML หน้าแรก บทนำ XML XML วิธีใช้งาน XML Tree ไวยากรณ์ XML องค์ประกอบ XML คุณสมบัติ XML XML เนมสเปซ จอแสดงผล XML XML HttpRequest XML Parser XML DOM XML XPath XML XSLT XML XQuery XML XLink เครื่องมือตรวจสอบ XML XML DTD XML Schema XML Server ตัวอย่าง XML แบบทดสอบ XML ใบรับรอง XML

XML AJAX

บทนำ AJAX AJAX XMLHttp คำขอ AJAX การตอบสนอง AJAX ไฟล์ AJAX XML AJAX PHP AJAX ASP ฐานข้อมูล AJAX แอปพลิเคชัน AJAX ตัวอย่าง AJAX

XML DOM

บทนำ DOM โหนด DOM การเข้าถึง DOM ข้อมูลโหนด DOM รายการโหนด DOM DOM Traversing การนำทาง DOM DOM รับค่า DOM เปลี่ยนโหนด DOM ลบโหนด DOM แทนที่โหนด DOM สร้างโหนด DOM เพิ่มโหนด DOM โคลนโหนด ตัวอย่าง DOM

บทช่วย สอนXPath

บทนำ XPath โหนด XPath ไวยากรณ์ XPath แกน XPath ตัวดำเนินการ XPath ตัวอย่าง XPath

กวดวิชาXSLT

บทนำ XSLT ภาษา XSL การแปลง XSLT XSLT <แม่แบบ> XSLT <ค่าของ> XSLT <for-each> XSLT <sort> XSLT <if> XSLT <เลือก> ใช้ XSLT XSLT บนไคลเอนต์ XSLT บนเซิร์ฟเวอร์ XSLT แก้ไข XML ตัวอย่าง XSLT

กวดวิชาXQuery

บทนำ XQuery ตัวอย่าง XQuery XQuery FLWOR XQuery HTML ข้อกำหนด XQuery ไวยากรณ์ XQuery XQuery เพิ่ม XQuery Select ฟังก์ชัน XQuery

XML DTD

บทนำ DTD บล็อกตัวต่อ DTD องค์ประกอบ DTD คุณสมบัติ DTD องค์ประกอบ DTD เทียบกับ Attr หน่วยงาน DTD ตัวอย่าง DTD

ส คีมา XSD

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

XSD Complex

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

ข้อมูลXSD

XSD สตริง วันที่ XSD XSD ตัวเลข XSD เบ็ดเตล็ด ข้อมูลอ้างอิง XSD

บริการเว็บ

XML Services XML WSDL XML SOAP XML RDF XML RSS

อ้างอิง

ประเภทโหนด DOM โหนด DOM DOM NodeList DOM NamedNodeMap เอกสาร DOM องค์ประกอบ DOM แอตทริบิวต์ DOM ข้อความ DOM DOM CDATA ความคิดเห็นของ DOM DOM XMLHttpRequest DOM Parser องค์ประกอบ XSLT ฟังก์ชัน XSLT/XPath

โหนด XML DOM


ตาม XML DOM ทุกอย่างในเอกสาร XML เป็นโหนด :

  • เอกสารทั้งหมดเป็นโหนดเอกสาร
  • องค์ประกอบ XML ทุกองค์ประกอบเป็นโหนดองค์ประกอบ
  • ข้อความในองค์ประกอบ XML เป็นโหนดข้อความ
  • ทุกแอตทริบิวต์เป็นโหนดแอตทริบิวต์
  • ความคิดเห็นเป็นโหนดความคิดเห็น

ตัวอย่าง DOM

ดูไฟล์ XML ต่อไปนี้ ( books.xml ):

×

หัวข้อ

<?xml version="1.0" encoding="UTF-8"?>
<bookstore>
  <book category="cooking">
    <title lang="en">Everyday Italian</title>
    <author>Giada De Laurentiis</author>
    <year>2005</year>
    <price>30.00</price>
  </book>
  <book category="children">
    <title lang="en">Harry Potter</title>
    <author>J K. Rowling</author>
    <year>2005</year>
    <price>29.99</price>
  </book>
  <book category="web">
    <title lang="en">XQuery Kick Start</title>
    <author>James McGovern</author>
    <author>Per Bothner</author>
    <author>Kurt Cagle</author>
    <author>James Linn</author>
    <author>Vaidyanathan Nagarajan</author>
    <year>2003</year>
    <price>49.99</price>
  </book>
  <book category="web" cover="paperback">
    <title lang="en">Learning XML</title>
    <author>Erik T. Ray</author>
    <year>2003</year>
    <price>39.95</price>
  </book>
</bookstore>

โหนดรูทใน XML ด้านบนมีชื่อว่า <ร้านหนังสือ>

โหนดอื่นๆ ทั้งหมดในเอกสารมีอยู่ภายใน <ร้านหนังสือ>

โหนดราก <ร้านหนังสือ> มี 4 <book> โหนด

<book> โหนดแรกถือโหนดย่อย: <title>, <author>, <year> และ <price>

โหนดย่อยประกอบด้วยโหนดข้อความแต่ละโหนด "ภาษาอิตาลีทุกวัน", "Giada De Laurentiis", "2005" และ "30.00"



ข้อความจะถูกเก็บไว้ในโหนดข้อความเสมอ

ข้อผิดพลาดทั่วไปในการประมวลผล DOM คือการคาดหวังว่าโหนดองค์ประกอบจะมีข้อความ

อย่างไรก็ตาม ข้อความของโหนดองค์ประกอบจะถูกเก็บไว้ในโหนดข้อความ

ในตัวอย่างนี้: <year>2005</year>โหนดองค์ประกอบ <year> มีโหนดข้อความที่มีค่า "2005"

"2005" ไม่ใช่ค่าขององค์ประกอบ <year>!


แผนผังโหนด XML DOM

XML DOM ดูเอกสาร XML เป็นโครงสร้างแบบต้นไม้ โครงสร้างต้นไม้เรียกว่าโหนดทรี

ทุกโหนดสามารถเข้าถึงได้ผ่านทรี เนื้อหาของพวกเขาสามารถแก้ไขหรือลบและสามารถสร้างองค์ประกอบใหม่ได้

โหนดทรีแสดงชุดของโหนดและการเชื่อมต่อระหว่างโหนด ต้นไม้เริ่มต้นที่โหนดรากและแยกออกไปยังโหนดข้อความที่ระดับต่ำสุดของต้นไม้:

DOM โหนดทรี

รูปภาพ ด้านบนแสดงไฟล์ XML books.xml


ผู้ปกครองโหนด เด็ก และพี่น้อง

โหนดในแผนผังโหนดมีความสัมพันธ์แบบลำดับชั้นซึ่งกันและกัน

คำว่า parent, child และ brother ใช้เพื่ออธิบายความสัมพันธ์ โหนดหลักมีลูก เด็กในระดับเดียวกันเรียกว่าพี่น้อง (พี่น้อง)

  • ในโหนดทรี โหนดบนสุดเรียกว่ารูท
  • ทุกโหนด ยกเว้นรูท มีโหนดหลักเพียงหนึ่งโหนดเท่านั้น
  • โหนดสามารถมีลูกได้จำนวนเท่าใดก็ได้
  • ใบไม้เป็นโหนดที่ไม่มีลูก
  • พี่น้องเป็นโหนดที่มีผู้ปกครองคนเดียวกัน

รูปภาพต่อไปนี้แสดงส่วนหนึ่งของแผนผังโหนดและความสัมพันธ์ระหว่างโหนด:

ต้นไม้โหนด

เนื่องจากข้อมูล XML มีโครงสร้างอยู่ในรูปแบบต้นไม้ จึงสามารถสำรวจได้โดยไม่ต้องทราบโครงสร้างที่แน่นอนของต้นไม้และไม่ทราบประเภทของข้อมูลที่มีอยู่ภายใน

คุณจะได้เรียนรู้เพิ่มเติมเกี่ยวกับการสำรวจโหนดทรีในบทต่อๆ ไปของบทช่วยสอนนี้


ลูกคนแรก - ลูกคนสุดท้าย

ดูส่วน XML ต่อไปนี้:

<bookstore>
  <book category="cooking">
    <title lang="en">Everyday Italian</title>
    <author>Giada De Laurentiis</author>
    <year>2005</year>
    <price>30.00</price>
  </book>
</bookstore>

ใน XML ด้านบน องค์ประกอบ <title> เป็นองค์ประกอบย่อยขององค์ประกอบ <book> และองค์ประกอบ <price> เป็นองค์ประกอบย่อยสุดท้ายขององค์ประกอบ <book>

นอกจากนี้ องค์ประกอบ <book> ยังเป็นโหนดหลักขององค์ประกอบ <title>, <author>, <year> และ <price>