Różnica między SAX a DOM

SAX vs. DOM

Simple API for XML (znany również jako SAX) to API parsera dostępu szeregowego dla XML (czyli API, który uzyskuje dane i analizuje tekst z tego konkretnego dokumentu na dynamicznie tworzonych stronach internetowych lub stronach z treścią interaktywną). Działa jako jedna z bardziej popularnych alternatyw dla Document Object Model (znanego również jako DOM).

DOM to konwencja całkowicie niezależna od określonego języka. Jest to konwencja kompatybilna z wieloma platformami. Służy do reprezentowania i interakcji z obiektami w dokumentach HTML, XML i XHTML. W ramach składni języka używanego przez DOM wiele aspektów DOM można rozwiązać i nim manipulować.

Parser SAX działa jako tak zwany parser strumienia (co oznacza, że ​​pobiera i analizuje tekst przesyłany strumieniowo z jego lokalizacji). Zawiera API sterowane zdarzeniami (to jest API zależne od zdarzeń, które występują w określonym środowisku). Użytkownik ma kontrolę nad określeniem liczby metod wywołania zwrotnego (to znaczy metod, które prowadzą do źródła żądanych danych). Te metody będą wywoływane, gdy zdarzenia wystąpią podczas analizowania. Istnieją cztery główne zdarzenia, które mogą wystąpić podczas analizowania: węzły testowe XML, węzły Element XML, instrukcje przetwarzania XML i komentarze XML. Po napotkaniu tych funkcji XML zdarzenia są odtwarzane. Zdarzenia pojawiają się również, gdy funkcje te osiągną swój koniec. Jako taki, SAX jest jednokierunkowy (co oznacza ruch w jednym kierunku), a danych, które zostały wcześniej przeanalizowane, nie można ponownie odczytać bez ponownego uruchomienia operacji analizowania.

DOM najlepiej zastosować w aplikacjach, w których dokument musi być wielokrotnie otwierany lub jeśli dokument nie jest w porządku sekwencji. Jeśli aplikacja ma ściśle określoną sekwencję i jest jednoprzebiegowa (co oznacza, że ​​nie można uzyskać do niej dostępu bez ponownego rozpoczęcia sekwencji analizowania), wówczas rozpoczyna się SAX. Większość przeglądarek internetowych nie wykorzystuje DOM do renderowania dokumentów HTML. Jednak DOM jest koniecznością dla skryptów JavaScript, które chcą dynamicznie analizować lub zmieniać wszystko, co dotyczy strony internetowej. Zasadniczo DOM to sposób, w jaki JavaScript może wizualizować stronę HTML i stan przeglądarki, w którym jest zawarty (tj. Eksplorowanie środowiska).

Streszczenie:

1. SAX to interfejs API parsera dostępu szeregowego dla dynamicznych stron internetowych; DOM to konwencja bez języka lub zależności od języka.

2. Analizator składni SAX pozwala użytkownikowi kontrolować liczbę metod wywołania zwrotnego; DOM działa niezależnie, aby umożliwić skryptom JavaScript dostęp do, zmianę lub analizę wszystkiego, co dotyczy dynamicznych stron internetowych, pozwalając JavaScript na „fizyczną” eksplorację środowiska.