COBOL - PROCEDURE DIVISION - XML PARSE - Control flow - www.cadcobol.com.br



Desenvolvido por DORNELLES Carlos Alberto - Analista de Sistemas - Brasília DF. - cad_cobol@hotmail.com

COBOL - PROCEDURE DIVISION - XML PARSE - Control flow
Enterprise COBOL for z/OS 6.3.0, Language Reference

Quando o analisador XML recebe o controle de uma instrução XML PARSE, o mesmo analisa o documento XML e transfere o controle em pontos específicos do processo.

Os pontos são:

  • O início do processo de análise
  • Quando um fragmento de documento é encontrado
  • Quando o analisador detecta um erro ao analisar o documento XML
  • O fim do processamento do documento XML

O controle retorna ao analisador XML quando o final do procedimento de processamento é atingido.

A troca de controle entre o analisador e o procedimento de processamento continua até:

  • O documento XML inteiro foi analisado, terminando com o evento END-OF-DOCUMENT.
  • O procedimento de processamento finaliza a análise deliberadamente, definindo XML-CODE como -1 antes de retornar ao analisador.
  • Quando a opção do compilador XMLPARSE (XMLSS) está em vigor: O analisador detecta uma exceção de qualquer tipo.
  • Quando a opção do compilador XMLPARSE (COMPAT) está em vigor:
    O analisador detecta uma exceção (que não seja um conflito de codificação) e o procedimento de processamento não redefine o registro especial XML-CODE para zero antes de retornar ao analisador.
  • Quando a opção do compilador XMLPARSE (COMPAT) está em vigor:
    O analisador detecta uma exceção de conflito de codificação e o procedimento de processamento não redefine o registro especial XML-CODE para zero ou para o CCSID da codificação de documento.

Em cada caso, o procedimento de processamento retorna o controle para o analisador.
Em seguida, o analisador finaliza e retorna o controle para a instrução XML PARSE com o registro especial XML-CODE que contém o valor mais recente definido pelo analisador ou -1 (que pode ter sido definido pelo analisador ou pelo procedimento de processamento).

Para cada evento XML passado para o procedimento de processamento, os registros especiais XML-CODE e XML-EVENT contêm informações sobre o evento específico.
O registro especial XML-EVENT é definido como o nome do evento, como 'START-OF-DOCUMENT'.
Para a maioria dos eventos, o registro especial XML-TEXT ou XML-NTEXT contém texto do documento.
Além disso, quando a opção do compilador XMLPARSE (XMLSS) está em vigor, os registros especiais XML-NAMESPACE e XML-NAMESPACE-PREFIX ou XML-NNAMESPACE e XML-NNAMESPACE-PREFIX contêm um identificador de namespace e um prefixo de namespace, quando aplicável.
Veja XML-EVENT para detalhes.

O conteúdo do registro especial XML-CODE é definido durante e após a execução de uma instrução XML PARSE.
O conteúdo de todos os outros registradores especiais XML é indefinido fora do intervalo do procedimento de processamento.

Para eventos XML normais, o registro especial XML-CODE contém zero quando o procedimento de processamento recebe controle.
Para eventos de exceção XML, XML-CODE contém um código de exceção XML conforme descrito em XML PARSE exceptions no Enterprise COBOL Programming Guide.

Para obter mais informações sobre os registros especiais XML, consulte:

Para uma introdução aos registros especiais, consulte Special registers

Para obter mais informações sobre o evento EXCEPTION e o processamento de exceções, consulte Handling XML PARSE exceptions no Enterprise COBOL Programming Guide.



© Copyright IBM Corp.