DTD - Tên phần tử

  • Ví dụ trên đã chỉ ra rằng: "note" phần tử có thể chứa PCDATA xuất hiện zero hoặc nhiều lần, "to", "from", "header" hoặc "message". Trang trước
  • Trang tiếp theo Thuộc tính DTD

Trong một DTD, các phần tử được tuyên bố bằng cách sử dụng tuyên bố phần tử.

Tuyên bố một phần tử

Trong DTD, các phần tử XML được tuyên bố bằng cách sử dụng tuyên bố phần tử. Tuyên bố phần tử sử dụng ngữ pháp sau:

<!ELEMENT tên_element Loại>

hoặc

<!ELEMENT tên_element (nội_dung_element)>

Các phần tử trống

Các phần tử trống được tuyên bố bằng từ khóa loại EMPTY:

<!ELEMENT tên_element EMPTY>

Đề xuất nội dung lai

<!ELEMENT br EMPTY>

Ví dụ XML:

<br />

Các phần tử chỉ có PCDATA

Các phần tử chỉ có PCDATA được tuyên bố bằng #PCDATA trong dấu ngoặc kép:

<!ELEMENT tên_element (#PCDATA)>

Đề xuất nội dung lai

<!ELEMENT from (#PCDATA)>

Phần tử có bất kỳ nội dung nào

Phần tử được tuyên bố bằng từ khóa loại ANY có thể chứa bất kỳ tổ hợp nào của dữ liệu có thể phân tích:

<!ELEMENT tên_element ANY>

Đề xuất nội dung lai

<!ELEMENT note ANY>

Phần tử có phần tử con (dãy)

Phần tử có một hoặc nhiều phần tử con được tuyên bố bằng tên phần tử con trong dấu ngoặc kép:

<!ELEMENT tên_element (tên_con_element 1)>

hoặc

<!ELEMENT tên_element (tên_con_element 1,tên_con_element 2,...)>

Đề xuất nội dung lai

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

Khi các phần tử con được tuyên bố theo một trình tự bằng dấu phẩy ngăn cách, các phần tử con này phải xuất hiện theo cùng trình tự trong tài liệu. Trong một tuyên bố đầy đủ, các phần tử con cũng phải được tuyên bố, và các phần tử con cũng có thể có phần tử con. Tuyên bố đầy đủ của phần tử "note" là:

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

Tuyên bố về phần tử chỉ xuất hiện một lần

<!ELEMENT tên_element (tên_con_element)>

Đề xuất nội dung lai

<!ELEMENT note (message)>

Ví dụ trên tuyên bố rằng: phần tử con "message" phải xuất hiện ít nhất một lần và chỉ xuất hiện trong phần tử "note".

Tuyên bố về phần tử xuất hiện ít nhất một lần


Đề xuất nội dung lai

<!ELEMENT tên phần tử (tên phần tử con+)>

<!ELEMENT note (message+)>

Ví dụ trên đã chỉ ra rằng dấu cộng đã chỉ ra rằng phần tử con message phải xuất hiện ít nhất một lần trong phần tử "note".

Đề xuất phần tử xuất hiện zero hoặc nhiều lần

Đề xuất nội dung lai

<!ELEMENT tên phần tử (tên phần tử con*)>

<!ELEMENT note (message*)>

Ví dụ trên đã chỉ ra rằng dấu sao đã chỉ ra rằng phần tử con message có thể xuất hiện zero hoặc nhiều lần trong phần tử "note".

Đề xuất phần tử xuất hiện zero hoặc một lần

Đề xuất nội dung lai

<!ELEMENT tên phần tử (tên phần tử con?)>

<!ELEMENT note (message?)>

Ví dụ trên đã chỉ ra rằng dấu hỏi đã chỉ ra rằng phần tử con message có thể xuất hiện zero hoặc một lần trong phần tử "note".

Đề xuất nội dung lai

Đề xuất nội dung "không.../hoặc..."

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

Ví dụ trên đã chỉ ra rằng: "note" phần tử phải chứa phần tử "to", phần tử "from", phần tử "header", và phần tử không phải "message" mà là "body".

Đề xuất nội dung lai

Ví dụ:

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

  • Ví dụ trên đã chỉ ra rằng: "note" phần tử có thể chứa PCDATA xuất hiện zero hoặc nhiều lần, "to", "from", "header" hoặc "message". Trang trước
  • Trang tiếp theo Thuộc tính DTD