XML Validation

ความรู้เกี่ยวกับ XML RML และ ภาษา Markup อื่นๆ

Moderators: mindphp, ผู้ดูแลกระดาน

M013
PHP Super Hero Member
PHP Super Hero Member
Posts: 829
Joined: 22/04/2010 12:02 pm

XML Validation

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

Code: Select all

<?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 ด้วย

Code: Select all

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

Code: Select all

<!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 อะไรบ้าง มีชนิดเป็นอะไร เป็นต้น
ตัวอย่างการกำหนด

Code: Select all

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

User avatar
fern2535
PHP Super Member
PHP Super Member
Posts: 317
Joined: 04/08/2015 10:18 am

Re: XML Validation

Post by fern2535 » 05/08/2015 11:31 am

:icon_plusone:

Post Reply
  • Similar Topics
    Replies
    Views
    Last post

Return to “XML Knowledge”

Who is online

Users browsing this forum: No registered users and 4 guests