É possível analisar um documento HTML e construir uma árvore DOM (java)

É possível e quais ferramentas podem ser usadas para analisar um documento html como uma string ou de um arquivo e, em seguida, para construir uma árvore DOM para que um desenvolvedor possa percorrer a árvore através de alguma API.

Por exemplo:

DomRoot = parse("myhtml.html");

for (tags : DomRoot) {
}

Nota: este é um documento HTML não XHtml.

questionAnswers(5)

yourAnswerToTheQuestion