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회나 여러 번 포함할 수 있는 것을 선언했습니다.