Разлика между SAX и DOM

SAX срещу DOM

Simple API за XML (известен също като SAX) е сериен API за анализиране на достъп за XML (това е API, който получава данни и анализира текста от този конкретен документ в динамично създадени уеб страници или уеб страници с интерактивно съдържание). Той действа като една от по-популярните алтернативи на модела на обект на документ (известен също като DOM).

DOM е конвенция, която е напълно независима от конкретен език. Това е конвенция, която е съвместима с множество платформи. Използва се за представяне и взаимодействие с обекти в HTML, XML и XHTML документи. В синтаксиса на езика, който DOM използва, много аспекти на DOM могат да бъдат адресирани и манипулирани.

SAX анализаторът функционира като това, което е известно като анализатор на потоци (което означава, че получава и анализира текст, който се предава от местоположението му). Той съдържа API, управляван от събития (това е API, който зависи от събития, които се случват в определена среда). Потребителят има контрола да определи броя на методите за обратно извикване (тоест методи, които проследяват обратно до източника на исканите данни). Тези методи ще бъдат извикани, когато събитията се появят по време на акта на разбор. Има четири основни събития, които могат да възникнат по време на анализа: XML тестови възли, възли на XML елементи, инструкции за обработка на XML и коментари на XML. Когато се срещат тези XML функции, събитията се пускат за игра. Събития се случват и когато тези характеристики са достигнали своя край. Като такъв, SAX е еднопосочен (което означава, че се движи в една посока) и данните, които са били анализирани преди това, не могат да бъдат прочетени отново, без да се стартира резервната операция на синтактичен анализ.

DOM е най-добре да се играе за приложения, при които документът трябва да бъде многократно достъпен или ако документът е извън неговия ред на последователност. Ако приложението е в строга последователност и еднопропускане (което означава, че не може да се получи достъп, без да се започне повторно разбор на последователност), тогава SAX влиза в игра. Повечето уеб браузъри не използват DOM за изобразяване на HTML документи. Въпреки това, DOM е необходимо за скриптове на JavaScript, които желаят динамично да анализират или променят всичко, което се отнася до уеб страница. По същество DOM е начинът, по който JavaScript може да визуализира HTML страницата и състоянието на браузъра, в което се съдържа (т.е. изследване на средата му).

Резюме:

1. SAX е сериен API за анализиране на достъп за динамични уеб страници; DOM е конвенция без език или зависимост от език.

2. SAX анализатор позволява на потребителя да контролира броя на методите за обратно извикване; DOM функционира независимо, за да позволи на скриптове на JavaScript да имат достъп, променят или анализират всичко, което се отнася до динамичните уеб страници, позволявайки на JavaScript физически да изследва средата му.