Pessoal e o seguinte, eu recebo do meu cliente um arquivo xml com a seguinte estrutura
.
.
.
<tp_consulta>Consulta de Propriedade</tp_consulta>
<consulta>
<cd_item>0</cd_item>
<qt_anos_pesquisa>5</qt_anos_pesquisa>
<pessoaFisica>
<pessoa:nm_pessoa>Fabio Alves de Araujo Ebner</pessoa:nm_pessoa>
<pessoa:cd_cpf>294.889.898-66</pessoa:cd_cpf>
<pessoa:cd_rg xsi:nil="true"></pessoa:cd_rg>
<pessoa:nm_mae xsi:nil="true"></pessoa:nm_mae>
<pessoa:nm_pai xsi:nil="true"></pessoa:nm_pai>
<pessoa:tp_estado_civil xsi:nil="true"></pessoa:tp_estado_civil>
<pessoa:nm_conjuge xsi:nil="true"></pessoa:nm_conjuge>
<pessoa:dt_nascimento xsi:nil="true"></pessoa:dt_nascimento>
</pessoaFisica>
<resultado>
<tp_resultado_consulta>CONSTA</tp_resultado_consulta>
<ocorrencia>
<tp_livro>LV2</tp_livro>
<cd_numero_registro>111</cd_numero_registro>
<tp_onus>SIM</tp_onus>
</ocorrencia>
<ocorrencia>
<tp_livro>LV3T</tp_livro>
<cd_numero_registro>99</cd_numero_registro>
<tp_onus>NAO</tp_onus>
</ocorrencia>
</resultado>
</consulta>
<consulta>
<cd_item>1</cd_item>
<qt_anos_pesquisa>5</qt_anos_pesquisa>
<pessoaJuridica>
<pessoa:nm_pessoa>Dna Solution</pessoa:nm_pessoa>
<pessoa:cd_cnpj>06.928.201/0001-30</pessoa:cd_cnpj>
</pessoaJuridica>
<resultado>
<tp_resultado_consulta>NAO_CONSTA</tp_resultado_consulta>
</resultado>
</consulta>
<consulta>
<cd_item>2</cd_item>
<qt_anos_pesquisa>5</qt_anos_pesquisa>
<pessoaFisica>
<pessoa:nm_pessoa>Daniela Barbosa</pessoa:nm_pessoa>
<pessoa:cd_cpf>017.638.738-20</pessoa:cd_cpf>
<pessoa:cd_rg xsi:nil="true"></pessoa:cd_rg>
<pessoa:nm_mae xsi:nil="true"></pessoa:nm_mae>
<pessoa:nm_pai xsi:nil="true"></pessoa:nm_pai>
<pessoa:tp_estado_civil xsi:nil="true"></pessoa:tp_estado_civil>
<pessoa:nm_conjuge xsi:nil="true"></pessoa:nm_conjuge>
<pessoa:dt_nascimento xsi:nil="true"></pessoa:dt_nascimento>
</pessoaFisica>
<resultado>
<tp_resultado_consulta>NAO_CONSTA</tp_resultado_consulta>
</resultado>
</consulta>
<consulta>
<cd_item>3</cd_item>
<qt_anos_pesquisa>5</qt_anos_pesquisa>
<pessoaJuridica>
<pessoa:nm_pessoa>SERASA</pessoa:nm_pessoa>
<pessoa:cd_cnpj>06.928.201/0001-30</pessoa:cd_cnpj>
</pessoaJuridica>
<resultado>
<tp_resultado_consulta>CONSTA</tp_resultado_consulta>
<ocorrencia>
<tp_livro>LV2</tp_livro>
<cd_numero_registro>555</cd_numero_registro>
<tp_onus>SIM</tp_onus>
</ocorrencia>
</resultado>
</consulta>
.
.
.
dentro da tag “CONSULTA” eu tenho varios elementos: cd_item, qt_anos_pesquisa, pessoaFisica ou pessoaJuridica e resultado, dentro da tag resultado eu tenho 1 ou varias Ocorrencias eu preciso recuperar essas OCORRENCIAS e jogar em uma tabela para cada PessoaFisica ou Juridica (recuper o codigo na tag cdItem)
qual seria a melhor opcao para fazer isso? utilizar XStream, JaxP, jaxB, SAX, DOM
e outra coisa eu tenho alguns SCHEMAS para validar esse XML, teria algum metodo q eu passe O xml e os SCHEMAS e ele faz essa validacao pra mim?
obrigado