XML że względu na swoją budowę wymaga specyficznych narzędzi do obróbki. W linuksie mamy ich na szczęście kilka, a przy odrobinie wysiłku możemy napisać własne wykorzystując różne dostępne biblioteki czy moduły.
Pierwszym narzędziem na mojej liście jest xmllint. Spośród wielu opcji najczęściej wykorzystuję formatowanie XML’a:
bash$> cat test.xml | xmllint -format -
… oraz walidację względem pliku DTD bądź schematu:
bash$> xmllint --valid test.xml
Powyższe wywołanie sprawdzi poprawność pliku XML względem schematu/pliku DTD wskazanego wewnątrz pliku. Jeśli chcmy jawnie podać lokalizację schetu/DTD możemy wykorzystać opcje –dtdvalid URL lub –schema shcema-file.xsd. Oczywiście xmllint posiada wiele innych przydatnych opcji więc warto zerknąć do manuala.