데이터 형식

XML(Extensible Markup Language)

XML은 태그와 속성으로 문서나 데이터의 구조를 표현하는 형식입니다.

쉬운 설명

사이트맵이나 피드 파일을 열면 꺾쇠괄호로 감싼 이름들이 나올 수 있어요. XML에서는 시작 태그와 끝 태그 사이에 값을 넣거나 그 안에 다른 요소를 넣어 구조를 표현해요. HTML처럼 보이더라도 브라우저 화면을 꾸미는 용도로만 쓰이는 것은 아니에요. 태그가 무엇을 뜻하는지는 해당 문서 형식의 규칙을 함께 봐야 해요.

이런 상황에서 만나요

외부 서비스에서 스터디 정보를 XML로 받았다고 해 볼게요. 아래는 스터디 하나에 식별자와 제목을 넣은 가상의 데이터예요.

태그 안의 값과 속성을 구분해요

설명용 화면
1XML 데이터 예시
<study id="intro">
  <title>AI &amp; 코딩</title>
</study>
2속성 읽기

study의 id = intro

3제목 값 읽기

AI & 코딩

  1. 1하나의 study 안에 title 요소가 들어 있어요.
  2. 2id는 study 요소에 붙은 속성의 예시예요.
  3. 3&amp;를 읽으면 제목 값에는 & 문자가 들어가요.
XML 문법을 설명하기 위한 가상 데이터입니다. 실제 사이트맵이나 API의 완성된 문서 형식은 아닙니다.

study 안에 title이 들어 있고, id는 study의 속성이에요. 시작·끝 태그의 이름과 중첩 순서를 맞춰 읽어요. XML을 파싱할 수 있어도 받는 프로그램이 이 구조를 지원하는지는 별도로 확인해야 해요.

헷갈리기 쉬운 점

XML은 HTML과 같은 방식으로 쓰면 되나요?

같지 않아요. XML은 태그 이름의 대소문자와 올바른 닫힘·중첩 등을 엄격하게 확인해요. HTML에서 브라우저가 일부 잘못된 문법을 보정해 주는 동작을 XML에도 기대하면 안 돼요.

값에 &나 < 같은 문자를 그대로 넣으면 문법과 충돌할 수 있어요. 예를 들어 일반 텍스트의 &는 &amp;처럼 표현해요. 문자열을 직접 이어 붙이기보다 사용하는 도구의 XML 생성·읽기 기능을 이용하는 편이 실수를 줄일 수 있어요.

왜 알아야 할까요?

데이터 파일이 열리지 않을 때 태그 이름·닫힘·문자 처리를 확인할 수 있어요. 사이트맵이나 외부 데이터에서 필요한 값이 어느 요소와 속성에 있는지도 찾을 수 있어요.

조금 더 자세히

XML은 Extensible Markup Language의 줄임말입니다. 한 문서에는 하나의 최상위 요소가 있고 그 안에 다른 요소를 중첩할 수 있습니다. 요소의 이름뿐 아니라 속성값, 문자 참조 등도 문법에 맞게 작성해야 합니다.

문법상 올바른 XML인 것과 특정 사이트맵·피드·업무 데이터의 규칙에 맞는 것은 다른 검사입니다. 해당 형식의 네임스페이스나 스키마, 필수 요소가 있다면 그 조건도 확인합니다.

직접 사용할 때 확인해 보세요

  • 시작·끝 태그와 중첩 순서를 확인한다
  • 속성과 요소 내용을 구분한다
  • XML 문법과 대상 문서 형식의 규칙을 함께 확인한다

참고 자료

관계 지도

XML(Extensible Markup Language) 중심으로 관련 개념의 정의와 관계를 한눈에 정리했습니다.
XML(Extensible Markup Language)의 정의와 관련 개념 간 관계를 설명한 계층형 그래프