Localizzare errore nel file XML

Salve a tutti,
nel caso in cui il file XML della fattura inviata non sia conforme, il sistema, correttamente, mi restituisce una segnalazione di errore.
Tuttavia i messaggi il più delle volte sono troppo generici per cui diventa complicato capire dove sia effettivamente l’errore.
Volevo sapere se c’è un modo per avere informazioni più precise su dove è localizzato l’errore.
Grazie.

no.
di solito dice “File non conforme al formato: the value of xxxxxxxx”
quello che trovi dopo il “the value of” solitamente corrisponde al problema o qualcosa inerente al problema. (caratteri, accenti, simboli in quella parte di testo o subito prima.)

Gli errori di verifica sono molto precisi, devi solo leggerli in odo corretto.
Viene sempre indicato il punto del tracciato record e la sezione che ha generato errore.

Purtroppo non sempre è così. Guarda ad esempio questo messaggio:

File non conforme al formato (Element ‘Quantita’: This element is not expected. Expected is one of ( TipoCessionePrestazione, CodiceArticolo, Descrizione ).
, linea: 0, colonna: 0)

come si fa a trovare il punto preciso?

Oppure quest’altro:

File non conforme al formato (Element ‘CodiceDestinatario’: [facet ‘pattern’] The value ‘DXZEBYTP’ is not accepted by the pattern ‘[A-Z0-9]{6,7}’.
, linea: 0, colonna: 0)

In pratica linea e colonna sono sempre 0.

in realtà sono abbastanza chiari, non chiarissimi ma chiari.

=> File non conforme, ci si aspetta l’ordine degli elementi della fattura sia TipoCessionePrestazione, CodiceArticolo, Descrizione. Trovato invece l’elemento Quantità.
in pratica l’ordine degli elementi è riportato sbagliato.
questi elementi fanno parte delle righe delle fatture.

=> File non conforme: l’elemento CodiceDestinatario (esiste solo un elemento con quel nome) ha valore DXZEBYTP ma non è accettato perchè l’elemento deve essere composto da caratteri dalla A alla Z o da 0 a 9 la cui lunghezza deve essere da 6 a 7 caratteri in tutto.
In questo caso il codice è lungo 8 caratteri.

Questi però sono problemi di programmazione più che di utilizzo.
Chi ha fatto il programma avrebbe dovuto mettere un controllo sul codice destinatario in modo che venga accettato solo un codice Maiuscolo di 6 o 7 caratteri.

mentre per l’errore prima deve esserci un controllo che impedisca la generazione del file se i campi non sono compilati. In quel caso probabilmente mancava il campo “Descrizione” dato che TipoCessionePrestazione non è obbligatorio (salvo righe di sconto /abbuono/ecc…) e CodiceArticolo non è obbligatorio di conseguenza è stato generato un XML riportando i dati NumeroLinea e poi Quantita.
Oppure nella peggiore della ipotesi è proprio scritto male l’XML e tutte le fatture vengono bocciate.