- 11.3. Validação de Schema XML
11.3.3. Como sanear um XML com falha de Schema XML? - 11.3.2. Validar Schema XML [v3.00]
« Anterior - 11.4. Utilidadades
Próximo »
11.3.3. Como sanear um XML com falha de Schema XML?
Requisitos básicos para corrigir as falhas de Schema XML
- noção básica de documento XML - ter uma noção básica da estrutura de um documento XML é essencial para sanear os erros de preenchimento das tags de um CT-e;
- familiaridade com a estrutura e campos do CT-e - conhecer a estrutura básica do CT-e e os campos existentes vai ajudar a identificar as falhas, estudar o leiaute do CT-e é um requisito essencial;
- conhecer as regras básicas de preenchimento de campos do CT-e - a equipe técnica estabeleceu um conjunto de regras básicas de preenchimento dos campos do CT-e que devem ser compreendidos, vide item 2 das observações do Anexo I - Leiaute do CT-e do Manual de Integração do Contribuinte:
2. Regras de preenchimento dos campos do Conhecimento de Transporte eletrônico:
Campos que representam códigos (CNPJ, CPF, CEP, CST, etc.) devem ser informados com o tamanho fixo previsto, sem formatação e com o preenchimento dos zeros não significativos;
Campos numéricos que representam valores e quantidades são de tamanho variável, respeitando o tamanho máximo previsto para o campo e a quantidade de casas decimais. O preenchimento de zeros não significativos causa erro de validação do Schema XML. Os campos numéricos devem ser informados sem o separador de milhar, com uso do ponto decimal para indicar a parte fracionária se existente respeitando-se a quantidade de dígitos prevista no leiaute;
O uso de caracteres acentuados e símbolos especiais para o preenchimento dos campos alfanuméricos devem ser evitados. Os espaços informados no início e no final do campo alfanumérico também devem ser evitados;
As datas devem ser informadas no formato “AAAA-MM-DD”;
A forma e a obrigatoriedade de preenchimento dos campos do Conhecimento de Transporte Eletrônico estão previstas na legislação aplicável para a operação que se pretende realizar;
Inexistindo conteúdo (valor zero ou vazio) para um campo não obrigatório, a TAG deste campo não deverá ser informada no arquivo do CT-e;
Tratando-se de operações com o exterior, uma vez que o campo CNPJ é obrigatório não informar o conteúdo deste campo;
No caso das pessoas desobrigadas de inscrição no CNPJ/MF, deverá ser informado o CPF da pessoa, exceto nas operações com o exterior;>
A existência no leiaute/schema de campos de preenchimento opcional não deve ser interpretado como desobrigação de preenchimento, pois esta decisão depende diretamente da legislação tributária. Significa apenas que existem situações em que o preenchimento de um determinado campo em uma determinada situação não se aplica. Por exemplo, o número de um contêiner é um campo opcional no leiaute/schema, pois nem todos os serviços de transporte são realizados através de contêiner, mas, quando ele existir, deverá obrigatoriamente ser preenchido.
- ter uma aplicação para validação - utilize o aplicativo demo ou crie uma aplicação que utilize a funcionalidade para validar o XML;
- ter um editor de texto com indicação de linha e coluna do arquivo texto - como o resultado da validação do Schema XML indica a linha e coluna do erro, ter um editor de texto (Ex. Textpad) que facilite a localização das coordenadas de linha e coluna vai ajudar na identificação do problema.
Causas mais comuns de falha de validação do XML
- uso do Schema XML incorreto - o uso de um schema XML incorreto é uma falha comum para iniciantes, veja se o tipoXML informado corresponde ao XML que deseja validar;
- XML mal formado - parâmetro XML sem conteúdo ou mal formados (Ex. tag sem fechamento, tag orfão, etc.) impede a validação do Schema XML - Ex. A marca de início 'CTe' na linha 1 não corresponde à marca de fim de 'CTe'. Linha 1, posição 2308.;
- conteúdo inválido - tag preenchida sem observar a regra de preenchimento do campo (Ex. CNPJ com tamanho diferente de 14 dígitos, CNPJ com máscara de formatação, existência de espaço em branco no início ou no fim do campo, etc.). Ex. de O valor do elemento 'CNPJ' para nome 'http://www.cte.fazenda.gov.br/' apresenta conteúdo inválido de acordo com seu tipo de dados.
- conteúdo incompleto - tag encontrada não é a tag esperada, a mensagem de erro dá dica da tag que é esperada. Ex. Erro:O elemento 'ICMS' no espaço para nome 'http://www.portalfiscal.inf.br/nfe' apresenta conteúdo incompleto. Lista de possíveis elementos esperados: 'http://www.cte.fazenda.gov.br/:ICMS00 http://www.cte.fazenda.gov.br/:ICMS10 http://www.cte.fazenda.gov.br/:ICMS20 http://www.cte.fazenda.gov.br/:ICMS30 http://www.cte.fazenda.gov.br/:ICMS40 http://www.cte.fazenda.gov.br/:ICMS51 http://www.cte.fazenda.gov.br/:ICMS60 http://www.cte.fazenda.gov.br/:ICMS70 http://www.cte.fazenda.gov.br/:ICMS90'.
Como corrigir o problema
- Identifique a causa do problema:
- Conteúdo inválido
- Examine o conteúdo informado;
- Consulte o leiaute do CT-e ou o Schema XML e veja o formato de preenchimento;
- Conteúdo incompleto
- Identifique qual era a tag esperada;
- Consulte o leiaute do CT-e ou o Schema XML para localizar a tag esperada e examine a aplicação para verificar qual a razão da omissão ou inclusão indevida da tag;
- Conteúdo inválido
Editor de Schema XML
O Altova XMLSpy e o Liquid XML Studio são exemplos de editores de Schema XML que facilitam a compreensão de Schema XML em razão da sua interface gráfica.
- 11.3.3. Como sanear um XML com falha de Schema XML?
11.3. Validação de Schema XML - « Anterior
11.3.2. Validar Schema XML [v3.00] - Próximo »
11.4. Utilidadades