Existen dos tipos de analizadores XML:
DOM (parsers DOM): es un metalenguaje con una estructura jerárquica. Las marcas dentro del documento tienen una relación padre-hijo. Es decir, posee una estructura en forma de árbol. Cada uno de los elementos del documento recibe el nombre de nodo, Estos nodos serán: elementos, atributos, comentarios, etc.
SAX: el API de SAX especifica como ha de comportarse el parser, es decir, especifica interfaces de programación y no clases. SAX se encuentra compuesto por dos interfaces: el XMLReader que representa el parser y el ContentHandler que recibe los datos del parser.