SAX vs. DOM
La API simple para XML (también conocida como SAX) es una API de analizador de acceso en serie para XML (que es una API que obtiene datos y analiza el texto de ese documento en particular en páginas web creadas dinámicamente o páginas web con contenido interactivo). Actúa como una de las alternativas más populares al Modelo de objetos de documento (también conocido como DOM).
DOM es una convención que es completamente independiente de un idioma específico. Es una convención que es compatible con múltiples plataformas. Se utiliza para representar e interactuar con objetos en documentos HTML, XML y XHTML. Dentro de la sintaxis del lenguaje que usa un DOM, muchos aspectos del DOM se pueden abordar y manipular.
Un analizador SAX funciona como lo que se conoce como analizador de flujo (lo que significa que obtiene y analiza el texto que se transmite desde su ubicación). Contiene una API controlada por eventos (que es una API que depende de los eventos que ocurren dentro de un entorno determinado). El usuario tiene el control para definir el número de métodos de devolución de llamada (es decir, los métodos que se remontan al origen de los datos solicitados). Estos métodos se llamarán cuando ocurran eventos durante el acto de análisis. Hay cuatro eventos principales que podrían ocurrir durante el análisis: nodos de prueba XML, nodos del elemento XML, instrucciones de procesamiento XML y comentarios XML. Cuando se encuentran estas características XML, los eventos se ponen en juego. Los eventos también ocurren cuando estas características han llegado a su fin. Como tal, SAX es unidireccional (es decir, se mueve en una dirección), y los datos que se analizaron previamente no se pueden volver a leer sin iniciar la copia de seguridad de la operación de análisis.
DOM se pone en juego mejor para aplicaciones en las que se debe acceder al documento repetidamente, o si el documento está fuera de su orden de secuencia. Si la aplicación está en una secuencia estricta, y una pasada (eso significa que no se puede acceder a ella sin comenzar una secuencia de análisis nuevamente), entonces SAX entra en juego. La mayoría de los navegadores web no hacen uso de DOM con el fin de representar documentos HTML. Sin embargo, DOM es una necesidad para los scripts de JavaScript que deseen analizar dinámicamente o cambiar cualquier cosa relacionada con una página web. Esencialmente, el DOM es la forma en que JavaScript puede visualizar la página HTML y el estado del navegador en el que está contenido (es decir, explorar su entorno).
Resumen:
1. SAX es una API de analizador de acceso serie para páginas web dinámicas; DOM es una convención sin idioma o dependencia del idioma..
2. Un analizador SAX permite al usuario controlar el número de métodos de devolución de llamada; DOM funciona de forma independiente para permitir que los scripts de JavaScript accedan, cambien o analicen cualquier cosa relacionada con las páginas web dinámicas, lo que permite que JavaScript explore "físicamente" su entorno.