Atšķirība starp SAX un DOM

SAX pret DOM

Vienkārša API XML (pazīstama arī kā SAX) ir seriālās piekļuves parsētāja API XML (tas ir, API, kas iegūst datus un analizē šī konkrētā dokumenta tekstu dinamiski izveidotās Web lapās vai tīmekļa lapās ar interaktīvu saturu). Tas darbojas kā viena no populārākajām dokumentu objekta modeļa (pazīstama arī kā DOM) alternatīvām.

DOM ir konvencija, kas ir pilnīgi neatkarīga no konkrētas valodas. Tā ir konvencija, kas ir savietojama ar vairākām platformām. To izmanto, lai attēlotu objektus un mijiedarbotos ar tiem HTML, XML un XHTML dokumentos. DOM izmantotās valodas sintaksē daudzos DOM aspektus var pievērsties un ar tiem manipulēt.

SAX parsētājs funkcionē kā straumes parsētājs (kas nozīmē, ka tas iegūst un analizē tekstu, kas straumē no savas vietas). Tajā ir notikumu virzīta API (tas ir API, kas ir atkarīga no notikumiem, kas notiek noteiktā vidē). Lietotājam ir kontrole, lai noteiktu atzvanīšanas metožu skaitu (tas ir, metodes, kas izseko līdz pieprasīto datu avotam). Šīs metodes tiks izsauktas, kad parsēšanas laikā notiks notikumi. Parsēšanas laikā var rasties četri galvenie notikumi: XML testa mezgli, XML elementa mezgli, XML apstrādes instrukcijas un XML komentāri. Kad rodas šīs XML funkcijas, notikumi tiek iesaistīti spēlēšanā. Notikumi notiek arī tad, kad šīs funkcijas ir beigušās. Kā tāds SAX ir vienvirziena (tas nozīmē, ka pārvietojas vienā virzienā), un iepriekš parsētus datus nevar atkārtoti lasīt, neuzsākot parsēšanas darbību dublēšanu.

DOM vislabāk var izmantot lietojumprogrammās, kurās dokumentam ir jāpiekļūst atkārtoti vai ja dokuments neatbilst secībai. Ja lietojumprogramma ir stingrā secībā un viena caurlaide (tas nozīmē, ka tai nevar piekļūt, vēlreiz nesākot parsēšanas secību), spēlē SAX. Lielākā daļa tīmekļa pārlūkprogrammu HTML dokumentu atveidošanai neizmanto DOM. Tomēr DOM ir nepieciešams JavaScript skriptiem, kuri vēlas dinamiski analizēt vai mainīt jebko, kas attiecas uz tīmekļa lapu. Būtībā DOM ir veids, kā JavaScript var vizualizēt HTML lapas un pārlūka stāvokli, kurā tā atrodas (t.i., izpētīt tās vidi).

Kopsavilkums:

1. SAX ir seriālās piekļuves parsētāja API dinamiskām tīmekļa lapām; DOM ir konvencija bez valodas vai atkarības no valodas.

2. SAX parsētājs ļauj lietotājam kontrolēt atzvanīšanas metožu skaitu; DOM darbojas neatkarīgi, lai ļautu JavaScript skriptiem piekļūt, mainīt vai analizēt jebko, kas saistīts ar dinamiskām tīmekļa lapām, ļaujot JavaScript “fiziski” izpētīt savu vidi.