XML Validation

ตอบกระทู้


คำถามนี้ เพื่อป้องกันการส่งแบบอัตโนมัติจากสแปมบอท
รูปแสดงอารมณ์
:icon_plusone: :like: :plusone: :gfb: :-D :) :( :-o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: :angry: :baa: :biggrin:
รูปแสดงอารมณ์อื่นๆ

BBCode เปิด
[img] เปิด
[flash] เปิด
[url] เปิด
[Smile icon] เปิด

กระทู้แนะนำ
   

มุมมองที่ขยายได้ กระทู้แนะนำ: XML Validation

XML Validation

โพสต์ โดย M013 » 21/09/2013 4:52 pm

XML Validation
- เอกสาร XML ที่ถูกต้องนั้นจะต้องมีคุณสมบัติเป็น "Well Formed"
- การตรวจทานความถูกต้องของเอกสาร XML ก็คือการทำ Validation

XML ที่มีคุณสมบัติเป็น Well Formed
คุณสมบัติ Well Formed ของเอกสาร XML จะต้องมีความถูกต้องตามกฎของ XML ได้แก่
1.XML ต้องมี Root Element เสมอ
2.XML ต้องมีเเท็กปิดเสมอ
3.XML เป็น Case Sensitive
4.XML ห้าม "Nested closing" หรือ ห้ามปิดแท็กซ้อนกัน
5.XML ต้องมีเครื่องหมาย Double-Quoted ครอบ Attribute ("__")
ตัวอย่าง code

โค้ด: เลือกทั้งหมด

<?xml version="1.0"?>
<student>
        <id>140006842</id>
        <firstname>Siripapha</firstname>
        <lastname>Pongsomboon</lastname>
        <age>21 Year</age>
         <born>11-18-1989</born>
        <phone>089-74525874</phone>
</student>

เอกสาร XML ที่ถูกต้อง (Valid)
เอกสาร XML ที่ถูกต้องจะมีคุณสมบัติเป็น Well Formed จะเป็นการยืนยันความถูกต้องของชนิดของเอกสาร DTD ด้วย

โค้ด: เลือกทั้งหมด

<?xml version="1.0"?>
<!DOCTYPE student SYSTEM "Student.dtd">
<student>
        <id>140006842</id>
        <firstname>Siripapha</firstname>
        <lastname>Pongsomboon</lastname>
        <age>21 Year</age>
        <born>11-18-1989</born>
        <phone>089-74525874</phone>
</student>
DOCTYPE ในตัวอย่าง code ข้างต้นมีการอ้างอิงภายในกับไฟล์ DTD

XML DTD
DTD เป็นการตรวจสอบความถูกต้องของเอกสาร XML ว่ามีความถูกต้องกับที่กำหนดไว้นไฟล์ DTD หรือไม่ ถ้าไม่ระบบก็จะเตือนความผิดพลาดออก
ตัวอย่างการกำหนด DTD

โค้ด: เลือกทั้งหมด

<!DOCTYPE student
[
<!ELEMENT student (id,firstname,lastname,age,born,phone)>
<!ELEMENT id (#PCDATA)>
<!ELEMENT firstname (#PCDATA)>
<!ELEMENT lastname (#PCDATA)>
<!ELEMENT age (#PCDATA)>
<!ELEMENT born (#PCDATA)>
<!ELEMENT phone (#PCDATA)>
]>

XML Schema
เป็นเอกสาร XML ประเภทหนึ่ง ที่สนับสนุนโดย W3C เเต่เป็นเอกสารที่ระบุโครงสร้างของ XML ที่จะนำไปประมวลผลนั้นจะต้องเป็นอย่างไร
เช่น ต้องมี Elements อะไรบ้าง มีชนิดเป็นอะไร เป็นต้น
ตัวอย่างการกำหนด

โค้ด: เลือกทั้งหมด

<xs:element name="student">

<xs:complexType>
  <xs:sequence>
    <xs:element name="id" type="xs:string"/>
    <xs:element name="firstname" type="xs:string"/>
    <xs:element name="lastname" type="xs:string"/>
    <xs:element name="age" type="xs:string"/>
    <xs:element name="born" type="xs:string"/>
    <xs:element name="phone" type="xs:string"/>
  </xs:sequence>
</xs:complexType>

</xs:element>

ข้างบน