Gerar arquivo XML com PL/SQL utilizando Parser

[ad#texto]

Continuando a falar sobre criação de arquivos XML utilizando Oracle PL/SQL, no primeiro exemplo não utilizamos nenhum Parser, ou seja, mesmo que a estrutura do XML estivesse errada o arquivo seria criado, deixando o inconveniente de que ao utilizar o XML é que iríamos detectar possíveis erros, quando o ideal é realizar esta tarefa de validação no momento da criação do arquivo.

No exemplo que iremos apresentar vamos demonstrar como criar um arquivo XML com PL/SQL efetuando o parser antes da gravação física no arquivo.

declare
 varXML   CLOB;
 varTexto VARCHAR2(4000);
 varDom   DBMS_XMLDOM.DOMDocument;

begin
 -- Exemplo de um XML para testes
 varTexto := '' ||
             '' ||
             'Teste de XML' ||
             'Sem XSLT' ||
             '' ||
             '';

 -- Inicializar o CLOB
 dbms_lob.createtemporary(varXML, TRUE);
 dbms_lob.open(varXML, dbms_lob.lob_readwrite);

 -- Atribir texto (string) ao CLOB
 dbms_lob.writeappend(varXML, length(varTexto), varTexto);

 -- Inicia o processamento DOM e faz o parser utilizando XMLType.createXML
 varDom := DBMS_XMLDOM.NewDOMDocument(XMLType.createXML(varXML));

 -- Cria o arquivo XML no disco
 DBMS_XMLDOM.WriteToFile(varDom, '/minha/pasta/meu_arquivo.xml');

 -- Liberar o objeto DOM da memória
 DBMS_XMLDOM.freeDocument(varDom);

 -- Liberar dados do CLOB da memória
 dbms_lob.close(varXML);
 dbms_lob.freetemporary(varXML);
end;

O exemplo é bem semelhante ao apresentado no primeiro exemplo, com a exceção de que agora o arquivo é gerado utilizando DOM e que efetuamos o parser utilizando o XMLType.createXML.

Utilizando o XMLType, qual erro na estrutura ou até mesmo a utilização de caracteres especiais em locais errados irão levantar uma exceção, evitando a criação de um XML errado.

Tags:,
Petter Rafael
Petter Rafael

Desenvolvedor Web atua com as tecnologias Java e PHP apoiadas pelos bancos de dados Oracle e MySQL. Além dos ambientes de desenvolvimento acima possuiu amplo conhecimento em servidores Apache/Tomcat, Photoshop, Arte & Foto, Flash e mais uma dezena de ferramentas e tecnologias emergentes. Atualmente colabora com o Viablog escrevendo sobre programação e tecnologia.

Assinar blog por e-mail

Digite seu endereço de e-mail para assinar este blog e receber notificações de novas publicações por e-mail.

Junte-se a 316 outros assinantes

Busca

junho 2022
D S T Q Q S S
 1234
567891011
12131415161718
19202122232425
2627282930  

Categorias