DTD가에서 요소 요소 선언으로 선언됩니다.
요소 선언
DTD가에서 XML 요소는 다음과 같은 구문을 사용하여 선언된다 :
<!ELEMENT element-name category>
or
<!ELEMENT element-name (element-content)>
빈 요소
빈 요소는 EMPTY 카테고리 키워드로 선언된다 :
<!ELEMENT element-name EMPTY>
Example:
<!ELEMENT br EMPTY>
XML example:
<br />
분석 된 문자 데이터와 요소
만 해석 문자 데이터 요소는 괄호 안에 #PCDATA로 선언된다 :
<!ELEMENT element-name (#PCDATA)>
Example:
<!ELEMENT from (#PCDATA)>
어떤 내용과 요소
요소 분석 할 수있는 데이터의 조합을 포함 할 수 있습니다, 모든 카테고리 키워드로 선언 :
<!ELEMENT element-name ANY>
Example:
<!ELEMENT note ANY>
어린이와 요소 (sequences)
하나 이상의 자녀가있는 요소는 괄호 안에 아이 요소의 이름으로 선언된다 :
<!ELEMENT element-name (child1)>
or
<!ELEMENT element-name (child1,child2,...)>
Example:
<!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-name (child-name)>
Example:
<!ELEMENT note (message)>
위의 예는 자식 요소 선언 "message" 한 번만 내부에 한 번 발생해야 "note" 요소입니다.
요소의 선언 최소 하나의 발생
<!ELEMENT element-name (child-name+)>
Example:
<!ELEMENT note (message+)>
이 예에서 + 기호 위의 자식 요소 선언 "message" 내부에 한 번 이상 발생해야 "note" 요소입니다.
요소의 0 개 이상의 항목을 선언
<!ELEMENT element-name (child-name*)>
Example:
<!ELEMENT note (message*)>
이 예에서 * 표시는 상기 자식 요소 선언 "message" 공진 영역 0 번 이상 발생 "note" 소자.
요소의 발생이 없거나 한 번 선언
<!ELEMENT element-name (child-name?)>
Example:
<!ELEMENT note (message?)>
? 예 로그인 위의 자식 요소 선언 "message" 내부에 0 또는 1 시간이 발생할 수 있습니다 "note" 요소입니다.
선언 중 / 또는 내용
<!ELEMENT note (to,from,header,(message|body))>
예 위의 선언 "note" 요소가 있어야합니다 "to" 요소를하는 "from" 소자, "header" 요소 및 중 "message" 또는 "body" 요소입니다.
혼합 내용 선언
<!ELEMENT note (#PCDATA|to|from|header|message)*>
이 예는 위의 선언 "note" 요소, 구문 분석 문자 데이터의 0 개 이상의 항목을 포함 할 수있다 "to" , "from" , "header" , 또는 "message" 요소를.