ความแตกต่างระหว่าง SAX และ DOM ความแตกต่างระหว่าง

Anonim

SAX vs. DOM

API แบบธรรมดาสำหรับ XML (หรือที่เรียกว่า SAX) คือ API parser access แบบซีเรียลสำหรับ XML (นั่นคือ API ที่ได้รับข้อมูลและวิเคราะห์ข้อความจากที่ เอกสารที่เฉพาะเจาะจงในหน้าเว็บที่สร้างขึ้นแบบไดนามิกหรือหน้าเว็บที่มีเนื้อหาแบบอินเทอร์แอ็กทีฟ) ทำหน้าที่เป็นหนึ่งในทางเลือกที่นิยมมากขึ้นใน Document Object Model (หรือที่เรียกว่า DOM)

> DOM เป็นอนุสัญญาที่ไม่ขึ้นกับภาษาใดภาษาหนึ่งคืออนุสัญญาที่เข้ากันได้กับหลายแพลตฟอร์มใช้เพื่อแสดงและโต้ตอบกับวัตถุในเอกสาร HTML, XML และ XHTML ภายในไวยากรณ์ของภาษา DOM ใช้ DOM หลายด้านสามารถจัดการและจัดการได้

ฟังก์ชัน SAX parser ทำหน้าที่เป็นสิ่งที่เรียกว่า stream p arser (ซึ่งหมายความว่าได้รับและวิเคราะห์ข้อความที่สตรีมจากตำแหน่ง) มี API ที่ขับเคลื่อนโดยเหตุการณ์ (นั่นคือ API ซึ่งขึ้นอยู่กับเหตุการณ์ที่เกิดขึ้นภายในสภาพแวดล้อมบางอย่าง) ผู้ใช้มีตัวควบคุมเพื่อกำหนดจำนวนวิธีเรียกกลับ (นั่นคือวิธีการที่ติดตามกลับไปยังแหล่งที่มาของข้อมูลที่ร้องขอ) วิธีการเหล่านี้จะถูกเรียกเมื่อเหตุการณ์เกิดขึ้นระหว่างการแยกวิเคราะห์ มีสี่เหตุการณ์หลักที่อาจเกิดขึ้นระหว่างการแยกวิเคราะห์ ได้แก่ โหนดทดสอบ XML โหนดองค์ประกอบ XML คำแนะนำในการประมวลผล XML และความคิดเห็นของ XML เมื่อพบคุณสมบัติ XML เหล่านี้จะมีการวางกิจกรรมต่างๆไว้ เหตุการณ์ยังเกิดขึ้นเมื่อคุณลักษณะเหล่านี้ถึงจุดจบแล้ว ดังนั้น SAX จึงไม่มีทิศทาง (หมายถึงเคลื่อนที่ไปในทิศทางเดียว) และข้อมูลที่ถูกแยกวิเคราะห์ก่อนหน้านี้จะไม่สามารถอ่านได้อีกครั้งโดยไม่ต้องเริ่มต้นการดำเนินการแยกวิเคราะห์

DOM จะถูกนำเข้าสู่การเล่นได้ดีที่สุดสำหรับแอ็พพลิเคชันที่ต้องเข้าถึงเอกสารซ้ำ ๆ หรือหากเอกสารเกิดขึ้นจากลำดับลำดับ ถ้าแอ็พพลิเคชันอยู่ในลำดับที่เข้มงวดและหนึ่ง pass (ซึ่งหมายความว่าไม่สามารถเข้าถึงได้โดยไม่ต้องเริ่มการแยกวิเคราะห์อีกครั้ง), SAX จะเข้ามาเล่น เว็บเบราเซอร์ส่วนใหญ่ไม่ได้ใช้ DOM ในการแสดงเอกสาร HTML อย่างไรก็ตาม DOM เป็นสิ่งจำเป็นสำหรับสคริปต์ JavaScript ที่ต้องการวิเคราะห์หรือเปลี่ยนแปลงเนื้อหาใด ๆ ที่เกี่ยวข้องกับเว็บเพจแบบไดนามิก DOM เป็นวิธีที่ JavaScript สามารถมองเห็นหน้าเว็บ HTML และสถานะเบราว์เซอร์ที่มีอยู่ (เช่นสำรวจสภาพแวดล้อม)

สรุป:

1. SAX เป็น API parser access แบบอนุกรมสำหรับหน้าเว็บแบบไดนามิก DOM เป็นแบบแผนโดยไม่มีภาษาหรือขึ้นอยู่กับภาษา

2 parser SAX ช่วยให้ผู้ใช้สามารถควบคุมจำนวนวิธีการเรียกกลับ DOM ทำงานอย่างอิสระเพื่อให้สคริปต์ JavaScript สามารถเข้าถึงเปลี่ยนแปลงหรือวิเคราะห์อะไรก็ได้ที่เกี่ยวข้องกับหน้าเว็บแบบไดนามิกซึ่งทำให้จาวาสคริปต์สามารถสำรวจสภาพแวดล้อมของตนได้