Az XML dokumentum jól formázott (well-fomed), ha megfelel az alábbi szintaktikus követelményeknek:
Pontosan egy gyökéreleme van.
Minden elemnek van megfelelő lezáró tagja.
Az elemek helyesen beágyazottak; nincsennek átfedő elemek.
Az attributumértékek helyesen idézőjelezettek.
Számos eszköz van az XML dokumentum ellenőrzésére, pl. a szabad szoftver xmllint, amely képes a jól-formázottság és helyesség ellenőrzésére is. Az xmllint C program, amely létezik Windows és UNIX környezetekben is.
Használata pl. a következő:
$ xmllint note1.xml -noout
Ha nem adjuk meg a noout paramétert, akkor kiírja a standard outputra a teljes XML állományt.
Írjunk be akár csak egy szóközt az első sor elejére. Az alábbit kapjuk:
$ xmllint note1.xml -noout note1.xml:1: parser error : XML declaration allowed only at the start of the document <?xml version="1.0" encoding="ISO-8859-2"?> ^ note1.xml:13: parser error : Input is not proper UTF-8, indicate encoding ! <body>Menjünk bringázni a hétvégén</body> ^ note1.xml:13: error: Bytes: 0xFC 0x6E 0x6B 0x20 <body>Menjünk bringázni a hétvégén</body> ^
Hasonlóan hibaüzeneteket kapnánk, ha nem zárnánk le helyesen valamely tag-et.
$ xmllint note1.xml -noout note1.xml:12: parser error : Opening and ending tag mismatch: question line 11 and date </date> ^ note1.xml:14: parser error : Opening and ending tag mismatch: date line 3 and question </question> ^ gsd@bjarne:~/work/uni/lecture/doku/pelda> xmllint note1.xml -noout note1.xml:12: parser error : Opening and ending tag mismatch: question line 11 and date </date> ^ note1.xml:14: parser error : Opening and ending tag mismatch: date line 3 and question </question> ^