Element คืออะไร ?
ส่วนที่อยู่ภายในแท็กเปิดและแท็กปิด อยู่ภายใต้เอกสาร XML ซึ่ง Element สามารถเป็นได้ทั้ง Element ต่างๆ, ข้อความ, แอททริบิว
โค้ด: เลือกทั้งหมด
<student>
<information faculty="humanities">
<id>1420008705</id>
<firstname>ศิริโกศล</firstname>
<lastname>มีสุข</lastname>
<age>21ปี</age>
<born>11-11-1989</born>
<phone>078-4578799</phone>
</information>
</student>
เช่นเดียวกับ Attributes (information faculty="humanities")
ส่วน <id>, <firstname>,<lastname>,<age>,<born> และ <phone>
มี Text Content อยู่ภายใต้เพราะทำการครอบข้อมูลไว้
*Element Content = Element ย่อยๆใน elements
*Attributes = ตัวบอกคุณสมบัติ เช่น <information faculty="humanities"> โดย faculty คือชื่อของแอททริบิว ส่วน "humanities" คือค่าของแอททริบิว และค่าของแอททริบิวจะต้องอยู่ภายใต้ Double quotes เสมอ ดังกฎของ Syntax ว่าไว้ https://www.mindphp.com/forums/viewtopic ... 654#p38654
*Text Content = ข้อความที่อยู่ภายใต้แท็ก
กฎการตั้งชื่อของ XML
1. ชื่อสามารถเป็นได้ทั้งตัวอักษร ตัวเลข เละอักขระอื่นๆ
2. ชื่อไม่สามารถขึ้นต้นด้วยตัวเลข หรือ เครื่องหมายวรรคตอน
3. ชื่อๆม่สามารถขึ้นด้วยตัวอักษร xml,XML,Xml หรืออื่นๆ
4. ชื่อไม่สามารถมีช่องว่างได้
การตั้งชื่อที่ดี
1. ตั้งชื่อให้สื่อความหมาย หากต้องการตั้งชื่อที่ต้องการเเยกคำให้ใช้เครื่องหมาย "_" เช่น <student_id>,<student_name> เป็นต้น
2. ตั้งชื่อแบบสั้นๆง่ายๆ เช่น <first_name> ไม่ใช่ <the_first_name_of_student>
3. หลีกหลี่ยงอักขระ "-" ถ้าตั้งชื่อในลักษณะนี้ <student-id> บางโปรแกรมอาจเข้าใจผิดว่าต้องการจะแยก id ออกจาก student
4. หลีกเลี่ยงอักขระ "." ถ้าตั้งชื่อในลักษณะนี้ <student.id> บางโปรแกรมอาจเข้าใจผิดว่า id คือคุณลักษณะของ student
5. หลีกเลี่ยงอักขระ ":" เพราะเครื่องหมายนี้ไว้ใช้แก้ปัญหา Namespace คือการที่ชื่อ Element ซ้ำกัน เช่น
โค้ด: เลือกทั้งหมด
<html>
<head>
<h:title>Name Space</h:title>
</head>
<body>
<view>
<v:title>XML</v:title>
</view>
</body>
<html>
7. ตัวอังษรที่ไม่ใช่ภาษาอังงกฤษ เช่น áéòáòò นั้นถูกกฎของ XML เเต่ควรระมัดระวังในการใช้
เพราะบางโปรแกรมไม่ได้รองรับภาษาเหล่านี้
Elements ของ XML สามารถขยายออกได้
ตัวอย่างเช่น
โค้ด: เลือกทั้งหมด
<student>
<information>
<firstname>ศิริโกศล</firstname>
<lastname>มีสุข</lastname>
<age>21ปี</age>
</information>
</student>
โค้ด: เลือกทั้งหมด
<student>
<information>
<id>1420008705</id>
<firstname>ศิริโกศล</firstname>
<lastname>มีสุข</lastname>
<age>21ปี</age>
<born>11-11-1989</born>
<phone>078-4578799</phone>
</information>
</student>
ไม่ เพราะโปรแกรมยังคงสามารถค้นหา Element <firstname>, <lastname>,<age>
เหล่านี้ได้อยู่ ดังนั้น XML จึงสามารถขยายออกได้โดยไม่ส่งผลต่อการทำงานของโปรแกรม