DTD - 属性
- Trang trước DTD yếu tố
- Trang sau DTD So sánh yếu tố với thuộc tính
Trong DTD, thuộc tính được khai báo bằng cách sử dụng khai báo ATTLIST.
Khai báo thuộc tính
Sử dụng ngữ pháp sau để khai báo thuộc tính:
<!ATTLIST tên phần tử tên thuộc tính loại thuộc tính giá trị mặc định>
Mẫu DTD:
<!ATTLIST payment type CDATA "check">
Mẫu XML:
<payment type="check" />
Dưới đây làLoại thuộc tínhCác tùy chọn của:
Loại | Mô tả |
---|---|
CDATA | Giá trị là dữ liệu văn bản (character data) |
(en1|en2|..) | Giá trị này là một trong các giá trị của danh sách số liệu |
ID | Giá trị là id duy nhất |
IDREF | Giá trị là id của một phần tử khác |
IDREFS | Danh sách giá trị các id khác |
NMTOKEN | Giá trị là tên XML hợp lệ |
NMTOKENS | Giá trị là danh sách các tên XML hợp lệ |
ENTITY | Giá trị là một thẻ |
ENTITIES | Giá trị là danh sách các thẻ |
NOTATION | Giá trị này là tên ký hiệu |
xml: | Giá trị là một giá trị XML được định nghĩa trước |
Tham số giá trị mặc định có thể sử dụng các giá trị sau:
Giá trị | Giải thích |
---|---|
Giá trị | Giá trị mặc định của thuộc tính |
#REQUIRED | Giá trị thuộc tính là bắt buộc |
#IMPLIED | Thuộc tính không bắt buộc |
#FIXED value | Giá trị thuộc tính là cố định |
Định nghĩa giá trị mặc định của thuộc tính
DTD:
<!ELEMENT square EMPTY> <!ATTLIST square width CDATA "0">
XML hợp lệ:
<square width="100" />
Trong ví dụ trên, "square" được định nghĩa là một phần tử trống có thuộc tính "width" với loại CDATA. Nếu độ rộng không được thiết lập, giá trị mặc định là 0.
#IMPLIED
语法
<!ATTLIST 元素名称 属性名称 属性类型 #IMPLIED>
Ví dụ
DTD:
<!ATTLIST contact fax CDATA #IMPLIED>
XML hợp lệ:
<contact fax="555-667788" />
XML hợp lệ:
<contact />
Nếu bạn không muốn buộc tác giả bao gồm thuộc tính và bạn không có tùy chọn giá trị mặc định, hãy sử dụng từ khóa #IMPLIED.
#REQUIRED
语法
<!ATTLIST 元素名称 属性名称 属性类型 #REQUIRED>
Ví dụ
DTD:
<!ATTLIST person number CDATA #REQUIRED>
XML hợp lệ:
<person number="5677" />
XML không hợp lệ:
<person />
Nếu bạn không có tùy chọn giá trị mặc định nhưng vẫn muốn buộc tác giả gửi thuộc tính, hãy sử dụng từ khóa #REQUIRED.
#FIXED
语法
<!ATTLIST 元素名称 属性名称 属性类型 #FIXED "value">
Ví dụ
DTD:
<!ATTLIST sender company CDATA #FIXED "Microsoft">
XML hợp lệ:
<sender company="Microsoft" />
XML không hợp lệ:
<sender company="W3School" />
Nếu bạn muốn thuộc tính có giá trị cố định và không cho phép tác giả thay đổi giá trị này, hãy sử dụng từ khóa #FIXED. Nếu tác giả sử dụng giá trị khác, bộ phân tích XML sẽ trả về lỗi.
列举属性值
语法:
<!ATTLIST 元素名称 属性名称 (en1|en2|..) 默认值>
Ví dụ DTD:
!ATTLIST payment type (check|cash) "cash">
Ví dụ XML:
<payment type="check" />
hoặc
<payment type="cash" />
Nếu bạn muốn giá trị thuộc tính là một trong số các giá trị hợp lệ cố định, hãy sử dụng giá trị thuộc tính liệt kê.
- Trang trước DTD yếu tố
- Trang sau DTD So sánh yếu tố với thuộc tính