SAX vs. DOM
API mudah untuk XML (juga dikenali sebagai SAX) adalah API parser akses siri untuk XML (iaitu API yang memperoleh data, dan menganalisis teks dari dokumen tersebut dalam halaman web yang dibuat secara dinamik, atau laman web dengan kandungan interaktif). Ia bertindak sebagai salah satu alternatif yang lebih popular kepada Model Objek Dokumen (juga dikenali sebagai DOM).
DOM adalah satu konvensyen yang sepenuhnya bebas daripada bahasa tertentu. Ia adalah satu konvensyen yang serasi dengan pelbagai platform. Ia digunakan untuk mewakili dan berinteraksi dengan objek dalam dokumen HTML, XML, dan XHTML. Dalam sintaks bahasa menggunakan DOM, banyak aspek DOM boleh ditangani dan dimanipulasi.
Fungsi parser SAX seperti yang dikenali sebagai parser aliran (yang bermaksud ia memperoleh dan menganalisis teks yang sedang streaming dari lokasinya). Ia mengandungi API yang dipandu peristiwa (iaitu API yang bergantung kepada peristiwa yang berlaku dalam persekitaran tertentu). Pengguna mempunyai kawalan untuk menentukan bilangan kaedah panggilan balik (iaitu kaedah yang mengesan kembali ke sumber data yang diminta). Kaedah ini akan dipanggil apabila peristiwa berlaku semasa perbuatan parsing. Terdapat empat peristiwa utama yang boleh berlaku semasa parsing: Ujian nod XML, Nodus Elemen XML, Arahan Pemprosesan XML, dan Komen XML. Apabila ciri-ciri XML ini ditemui, acara dimasukkan untuk dimainkan. Peristiwa juga berlaku apabila ciri-ciri ini telah mencapai tujuan mereka. Oleh yang demikian, SAX adalah satu arah (bermaksud bergerak dalam satu arah), dan data yang diuraikan sebelumnya tidak dapat dibaca semula tanpa memulakan operasi parsing.
DOM paling sesuai digunakan untuk aplikasi di mana dokumen itu mesti berulang kali diakses, atau jika dokumen itu berlaku daripada urutan turutannya. Jika aplikasi berada dalam urutan yang ketat, dan satu pas (yang bermaksud tidak dapat diakses tanpa memulakan urutan parsing lagi), maka SAX akan dimainkan. Kebanyakan pelayar web tidak menggunakan DOM untuk tujuan membuat dokumen HTML. Bagaimanapun, DOM adalah keperluan untuk skrip JavaScript yang ingin menganalisis atau mengubah apa-apa yang berkaitan dengan halaman web secara dinamik. Pada asasnya, DOM adalah cara JavaScript dapat memvisualisasikan halaman HTML dan keadaan penyemak imbas di mana ia terkandung (iaitu meneroka persekitarannya).
Ringkasan:
1. SAX adalah API parser akses bersiri untuk halaman web dinamik; DOM adalah konvensyen tanpa bahasa atau kebergantungan pada bahasa.
2. Parser SAX membolehkan pengguna mengawal bilangan kaedah panggilan balik; Fungsi DOM secara mandiri untuk membolehkan skrip JavaScript untuk mengakses, mengubah, atau menganalisis apa-apa yang berkaitan dengan laman web dinamik, yang membolehkan JavaScript untuk 'fizikal' menjelajahi persekitarannya.