Validação --------- A validação dos arquivos de nota fiscal são controladas pelo módulo validacao. >>> from pynfe.processamento import validacao A classe Validacao é utilizada para validar os tanto arquivos xml quanto documentos etree. Não há problemas em utilizar list-comprehension com a mesma pois ela implementa um cache simples. >>> from lxml import etree >>> validador = validacao.Validacao() >>> nfe_caminho = 'tests/saida/nfe-1.xml' >>> nfe_assin_caminho = 'tests/xml/NFe_assinada.xml' >>> nfe_inval_caminho = 'tests/xml/NFe_falhaSchema.xml' >>> validador.validar_xml(nfe_caminho, validacao.XSD_NFE) True >>> validador.validar_etree(etree.parse(nfe_caminho), validacao.XSD_NFE) True >>> validador.validar_xml(nfe_assin_caminho, validacao.XSD_NFE_PROCESSADA) True >>> validador.validar_xml(nfe_inval_caminho, validacao.XSD_NFE) False Note que o schema utilizado para validação contra o xml é definido por variáveis globais presentes no módulo. São elas: - XSD_NFE : valida nfe's não certificadas - XSD_NFE_PROCESSADA : valida nfe's certificadas - XSD_PD_CANCELAR_NFE : valida um pedido de cancelamento de nfe - XSD_PD_INUTILIZAR_NFE : valida um pedido de inutilização de nfe