การแปลงไฟล์ XML ให้มีรูปเป็นร่าง

เรียนรู้วิธีการเขียน XML ที่มีรูปแบบและถูกต้อง

บางครั้งก็ง่ายที่จะเข้าใจวิธีการเขียน XML ที่มีรูปแบบอย่างดีโดยการดูตัวอย่าง จดหมายข่าวของผู้เขียน Web Writer ถูกเขียนโดยใช้รูปแบบ XML - ฉันเรียกว่า AML หรือเกี่ยวกับ Markup Language (go figure!) แม้ว่าจะเป็นเอกสารการทำงาน แต่ก็ไม่ใช่เอกสาร XML ที่มีรูปแบบหรือถูกต้อง

รูปแบบที่ดี

มีกฎเฉพาะเพื่อสร้างเอกสาร XML ที่มีรูปแบบอย่างดี:

มีเพียงสองปัญหาที่เกิดขึ้นกับเอกสารที่ทำให้ไม่ดีขึ้น:

สิ่งแรกที่เอกสาร AML ต้องการคือคำประกาศ XML

ปัญหาอื่น ๆ ก็คือไม่มีองค์ประกอบใดที่ล้อมรอบองค์ประกอบอื่น ๆ ทั้งหมด ในการแก้ไขปัญหานี้ฉันจะเพิ่มองค์ประกอบคอนเทนเนอร์ภายนอก:

<จดหมายข่าว>

การเปลี่ยนแปลงทั้งสองแบบนี้ง่าย (และมั่นใจได้ว่าองค์ประกอบทั้งหมดจะมีเพียง CDATA เท่านั้น) จะทำให้เอกสารที่ไม่ใช่รูปแบบเอกสารเป็นเอกสารที่มีรูปแบบอย่างดี

เอกสาร XML ที่ถูกต้องจะได้รับการตรวจสอบกับ Document Type Definition (DTD) หรือ XML Schema กฎเหล่านี้เป็นชุดของกฎที่สร้างขึ้นโดยนักพัฒนาซอฟต์แวร์หรือองค์กรมาตรฐานที่กำหนดความหมายของเอกสาร XML เหล่านี้บอกคอมพิวเตอร์ว่าจะทำอย่างไรกับมาร์กอัพ

ในกรณีของเกี่ยวกับ Markup Language เนื่องจากนี่ไม่ใช่ภาษา XML มาตรฐานเช่น XHTML หรือ SMIL DTD จะถูกสร้างขึ้นโดยนักพัฒนาซอฟต์แวร์ DTD นั้นน่าจะอยู่บนเซิร์ฟเวอร์เดียวกันกับเอกสาร XML และอ้างอิงที่ด้านบนสุดของเอกสาร

ก่อนที่คุณจะเริ่มพัฒนา DTD หรือ Schema สำหรับเอกสารของคุณคุณควรตระหนักว่าเพียงแค่ผ่านการจัดวางรูปแบบเอกสาร XML ก็สามารถอธิบายได้ด้วยตัวเองดังนั้นจึงไม่จำเป็นต้องมี DTD

ตัวอย่างเช่นด้วยเอกสาร AML ที่มีรูปแบบที่ดีเรามีแท็กต่อไปนี้:

ถ้าคุณคุ้นเคยกับจดหมายข่าวของ Web Writer คุณอาจรู้จักส่วนต่างๆของจดหมายข่าว ทำให้ง่ายในการสร้างเอกสาร XML ใหม่โดยใช้รูปแบบมาตรฐานเดียวกัน ฉันรู้ว่าฉันมักจะใส่ชื่อเต็มยาวในแท็กและ URL ส่วนแรกในแท็ก

DTDs

หากคุณต้องการเขียนเอกสาร XML ที่ถูกต้องเพื่อใช้ข้อมูลหรือประมวลผลเอกสารคุณจะต้องใส่เอกสารลงในเอกสารด้วยแท็ก ในแท็กนี้คุณกำหนดแท็ก XML พื้นฐานในเอกสารและตำแหน่งของ DTD (โดยปกติจะเป็น Web URI) ตัวอย่างเช่น:

สิ่งหนึ่งที่ดีเกี่ยวกับการประกาศ DTD คือคุณสามารถประกาศว่า DTD เป็นแบบโลคัลสำหรับระบบที่เอกสาร XML มีอยู่ใน "SYSTEM" นอกจากนี้คุณยังสามารถชี้ไปที่ DTD สาธารณะเช่นเอกสาร HTML 4.0:

เมื่อคุณใช้ทั้งสองอย่างคุณกำลังบอกให้เอกสารใช้ DTD เฉพาะ (รหัสประจำตัวประชาชน) และตำแหน่งที่จะค้นหา (ตัวระบุระบบ)

สุดท้ายคุณสามารถรวม DTD ภายในไว้ในเอกสารโดยตรงภายในแท็ก DOCTYPE ตัวอย่างเช่นนี่ไม่ใช่ DTD ที่สมบูรณ์สำหรับเอกสาร AML:

< ! ENTITY meta_keywords (#PCDATA)> ]>

XML Schema

เพื่อที่จะสร้างเอกสาร XML ที่ถูกต้องคุณสามารถใช้เอกสาร XML Schema เพื่อกำหนด XML ของคุณ XML Schema เป็นเอกสาร XML ที่อธิบายเอกสาร XML เรียนรู้วิธีการเขียนสคีมา

บันทึก

เพียงแค่ชี้ไปที่ DTD หรือ XML Schema ก็ไม่เพียงพอ XML ที่อยู่ในเอกสารต้องเป็นไปตามกฎใน DTD หรือ Schema การใช้ตัวแบ่งวิเคราะห์การตรวจสอบเป็นวิธีง่ายๆในการตรวจสอบว่า XML ของคุณทำตามกฎ DTD คุณสามารถหา parsers จำนวนมากออนไลน์