XML คืออะไร (ตอนที่ 3)
<book>
<title>My First XML</title>
<prod id="33-657" media="paper"></prod>
<chapter>Introduction to XML
<para>What is HTML</para>
<para>What is XML</para>
</chapter>
<chapter>XML Syntax
<para>Elements must have a closing tag</para>
<para>Elements must be properly nested</para>
</chapter>
</book>
book คือ โหนดราก (root element)
titile, prod และ chapter คือ โหนดลูก(child elements) ของ book (หรือ book คือ โหนดแม่ (parent elements) ของ titile, prod และ chapter)
titile, prod และ chapter คือ siblings หรือ โหนดพี่น้องกัน (sister elements) เพราะ มันอยู่ในระดับเดียวกัน
ในแต่ละ element อาจประกอบด้วยข้อมูลต่างชนิดกันก็ได้ เช่น element content, mixed content, simple content, หรือ empty content และ แต่ละ element อาจมี attributes ด้วยก็ได้
จากตัวอย่าง book คือ element content เนื่องจากมันเป็น โหนดแม่ ของ elements อื่นๆ, chapter คือ mixed content เนื่องจากมันประกอบด้วยข้อมูลภายในที่เป็นทั้งข้อความ และ elements อื่นๆ, para คือ simple content หรือ text content เนื่องจากมันประกอบด้วยข้อมูลที่เป็น ข้อความ อย่างเดียว ส่วน prod คือ empty content เนื่องจากมันไม่มีข้อมูลอะไรเลย
ในตัวอย่าง จะเห็นว่า prod จะมี attributes, attribute แรก ชื่อ name และมีค่าเป็น "33-657" และอีก attribute ชื่อ media มีค่าเป็น "paper"
ข้อกำหนดของ Element
* ชื่อของ element อาจเป็นตัวอักษร ตัวเลข หรือ อักขระ
* ชื่อของ element ต้องไม่ขี้นต้น ด้วยตัวเลข หรือ เครื่องหมายวรรคตอนต่างๆ (http://en.wikipedia.org/wiki/Punctuation)
* ชื่อของ element ต้องไม่ขี้นต้น ด้วย xml, XML, Xml....
* ชื่อของ element ต้องไม่ประกอบด้วย ช่องว่าง
* ชื่อของ element ต้องไม่เป็น คำสงวน
* ไม่ควรใช้ "-" และ "." ในชื่อ ให้ใช้ "_" แทน เช่น <first_name> หากใช้ <first-name> parser จะแยก first และ name ออกเป็นคนละคำกัน หรือหากใช้ <first.name> name จะถูกมองว่าเป็น property ของ first
* ห้ามใช้ ":" ในชื่อ เนื่องจาก เป็นคำสงวนเพื่อใช้ระบุ namespaces
* ห้ามใช้ อักขระบางตัวใน เนื้อหา เช่น & < > ' หรือ " ให้ใช้ & < > ' " แทน เช่น "AT&T" ใช้
<company-name>AT&T</company-name>