Давно была мысль сдалать что-то подобное, и вот сейчас взялся.
Что такое
SAX парсер и
чем он отличается от DOM парсера.
Вкратце, SAX читает документ последовательно и вызывает пользовательские функции тогда, когда он доходит до определенного элемента, в отличие от DOM парсера, который строит иерархию и соответственно позволяет обходить дочерние узлы либо рекурсивно все, либо только первых потомков выбраного узла.
Как правило DOM удобнее в работе, большинство извесных XML парсеров ...