온라인 XML 코드 정렬
한 줄로 전달된 XML을 정렬하세요. 요소는 깊이에 따라 들여쓰기되고, 속성은 읽기 쉽게 배치되며, 문서 구조가 다시 눈에 들어옵니다.
XML은 작성되는 것이 아니라 생성됩니다
여러분이 접하는 XML의 대부분은 기계가 다른 기계를 위해 만든 것이며, 그래서 줄바꿈이 전혀 없는 상태로 전달되는 일이 그토록 많습니다. CMS가 생성한 사이트맵, RSS 및 Atom 피드, 디자인 도구에서 내보낸 SVG 파일, SOAP 엔벨로프, Maven과 Android 설정 파일, 오피스 문서의 내부 파일까지, 모두 유효하고 모두 압축되어 있으며 어느 것도 사람이 읽을 것을 염두에 두고 작성되지 않았습니다.
들여쓰기가 드러내는 것
XML은 깊게 중첩되며, 한 줄짜리 텍스트가 감추는 것이 바로 그 깊이입니다. 문서를 들여쓰기하면 계층 구조가 분명해집니다. 어떤 요소가 반복되는지, 각 노드에 자식이 몇 개 있는지, 예상하지 못한 네임스페이스가 어디에서 선언되었는지, 어떤 태그가 끝내 닫히지 않았는지 알 수 있습니다. 사이트맵이라면 URL 항목과 그에 딸린 대체 언어 링크가 깔끔한 블록으로 보인다는 뜻입니다. SVG라면 실제로 수정하려던 패스나 그룹을 찾아낼 수 있다는 뜻입니다.
네임스페이스, CDATA, 주석
포매터는 XML을 XML답게 만드는 요소를 보존합니다. 네임스페이스 접두사와 선언은 자신이 속한 요소에 그대로 붙어 있고, CDATA 섹션은 내용이 다시 해석되지 않도록 원문 그대로 유지되며, 처리 명령과 XML 선언은 문서 맨 위에 남고, 살아남은 주석은 문서의 나머지 부분과 함께 배치됩니다. 속성 순서도 그대로 유지됩니다. XML에서는 파일을 만든 도구에 그 순서가 의미를 갖는 경우가 있기 때문입니다.
형식이 잘못된 문서를 빠르게 찾아내는 방법
정렬은 문서가 정상인지 확인하는 수단이기도 합니다. 문서의 형식이 올바르면 깔끔하게 들여쓰기되고 닫는 태그가 여는 태그와 나란히 맞습니다. 그렇지 않다면 대개 검증기의 메시지를 읽을 때보다 정렬된 결과에서 문제가 훨씬 빨리 눈에 띕니다. 중첩이 더 이상 말이 되지 않는 정확한 지점이 보이기 때문입니다.
자주 묻는 질문
SVG 파일에도 사용할 수 있나요?
네. SVG는 XML이므로 긴 한 줄로 내보내진 아이콘도 읽기 쉬운 트리 형태로 들여쓰기됩니다. 덕분에 특정 패스, 그룹, 그라디언트를 찾기가 훨씬 쉬워집니다.
RSS 피드나 사이트맵을 정렬할 수 있나요?
네, 둘 다 대표적인 용도입니다. 피드나 사이트맵을 붙여 넣거나 저장한 파일을 열면 item 또는 url 항목 하나하나가 훑어보기 좋게 뚜렷이 구분된 블록이 됩니다.
XML의 유효성도 검사하나요?
포매터가 문서를 파싱하려면 형식이 올바른 문서여야 하므로 구조상의 오류는 정렬 오류로 나타납니다. 다만 스키마나 DTD에 따라 문서를 검사하지는 않습니다.
