Model) [5]
W3C định nghĩa tài liệu XML theo mô hình đối t−ợng tài liệu DOM. Theo mô hình này, tài liệu XML là một cây bao gồm các nút, chúng có thể chứa phần tử, dữ liệu (text), thuộc tính,...và các nút con khác.
Giá trị Nút Mô tả
1 Element Phần tử XML
2 Attribute Thuộc tính
3 Text Dữ liệu text
4 CDATA section Phân đoạn CDATA 5 Entity reference Tham chiếu thực thể
6 Entity Thực thể
7 Processing Instruction chỉ thị xử lý
8 Comment Chú thích
9 Document Tài liệu
10 Document type Kiểu t− liệu 11 Document fragment Phân đoạn tài liệu
12 Notation Ghi chú
Ví dụ với tài liệu XML sau đây:
<?xml version=”1.0”?> <danhsachCBCNV>
<canbo>
<hoten> Nguyễn Văn A </hoten> <ngaysinh> 21-10-1954 </ngaysinh> <gioitinh> Nam </gioitinh>
<khoa> CNTT </khoa> </canbo>
</danhsachCBCNV>
Tài liệu này có thể phân cấp theo cấu trúc hình cây bao gồm các nút đối t−ợng : Nguyễn Văn A <danhsachCBCNV > <canbo> <hoten> <ngaysinh > <gioitinh > <khoa> 21-10- 1954 Nam CNTT
Hình 2.1: Tài liệu XML theo cấu trúc hình cây
DOM cung cấp các ph−ơng thức để truy cập và xử lý các nút trong tài liệu bằng JavaScript:
ắ documentElement: trả về nút gốc tài liệu.
ắ doctype: trả về kiểu nút gốc.
ắ nodeType: Xác dịnh kiểu dữ liệu của nút.
ắ firstChild, nextChild, previuosChild, lastChild: trả về nút con đầu tiên, kế tiếp, tr−ớc đó và nút con sau cùng của danh sách các nút con.
ắ firstSibling, nextSibling, previuosSibling, lastSibling: trả về nút cùng cấp đầu tiên, kế tiếp, tr−ớc đó hoặc nút cùng cấp sau cùng.
ắ item(i): truy cập nút thứ i trong danh sách.
ắ childNodes: trả về danh sách các nút con của một nút.
ắ nodeValue: trả về giá trị của nút.
ắ nodeName: trả về tên nút.
ắ creatElement(): khởi tạo một thành phần mới trong tài liệu.
ắ insertBefore(): chèn một nút chứa phần tử mới lên tr−ớc nút.
ắ creatTextNode(): khởi tạo dữ liệu text cho một nút.