Vai al contenuto
Case Converter Online
it

Formattatore e validatore XML

Incolla l'XML per indentarlo con ordine, minificarlo o verificare che sia ben formato. Il markup non valido viene segnalato con riga e colonna invece di essere corretto a caso.

Incolla il codice XML o premi Esempio. Premi Ctrl e Invio per formattare. Tutto funziona nel tuo browser.

Cosa fa il formattatore XML

L’XML memorizza dati strutturati sotto forma di tag annidati. Si usa nei feed RSS, nelle sitemap, nelle API SOAP, nei layout Android, nei file pom.xml di Maven, nei documenti Office e in molte esportazioni di dati. Spesso i programmi lo scrivono su un’unica lunga riga. Questo formattatore XML lo impagina con un elemento per riga e un’indentazione coerente, così l’annidamento è facile da seguire.

Ci sono tre azioni:

  • Formatta indenta l’XML.
  • Minifica toglie gli spazi tra i tag per rendere il file più piccolo.
  • Convalida verifica che il documento sia ben formato e segnala il primo problema.

Come si usa

  1. Incolla l’XML nel riquadro a sinistra, premi Apri file oppure Esempio. L’XML incollato viene formattato subito.
  2. Scegli un Rientro di 2 spazi, 4 spazi o tabulazioni.
  3. Premi Formatta, Minifica o Convalida. Ctrl+Invio ripete l’ultima azione.
  4. Premi Copia o Scarica per salvare il risultato come file .xml.

Prima e dopo

Un catalogo di prodotti su una sola riga:

<?xml version="1.0" encoding="UTF-8"?><catalog><book id="bk101"><author>Gambardella, Matthew</author><title>XML Developer's Guide</title><price>44.95</price></book><book id="bk102"><author>Ralls, Kim</author><title>Midnight Rain</title><price>5.95</price></book></catalog>

Dopo Formatta con 2 spazi:

<?xml version="1.0" encoding="UTF-8"?>
<catalog>
  <book id="bk101">
    <author>Gambardella, Matthew</author>
    <title>XML Developer's Guide</title>
    <price>44.95</price>
  </book>
  <book id="bk102">
    <author>Ralls, Kim</author>
    <title>Midnight Rain</title>
    <price>5.95</price>
  </book>
</catalog>

Il contenuto testuale resta sulla stessa riga del suo elemento. È importante, perché un a capo dentro <price>44.95</price> cambierebbe il valore letto da un programma.

Minifica riporta la versione formattata all’unica riga mostrata sopra. Convalida sullo stesso input riporta: Well-formed XML. Root element <catalog>, 9 elements in total. (XML ben formato, elemento radice catalog, 9 elementi in totale).

Le sezioni CDATA restano esattamente come le hai scritte, quindi <script><![CDATA[if (a < b) run();]]></script> esce invariato.

Gli errori che il controllo individua

Molti formattatori XML “riparano” in silenzio il markup non valido, per esempio chiudendo un tag in un punto che non volevi. Questo controlla prima il documento e si ferma al primo problema. Questi sono messaggi reali:

Input Messaggio
<to>Tove</from> Riga 2, colonna 11: Il tag di chiusura </from> non corrisponde a <to> aperto alla riga 2
Smith & Sons Riga 1, colonna 16: Una "&" isolata va scritta come &amp;
Un <item> mai chiuso Riga 4, colonna 1: Il tag di chiusura </list> non corrisponde a <item> aperto alla riga 3
<book id=101/> Riga 1, colonna 10: Il valore di "id" va scritto tra virgolette
Due elementi di primo livello Riga 2, colonna 1: È ammesso un solo elemento radice, ne è stato trovato un secondo: <b>

Premi Mostra nell’input per spostare il cursore sul problema.

Cosa significa “ben formato”

Un documento XML è ben formato quando rispetta le regole di sintassi di base:

  • Ogni tag di apertura ha un tag di chiusura corrispondente, oppure si chiude da solo come <br/>.
  • I tag si chiudono nell’ordine inverso a quello di apertura.
  • C’è un solo elemento radice.
  • I valori degli attributi sono tra virgolette singole o doppie, e nessun attributo compare due volte nello stesso elemento.
  • Una & o un < letterali nel testo si scrivono &amp; o &lt;.
  • La dichiarazione <?xml ... ?>, se presente, è la primissima cosa del file.

Le entità con nome come &nbsp; sono ammesse solo se le dichiara un DOCTYPE, perché l’XML di per sé ne conosce solo cinque: &lt;, &gt;, &amp;, &apos; e &quot;.

Consigli e limiti

  • La convalida non usa uno schema. Un documento può essere ben formato e contenere comunque gli elementi sbagliati per la tua applicazione.
  • Gli spazi dentro il testo vengono mantenuti. Se devi ridistribuire il testo su più righe, fallo a mano.
  • La minificazione conserva i commenti. Eliminali prima se ti serve il file più piccolo possibile.
  • Tutto gira in locale, quindi puoi incollare senza problemi configurazioni interne ed esportazioni.

Altri modi per formattare l’XML

xmllint. Su Linux e macOS, xmllint --format file.xml stampa una copia indentata e xmllint --noout file.xml segnala solo gli errori. Con --schema può anche verificare il file rispetto a uno schema.

VS Code. Installa un’estensione XML (quella di Red Hat è una scelta diffusa), poi esegui Format Document.

Notepad++. Il plugin XML Tools aggiunge il comando Pretty Print.

Strumenti correlati

Se i tuoi dati sono in JSON, usa il formattatore JSON. Per i file di configurazione, il formattatore YAML fa lo stesso lavoro con lo YAML. Per le pagine web usa il formattatore HTML, che conosce regole dell’HTML che l’XML non ammette.

Formattatore XML: domande e risposte

Perché il formattatore rifiuta il mio XML invece di correggerlo?

Indovinare dove andrebbe un tag mancante può cambiare i tuoi dati senza che tu te ne accorga. Lo strumento prima verifica che l'XML sia ben formato, poi lo formatta. Se non lo è, ricevi riga, colonna e descrizione del problema, così puoi correggerlo tu.

Controlla il mio XML rispetto a uno schema?

No. Convalida verifica che l'XML sia ben formato: tag corrispondenti, attributi tra virgolette, un solo elemento radice ed entità scritte correttamente. Per il controllo rispetto a un XSD o a un DTD serve uno strumento che gestisca gli schemi, come xmllint.

Il testo dentro gli elementi viene modificato?

No. Il testo breve resta sulla stessa riga dei suoi tag, quindi <title>Midnight Rain</title> resta com'è. Vengono conservati anche commenti, sezioni CDATA e la dichiarazione XML.

Posso usarlo per l'HTML?

Solo se l'HTML è anche XML valido (XHTML). L'HTML normale ammette tag come <br> senza chiusura, l'XML no. Per le normali pagine web usa il formattatore HTML.

Il mio XML viene caricato online?

No. Il formattatore e il controllo funzionano entrambi nel tuo browser. I file che apri con Apri file vengono letti sul tuo dispositivo.

Altri strumenti per codice e dati

Vedi tutti gli strumenti