Tin tức
Định nghĩa kiểu tài liệu (DTD)
24/10/2008
Một định nghĩa là kiểu tài liệu (DTD Document Type Defimtion) là một bộ những qui tắc cú pháp cho các nhãn. Nó cho bạn biết những nhãn nào bạn có thể sử dụng trong một tài liệu: chúng nên được xếp theo thứ tự nào, những nhãn nào có thể xuất hiện bên trong các nhãn khác, những nhãn nào có các thuộc tính.... Nguồn gốc được phát triển cho việc sử dụng với SGML, một DTD có thể là một bộ phận của một tài liệu XML, nhưng thường nó là một tài liệu riêng biệt hoặc một loạt các tài liệu.

Bởi vì bản thân XML không phải là một ngôn ngữ mà là một hệ thống cho việc định nghĩa các ngôn ngữ, cho nên nó không có một DTD chung như trong HTML. Thay vào đó mỗi tổ chức hoặc công nghệ muốn dùng XML cho việc trao đổi dữ liệu đều có thể đinh nghĩa nên những DTD sở hữu riêng. Nếu một tổ chức dùng XML được gán nhãn các tài liệu chỉ cho việc sử dụng nội bộ thì có thể tạo nên DTD riêng cho mình. Ví dụ. báo tạp chí tương tác Wafl Street có một DTD chỉ rõ từng bản án với những thông tin về các trang các bài báo, những bài tóm tắt ...Tạp chí này hiện tại dùng DTD của SGML ( được gọi là ngôn ngữ nâng cấp Dow Jones ) nhưng hiện nó cũng đang phát triển một phiên bản XML.
Những định nghĩa DTD không thoát khỏi sự tranh cãi. Trong khi một số người cảm thấy chúng làm tăng giá trị thực chất của công việc thì một số khác lại cho rằng chúng kìm hãm sự sáng tạo. Tuy nhiên có một số người nghĩ rằng chúng có ích không đủ tiến xa hơn. Microsott đang cố gắng khắc phục cho trường hợp phàn nàn sau cùng này với kế hoạch đưa ra XML-DATA nhưng các nhà phê bình cho rằng những cải tiến này nên được thực hiện bên trong bản thân kỹ thuật DTD.

Giản đồ của Microsoft

Một nhóm những nhà cung cấp kể cả Microsoft đã có kế hoạch đưa ra một sự (tiếp cận thay thế DTD được gọi là một giản đồ mà họ đã đệ trình lên W3C dưới dạng XML-data giống như một DTD, một giản đồ cung cấp những qui tắc của một tài liệu và chỉ ra những nhãn nào được sử dụng, các thuộc tính của chúng là gì mối quan hệ giữa các nhãn với nhau...
Tuy nhiên. khác với những DTD một giản đồ có thể định nghĩa nên những kiểu dữ liệu. Ví dụ: một DTD có thể có một nhãn được chỉ định dạng <PRLCE> nhưng nội dung được chứa trong nhãn có thể là một số hoặc một chuỗi ký tự. Một giản đồ có thể bắt buộc bạn phải nhập vào một số. Cách tiếp cận này rõ ràng có lợi đặc biệt đối với việc trao đổi dữ liệu giữa các ứng dụng, các đối tượng hoặc những cơ sở dữ liệu. Vấn đề đặt ra duy nhất là liệu nó sẽ bị ảnh hưởng theo đặc điểm kỹ thuật của DTD hay kết quả là một sự mở rộng riêng biệt đến XML.
 
DTD xây dựng cho chúng ta các thành phần mà được diễn đạt trong XML
- Diễn đạt các thuộc tính của các thành phần đó, cũng như thứ tự của chúng.
VD: “Student.xml”
<?xml version = “1.0” encodeding=”utf-8”>
<STUDENT DETAIL>
<STUDENT>
<NAME>John</NAME>
<EMAIL>John@yahoo.com</EMAIL>
<PHONE>0123456789</PHONE>
</SUTDENT>
</SUTDENT DETAIL>

“Student.dtd”
<!ELEMENT STUDENT DETAIL (STUDENT)>
<!ELEMENT STUDENT (NAME, EMAIL, PHONE)>
<!ELEMENT NAME (#PCDATA)>
<!ELEMENT EMAIL (#PCDATA)>
<!ELEMENT PHONE (#PCDATA)>
Trong đó:
<!ELEMENT …> là từ khóa có nghĩa là Thành phần
#PCDATA (Pased character set Data): Tập các ký tự dữ liệu cần xử ý.
#CDATA (Character set Data): Các tập ký tự dữ liệu ko cần xử lý.
Ý kiến bạn đọc