DTD - Elemen

In a DTD, elements are declared by element declarations.

Declare an element

In DTD, XML elements are declared by element declarations. Element declarations use the following syntax:

!ELEMENT element name category

atau

!ELEMENT element name (element content)

Empty elements

Empty elements are declared with category keyword EMPTY:

!ELEMENT element name EMPTY

例子:

!ELEMENT br EMPTY

XML example:

<br />

Elements with only PCDATA

Elements with only PCDATA are declared with #PCDATA in parentheses:

!ELEMENT element name (#PCDATA)

例子:

!ELEMENT from (#PCDATA)

Elements with any content

Elements declared with category keyword ANY can contain any combination of parseable data:

!ELEMENT element name ANY

例子:

!ELEMENT note ANY

Elemen yang mempunyai elemen anak (turutan)

Elemen yang mempunyai satu atau lebih elemen anak diumumkan dengan nama elemen anak di dalam tanda kurung bulat:

<!ELEMENT 元素名称 (子元素名称 1)>

atau

<!ELEMENT 元素名称 (子元素名称 1,子元素名称 2,.....)>

例子:

<!ELEMENT note (to,from,heading,body)>

Ketika elemen anak dideklarasikan dalam urutan yang dipisahkan oleh koma, elemen-elemen itu mesti muncul dalam urutan yang sama dalam dokumen. Dalam deklarasi yang lengkap, elemen anak juga mesti dideklarasikan, dan elemen anak juga boleh memiliki elemen anak. Deklarasi yang lengkap elemen "note" adalah:

<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to      (#PCDATA)>
<!ELEMENT from    (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body    (#PCDATA)>

Pengumuman elemen yang hanya mesti muncul sekali

<!ELEMENT 元素名称 (子元素名称)>

例子:

<!ELEMENT note (message)>

Contoh yang di atas menyatakan bahawa elemen anak message mesti muncul sekali, dan hanya mesti muncul sekali dalam elemen "note".

Pengumuman elemen yang mesti muncul sekurang-kurangnya sekali

<!ELEMENT 元素名称 (子元素名称+)>

例子:

<!ELEMENT note (message+)>

Tanda plus di contoh yang di atas menyatakan bahawa elemen anak message mesti muncul sekurang-kurangnya sekali dalam elemen "note".

Pengumuman elemen yang boleh muncul nol kali, sekali atau lebih kali

<!ELEMENT 元素名称 (子元素名称*)>

例子:

<!ELEMENT note (message*)>

Tanda bintang di contoh yang di atas menyatakan bahawa elemen anak message boleh muncul nol kali, sekali atau lebih kali dalam elemen "note".

Pengumuman elemen yang boleh muncul nol kali atau sekali

<!ELEMENT 元素名称 (子元素名称?)>

例子:

<!ELEMENT note (message?)>

Tanda tanya di contoh yang di atas menyatakan bahawa elemen anak message boleh muncul nol kali atau sekali dalam elemen "note".

Pengumuman kandungan jenis "bukan.../atau..."

例子:

<!ELEMENT note (to,from,header,(message|body))>

Contoh yang di atas menyatakan bahawa elemen "note" mesti mengandungi elemen "to", elemen "from", elemen "header", dan elemen bukan "message" tetapi "body".

声明混合型的内容

例子:

<!ELEMENT note (#PCDATA|to|from|header|message)*>

上面的例子声明了:"note" 元素可包含出现零次或多次的 PCDATA、"to"、"from"、"header" 或者 "message"。