XML이란? XML 파일을 열고 사용하는 방법 입문 가이드
XML(Extensible Markup Language)은 HTML과 비슷해 보이지만, 목적은 웹 페이지를 렌더링하는 것이 아니라 구조화된 데이터를 저장하고 전달하는 것입니다. 구조가 엄격하고 사람이 읽기 쉬워서 설정 파일, 데이터 교환, SVG 같은 형식에서 지금도 널리 사용됩니다.
이 가이드는 XML의 기본 개념, 사용되는 곳, 여는 방법과 편집 방법, 그리고 SVG 파일을 다룰 때 XML 모범 사례를 SVGView에 어떻게 적용할 수 있는지를 설명합니다.
요약
- XML은 태그와 계층 구조를 기반으로 한 구조화 데이터 형식입니다.
- 문법은 HTML과 비슷하지만 용도는 데이터 저장과 교환입니다.
- SVG(Scalable Vector Graphics)는 XML로 정의되므로 SVG 파일은 곧 XML 문서입니다.
1) XML의 기본 구조
가장 단순한 예시는 다음과 같습니다.
<?xml version="1.0" encoding="UTF-8"?>
<message>
<title>Reminder</title>
<body>Update the icon library</body>
</message>
기억해야 할 핵심 규칙은 다음과 같습니다.
- XML에는 루트 요소가 하나만 있어야 합니다.
- 태그는 정확히 닫혀야 하며 중첩도 맞아야 합니다.
- 태그 이름은 대소문자를 구분합니다.
- 속성값은 따옴표로 감싸야 합니다.
&,<,>같은 특수문자는 이스케이프해야 합니다.
2) XML이 쓰이는 곳
XML은 엄격하고 이식 가능한 구조가 필요한 상황에서 많이 사용됩니다.
- 서비스와 API 간 데이터 교환 (예: SOAP 메시지)
- 소프트웨어와 도구의 설정 파일
- 시스템 간 데이터 import/export
- SVG 같은 그래픽 형식
SVG를 다룬다면 이미 XML을 다루고 있는 것입니다.
3) SVG에서 XML이 중요한 이유
SVG는 XML 기반의 2차원 벡터 그래픽 마크업 언어입니다. 따라서 SVG 파일은 XML 텍스트이며, XML 구조가 잘못되면 렌더링이 실패하거나 환경마다 다르게 보일 수 있습니다.
작은 예시는 다음과 같습니다.
<svg width="120" height="120" viewBox="0 0 120 120" xmlns="http://www.w3.org/2000/svg">
<circle cx="60" cy="60" r="40" fill="#22C55E" />
</svg>
4) XML 파일을 열고 편집하는 방법
작업 목적에 맞게 도구를 고르면 됩니다.
- 보기만 할 때: Chrome, Firefox, Safari, Edge 같은 최신 브라우저
- 작은 수정만 할 때: 일반 텍스트 에디터
- 지속적인 편집이 필요할 때: XML 하이라이트와 포맷팅이 되는 코드 에디터(예: VS Code)
- 설치가 어려울 때: 온라인 XML 에디터나 뷰어
5) XML과 JSON: XML이 여전히 유효한 경우
JSON은 더 작고 한눈에 읽기 쉬워서 현대 서비스에서 널리 쓰입니다. 하지만 XML은 엄격한 스키마, 풍부한 메타데이터, 기존 시스템과의 호환성이 필요할 때 여전히 유용합니다. 유행이 아니라 주변 생태계와 요구사항에 맞춰 선택하는 것이 실무적입니다.
6) 실전 SVGView 워크플로
SVG 자산을 운영 품질로 유지하려면 일관된 파이프라인이 필요합니다.
- SVG Viewer에서 미리보기와 검증
- SVG Sanitizer에서 외부 입력 정리
- SVG Formatter로 리뷰용 포맷 정리
- SVG Optimizer로 최적화
- SVG Minify로 최종 최소화
- SVG ViewBox Fixer로 viewBox 문제 수정
7) XML + SVG 운영 체크리스트
다음을 팀 표준으로 정하면 훨씬 안정적으로 운영할 수 있습니다.
- XML 유효성 유지: 루트는 하나, 닫기 누락 없음, 대소문자 일관성 유지
- 불필요한 정보 제거: 메타데이터와 에디터 흔적 정리
- 이름 규칙 통일: ID와 파일명의 흔들림을 줄여 CSS 충돌 방지
- 최소화 전에 정리: 리뷰 가능성을 우선하고 마지막에 최소화
- 항상 전후 비교: 최적화 이후에는 Viewer에서 직접 확인
정리
XML은 단순히 오래된 형식이 아니라 SVG를 제대로 동작하게 만드는 기반입니다. XML 규칙을 이해하면 SVG 렌더링 버그와 운영 사고를 크게 줄일 수 있습니다.
재현 가능한 워크플로를 고정하면 SVG 자산은 더 쉽게 유지보수할 수 있고, 리뷰도 쉬워지며, 디바이스와 환경 차이에도 더 강해집니다.
다음 단계
- SVG Viewer에서 구조와 정렬을 확인합니다.
- SVG Sanitizer로 외부 파일을 안전하게 정리합니다.
- SVG Optimizer와 SVG Minify로 최종 자산을 만듭니다.