DTD - 요소
DTD에서는 요소가 요소 표시를 통해 표시됩니다。
요소를 표시합니다
DTD에서는 XML 요소가 요소 표시를 통해 표시됩니다. 요소 표시는 다음과 같은 문법을 사용합니다:
!ELEMENT 元素名称 类别
또는
!ELEMENT 元素名称 (요소 내용)
비어 있는 요소
비어 있는 요소는 EMPTY 키워드를 통해 표시됩니다:
!ELEMENT 元素名称 EMPTY
예제:
!ELEMENT br EMPTY
XML 예제:
<br />
PCDATA 만을 가진 요소
PCDATA 만을 가진 요소는 괄호 안의 #PCDATA를 통해 표시됩니다:
!ELEMENT 元素名称 (#PCDATA)
예제:
!ELEMENT from (#PCDATA)
어떤 내용을 가진 요소
ANY 키워드를 통해 표시된 요소는 어떤 가능한 데이터 조합을 포함할 수 있습니다:
!ELEMENT 元素名称 ANY
예제:
!ELEMENT note ANY
자식 요소(시퀀스)를 가진 요소
1개 이상의 자식 요소를 가진 요소는 괄호 내의 자식 요소 이름으로 선언됩니다:
<!ELEMENT 요소명 (자식요소명 1)>
또는
<!ELEMENT 요소명 (자식요소명 1,자식요소명 2,...)>
예제:
<!ELEMENT note (to,from,heading,body)>
자식 요소가 쉼표로 구분된 시퀀스로 선언되면, 이러한 자식 요소는 문서 내에서 같은 순서로 나타나야 합니다. 완전한 선언에서 자식 요소도 선언되어야 하며, 자식 요소는 또 자식 요소를 가질 수 있습니다. "note" 요소의 완전한 선언은 다음과 같습니다:
<!ELEMENT note (to,from,heading,body)> <!ELEMENT to (#PCDATA)> <!ELEMENT from (#PCDATA)> <!ELEMENT heading (#PCDATA)> <!ELEMENT body (#PCDATA)>
단 한 번만 나타날 수 있는 요소를 선언합니다
<!ELEMENT 요소명 (자식요소명)>
예제:
<!ELEMENT note (message)>
위의 예제는 "message" 자식 요소가 1번 나타나고, 그것이 "note" 요소 내에 단 한 번만 나타나야 한다고 선언했습니다.
최소 1번 나타날 수 있는 요소를 선언합니다
<!ELEMENT 요소명 (자식요소명+)>
예제:
<!ELEMENT note (message+)>
위의 예제에서 플러스 기호는 "message" 자식 요소가 "note" 요소 내에 최소 1번 나타날 수 있다고 선언했습니다.
0번 또는 여러 번 나타날 수 있는 요소를 선언합니다
<!ELEMENT 요소명 (자식요소명*)>
예제:
<!ELEMENT note (message*)>
위의 예제에서 별표는 "message" 자식 요소가 "note" 요소 내에 0번 또는 여러 번 나타날 수 있다고 선언했습니다.
0번 또는 1번 나타날 수 있는 요소를 선언합니다
<!ELEMENT 요소명 (자식요소명?)>
예제:
<!ELEMENT note (message?)>
위의 예제에서 물음표는 "note" 요소 내에 "message" 자식 요소가 0번 또는 1번 나타날 수 있다고 선언했습니다.
"비.../또는..." 유형의 내용을 선언합니다
예제:
<!ELEMENT note (to,from,header,(message|body))>
위의 예제는 "note" 요소가 "to" 요소, "from" 요소, "header" 요소를 포함하고, "message" 요소가 아닌 "body" 요소를 포함해야 한다고 선언했습니다.
혼합 타입의 내용을 선언합니다.
예제:
<!ELEMENT note (#PCDATA|to|from|header|message)*>
위의 예제는 "note" 요소가 PCDATA, "to", "from", "header" 또는 "message"가 나타날 수 있는 0회나 여러 번 포함할 수 있는 것을 선언했습니다.