본문 바로가기

UI개발

파라미터 엔티티

파라미터 엔티티

HTML DTD는 파라미터 엔티티 정의로 시작된다. 
파라미터 엔티티 정의는 DTD에만 나타나고, HTML 문서에는 나타나지 않는다. 


파라미터 엔티티 정의는 <!ENTITY 라는 키워드로 시작되고, 엔티티(entity) 이름이 따옴표 속의 문자열로 기술되며, >으로 닫는다. 

 

DTD의 파라미터 엔티티는 "%"로 시작 되고, 엔티티 이름, 그리고 선택적인 ";" 로 끝난다.

 

<!ENTITY % fontstyle "TT | I | B | BIG | SMALL">

fontstyle에 기술된 문자열을 설명한다. 


<!ENTITY % inline "#PCDATA | %fontstyle; | %phrase; | %special; | %formctrl;">

 inline 에는 fontstyle, phrase, special, formctrl 파라미터 엔티티들이 포함된다고 정의 한 것이다. 

 

 

엘리먼트 선언

HTML DTD는 엘리먼트 타입과 그 속성(attribute)으로 구성된다.

<!ELEMENT 로 시작되고 >로 종결되며, 그 사이에 아래 내용들이 기술된다.

 
1. 엘리먼트 이름.

2. 엘리먼트의 종료태그는 선택적이다. 엘리먼트 이름 다음에 두개의 하이픈('-'와 '-')이 나오면, 각각은 시작과 끝을 의미하며 필수적이다. 한 개의 하이픈 뒤에 "O"가 있으면, 종료 태그가 생략될 수 있고, "O"가 짝으로 있으면 시작태그와 종료태그가 생략 될 수 있다.

3. 엘리먼트의 내용이 될수 있다. 가능한 엘리먼트 컨텐츠를 컨텐츠(content) 모델이라한다. 내용을 갖지 않게 설계된 엘리먼트 타입을 빈(empty) 엘레멘트라 하며, 컨텐츠 모델은 "EMPTY"라는 키워드를 사용하여 정의한다.

Empty Element : 내용을 포함하지 않음 <img> <br> ...
Non-Empty Element : 나머지


<!ELEMENT UL - - (LI)+>

 1. 선언된 엘레멘트 이름은 UL이다.
 2. 두개의 하이픈('- -')은 이 엘레멘트에서 시작 태그 <UL>과 종료 태그 </UL>가 다 필요하다는 것을 의미한다.
 3. 마지막으로 이 엘레멘트에서 컨텐트(content) 모델은 '한개 이상의 LI 엘레멘트를 갖는다'는 것을 정의한다.

                              
<!ELEMENT IMG - O EMPTY>

 1. 선언된 엘레멘트 이름은 IMG이다.
 2. 하이픈 "-" 다음의 "O"는 종료 태그가 생략 될 수 있다는 것을 의미한다. 
 3. 키워드 "EMPTY"로 이 종류에는 컨텐트을 가질 수 없음을 의미한다.

 

 

 

엘레멘트의 컨텐트 모델은 다음 문법으로 기술한다.

 

( ... )

그룹을 지정.

A | B

또는 B이고, 둘 다는 아님

A , B

A와 B가 순서를 맞춰 둘 다 나타남.

A & B

A와 B가 순서는 관계 없이 둘 다 나타남.

A?

A가 안 나타나거나 한 번 나타남.

A*

A가 안 나타나거나 한번 이상 나타남.

A+

A가 한번 이상 나타남.

 

 

<!ELEMENT UL - - (LI)+>

UL 엘레먼트는 시작과 종료 태그가 있고, LI 엘레멘트가 한 개 이상 포함 되어야 함.

 

<!ELEMENT DL - - (DT | DD)+>

DL 엘레먼트에는 시작과 종료 태그가 있고, 순서 관계 없이 하나 이상의 DT 또는 DD 엘레먼트가 포함 되어야 한다.

 

<!ELEMENT A - - (%inline;)* -(A)>

A 엘레먼트는 시작과 종료 태그가 있고, DTD 파라메터(Parameter) 엔티티(Entity) "%inline;"의 부분이고, A안에 다른 A를 가질 수 없다.

 

 

 

'UI개발' 카테고리의 다른 글

자바스크립트 연산자  (0) 2015.07.26
자바스크립트 데이터 종류  (0) 2014.12.01
자바스크립트 변수  (0) 2014.05.07
메타태그  (0) 2014.05.07
문서형 정의 및 선언  (0) 2014.04.12