Diferența dintre SAX și DOM

SAX vs. DOM

API-ul simplu pentru XML (cunoscut și ca SAX) este un API pentru parserul de acces serial pentru XML (care este un API care obține date și analizează textul din respectivul document în pagini web create dinamic sau pagini web cu conținut interactiv). Acționează ca una dintre cele mai populare alternative la Modelul Obiectului Documentului (cunoscut și ca DOM).

DOM este o convenție care este complet independentă de o anumită limbă. Este o convenție care este compatibilă cu mai multe platforme. Este folosit pentru a reprezenta și a interacționa cu obiecte în documente HTML, XML și XHTML. În cadrul sintaxei limbajului folosit de DOM, multe aspecte ale DOM pot fi abordate și manipulate.

Un parser de tip SAX funcționează ca un procesor de parser (ceea ce înseamnă că acesta obține și analizează textul care este streaming din locația sa). Acesta conține un API bazat pe evenimente (care este un API care depinde de evenimente care apar într-un anumit mediu). Utilizatorul are controlul pentru a defini numărul de metode de apel invers (care sunt metode care urmăresc înapoi la sursa datelor solicitate). Aceste metode vor fi numite atunci când apar evenimente în timpul actului de analiză. Există patru evenimente principale care ar putea apărea în timpul parsării: noduri de test XML, noduri XML de elemente, instrucțiuni de procesare XML și comentarii XML. Când aceste caracteristici XML sunt întâlnite, evenimentele sunt puse în joc. Evenimentele apar de asemenea atunci când aceste caracteristici au ajuns la final. Ca atare, SAX este unidirecțional (adică se deplasează într-o direcție), iar datele care au fost analizate anterior nu pot fi readuse din nou fără a porni operația de parsare.

DOM este cel mai bine pus în joc pentru aplicații în care documentul trebuie să fie accesat în mod repetat, sau în cazul în care documentul se întâmplă să fie în afara ordinii de secvență. Dacă aplicația este într-o secvență strictă și o singură trecere (adică nu poate fi accesată fără a începe din nou o secvență de analiză), atunci SAX intră în joc. Majoritatea browserelor web nu fac uz de DOM în scopul redării documentelor HTML. Cu toate acestea, DOM este o necesitate pentru scripturile JavaScript care doresc să analizeze dinamic sau să modifice orice referitor la o pagină Web. În esență, DOM este modul în care JavaScript poate vizualiza pagina HTML și starea browserului în care este conținută (adică explorarea mediului său).

Rezumat:

1. SAX este un API parser de acces serial pentru pagini web dinamice; DOM este o convenție fără o limbă sau o dependență de limbă.

2. Un parser SAX permite utilizatorului să controleze numărul de metode de apel invers; DOM funcționează în mod independent pentru a permite script-urilor JavaScript să acceseze, să schimbe sau să analizeze orice din paginile web dinamice, permițând JavaScript să "exploreze" fizic mediul său.