본문 바로가기

Programming/XML

XML 문서 구조

 

 XML 문서의 구조는 서두와 몸체 그리고 기타 부분으로 이루어져 있다. 서두에는 XML 선언과 XML 프로세스에게 XML 문서를 어떻게 처리해라 라는 정보를 알려주는 프로세싱 지시자 그리고 어떤 마크업 언어로 작성했는지에 대한 문서 유형 선언으로 구성된다.

 

몸체 부분에는 한 개의 엘리먼트가 와야 하는데, 이 엘리먼트를 루트 엘리먼트라고 부른다. 루트 엘리먼트를 제외한 다른 엘리먼트는 루트 엘리먼트의 자식(하위) 엘리먼트로 작성이 되어야 한다.

 

기타 부분에는 주석 및 서두와 마찬가지로 XML 문서를 어떻게 처리하라는 정보를 알려주는 프로세싱 지시자 그리고 공백으로 구성된다. 보통 기타 부분은 생략된다.

다음은 XML 1.0 권고안의 문서에 대한 EBNF 문법이다.

문법     document(문서) ::= prolog(서두) element(엘리먼트) Misc(기타) *

 

다음의 실제 XML 문서를 보고 XML 문서의 구조를 이해해 보자 

 

<!-- 시작 : 프로세싱 지시자 -->

 

<?xml version="1.0" encoding="euc-kr"?>

 

<!-- 문서 유형 선언 -->   

<!DOCTYPE booklist SYSTEM "bml.dtd">

<!-- 문서의 구조를 xhtml 문서로 변경 -->

<?xml-stylesheet type="text/xsl" href="bml.xsl"?>

 

<!-- 끝 : 프로세싱 지시자 -->

 

<booklist>      <!-- 루트 엘리먼트 -->

<!-- 책 정보 -->

<book id="b1" kind="k2">   <!-- 자식 엘리먼트 1 -->

<title>XML 기초서</title>

<author>신민철</author>

<publisher>프리렉</publisher>

</book>

<book id="b2" kind="k1">   <!-- 자식 엘리먼트 2 -->

<title>가을엔 사랑을 느끼세요</title>

<author>이사랑</author>

<publisher>가을문화사</publisher>

</book>

</booklist>

 

 

이 글은 스프링노트에서 작성되었습니다.