Formattatore XML
Formatta, valida e abbellisci documenti XML con evidenziazione della sintassi e rilevamento degli errori
XML Dati di input
Output Formattato
Ispettore
Opzioni Avanzate
Confronta con un altro XML
Invia questo documento a Data Diff e incolla una seconda versione per vedere cosa è cambiato.
Validazione con la posizione esatta dell'errore
La validazione viene eseguita a ogni battitura usando il parser XML del browser. I documenti ben formati mostrano in tempo reale il conteggio di elementi, attributi, nodi di testo e profondità. Quelli non validi riportano riga e colonna esatte, una causa probabile e un'evidenziazione nella posizione dell'errore — non solo un generico "not well-formed".
Errori XML comuni che questo strumento individua con precisione
Questi errori causano la maggior parte degli XML non validi. Ognuno viene rilevato con una posizione e una causa probabile:
Tag non corrispondenti
<person> chiuso con </perso>. Il parser riporta "Opening and ending tag mismatch" con la riga di entrambi i tag; l'evidenziazione passa a quello errato.
Tag non chiuso
Un > mancante o un tag di chiusura mancante. Di solito riportato come "expected >" o "premature end of data in tag X" nella posizione esatta.
Attributo duplicato
Lo stesso nome di attributo due volte sullo stesso elemento, es. <item id="1" id="2">. Riportato come "Attribute redefined" puntando alla seconda occorrenza.
Entità non valida / & senza escape
Una & o un < letterale nel testo deve essere sottoposto a escape (&, <). Il parser riporta "EntityRef: expecting ;" o "not well-formed" in corrispondenza del carattere esatto.
Prima / Dopo
Risposta API minificata a sinistra, lo stesso documento formattato con indentazione a 2 spazi a destra. Struttura, albero e percorsi si aggiornano dal documento analizzato.
<catalog><book id="1" category="fiction"><title>The Hobbit</title><author>J.R.R. Tolkien</author></book><book id="2" category="tech"><title>Refactoring</title><author>Martin Fowler</author></book></catalog>
<catalog>
<book id="1" category="fiction">
<title>The Hobbit</title>
<author>J.R.R. Tolkien</author>
</book>
<book id="2" category="tech">
<title>Refactoring</title>
<author>Martin Fowler</author>
</book>
</catalog>
Riferimento rapido XML (W3C XML 1.0)
- Ben formato ≠ valido: ben formato significa che i tag si annidano e si chiudono correttamente; valido significa inoltre che il documento segue uno schema DTD o XSD.
- Cinque entità predefinite: < > & " ' — un < o una & letterale nel testo è sempre un errore.
- I nomi di elementi e attributi sono case-sensitive e possono avere prefissi di namespace (ns:tag).
- Esattamente un elemento radice; una dichiarazione XML come <?xml version="1.0" encoding="UTF-8"?> deve venire per prima, se presente.
- I commenti <!-- … --> non possono contenere -- e non possono essere annidati.
Prossimi passi con questi dati
La formattazione è il primo passo. Continua il flusso di lavoro senza uscire dal browser:
Domande frequenti
Risposte alle domande comuni sulla formattazione Xml Formatter
Il formattatore esegue il controllo di correttezza formale (well-formedness) e una validazione di base. Verifica l'annidamento corretto dei tag, la sintassi degli attributi e la conformità della dichiarazione XML secondo le specifiche W3C XML 1.0/1.1.
Sì, il tester XPath integrato ti permette di scrivere e valutare espressioni XPath 1.0 e 2.0 sul tuo documento XML, evidenziando gli elementi corrispondenti e mostrando i risultati all'istante.
Sì, il formattatore elabora correttamente i documenti XML con namespace, preservando le dichiarazioni e i prefissi dei namespace durante la formattazione di elementi e attributi.
Sì, la funzione di conversione ti permette di trasformare XML in JSON e viceversa con una mappatura intelligente che preserva la struttura degli elementi, gli attributi e i tipi di dati.
Il formattatore XML supporta file fino a 50 MB grazie ad algoritmi di parsing ottimizzati, rendendolo adatto a file di configurazione di grandi dimensioni, messaggi SOAP e documenti per lo scambio di dati.
Le dichiarazioni di namespace (xmlns, xmlns:prefix) vengono trattate come attributi ordinari ai fini dell'indentazione e non vengono mai riordinate o rimosse, così che gli URI dei namespace restino associati agli stessi prefissi. La formattazione non risolve né riscrive mai i prefissi: gli strumenti a valle li risolvono secondo la raccomandazione W3C Namespaces in XML.
La formattazione si limita a reindentare e normalizzare gli spazi bianchi tra gli elementi. La validazione verifica la struttura: tag bilanciati, un unico elemento radice, corretta citazione degli attributi e sintassi delle entità secondo la specifica W3C XML 1.0. Il formattatore segnala gli errori di well-formedness (un input malformato non può essere reindentato) ma non esegue la validazione rispetto a uno schema DTD o XSD.
Sì - i blocchi CDATA conservano il loro contenuto interno esatto (questo è il loro scopo: fare l'escaping di testo che altrimenti richiederebbe la codifica tramite entità), e i commenti passano invariati, a parte l'indentazione circostante. Anche le dichiarazioni XML e le istruzioni di elaborazione come <?xml version="1.0"?> restano in cima, intatte.
Riferimenti autorevoli
Standard e documentazione ufficiale che definiscono i formati con cui lavora questo strumento.
W3C - Extensible Markup Language (XML) 1.0
La Raccomandazione W3C che definisce Extensible Markup Language 1.0, la base del formato.
XML - Wikipedia
Il modello ad albero di XML, i namespace e perché il formato insiste su validità e ben formatezza.
MDN Web Docs - XML
La guida Mozilla all'elaborazione di XML nel browser, incluso l'uso di DOMParser.
Strumenti Correlati
Formattatore JSON
Formatta, valida e abbellisci dati JSON con indentazione intelligente ed evidenziazione della sintassi
Riparazione JSON
Correggi all'istante JSON malformati, non validi o corrotti. Ripara output LLM troncati, virgole mancanti, chiavi senza virgolette e virgole finali direttamente nel tuo browser
Formattatore JSONL
Formatta file JSON Lines (NDJSON) e converti tra JSON e JSONL. Valida ogni riga e formatta con indentazione i flussi NDJSON