본문 바로가기

Programming/XML

엘리먼트 내용

 (1) 엘리먼트 내용으로 올 수 있는 것들

1) 문자 데이터

2) 자식 엘리먼트

3) 엔티티 또는 문자 참조

4) CDATA 섹션

5) 프로세싱 지시자

6) 주석

7) 공백 문자열

(2) 문자 데이터

문자 데이터란 XML 프로세서가 해석할 수 있는 내용 중에 마크업을 제외한 부분을 말한다.

 XML 선언  <?xml version="1.0" encoding="ecu-kr"?>
 문서 유형 선언  <!DOCTYPE booklist SYSTEM "bml.dtd">
 프로세싱 지시자(PI)  <?xml-stylesheet type="text/xml" href="bml.xsl"?>
주석  <!-- 주석 내용 -->
시작태그 및 끝태그  <book></book>
빈 엘리먼트 태그  <image src="경로" />
엔티티 참조  DTD에 정의되어 있는 엔티티 참조 (예) &pub1;
문자 참조  &#10진수;   &#16진수;
CDATA 섹션 군분자 <![CDATA[ 문자 데이터 ]]>
최상위 공백 문자열 XML 문서 구성요소 중 루트 엘리먼트 내부가 아닌 외부에 있는 공백 문자열
Text 선언  <?xml version="1.0" encoding="euc-kr"?>

 문자 데이터 내에는 '&' 문자와 '<' 문자를 직접 사용할 수 없다. '&' 문자는 엔티티 참조의 시작을 표시하며, '<' 문자는 엘리먼트의 시작태그, 끝 태그 등등 시작을 표시하기 때문이다.

(3) 자식 엘리먼트

루트 엘리먼트 안에 엘리먼트가 있는 것을 말함

(4) 엔티티 참조

엔티티 참조는 프로그램 언어에서 변수와 같은 역할을 한다고 보면 된다.

자주 쓰이는 내용을 엔티티로 정의하고, XML 문서에서 엔티티로 정의된 내용과 동일한 내용이 작성되어야 할 부분에 엔티티 참조를 사용함으로써 편리하게 사용할 수 있다.

(5) 문자 참조

문자 참조는 문자 집합 코드표상에 언급되어 있는 코드값을 직접 사용하여 문자를 나타내는 것이다.

다음은 문자 참조를 나타내는 문법이다.

문법     &#x(16진수 코드값); 또는 &#(10진수 코드값);

(6) CDATA 섹션

대부분의 경우 문자 데이터는 PCDATA 로서 XML 프로세서가 해석하는데, CDATA 섹션내에 정의된 문자 데이터는 XML 프로세서가 해석하지 않고, 바르 응용프로그램으로 전달한다. 여기서 응용프로그램이란 IE(Internet Explorer)를 말한다.

그래서 문자 데이터로 사용할 수 없는 문자도 모두 사용할 수 있고, 공백도 인정된다. 즉 사용자가 작성한 데이터의 형태 그래도 응용프로그램에 전달한다. 

CDATA와 반대의 개념이 바로 PCDATA로 XML 프로세서에 의해 해석되는 것을 말한다.

 (7) 공백 문자열

하나 이상의 공백 문자들로 구성된 문자열로, XML 파서는 스패이스, 탭등을 하나의 공백 문자로 취급한다.

스페이스 : #x20

탭 : #x9

캐리지 리턴 : #xd

라인 피드 : #xa

 

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