SCHEMA VS DTD


DTD(Document Type Define,文檔定義類型)和XML Schema都是用來描述XML文檔結構的!

不過DTD是W3C推薦的驗証XML文檔有效性的唯一正式規范,但它也有著許多不足
 
1. DTD過復雜,要熟悉它的語法、標記集合需要一定的時間和精力,而且DTD採用的是非XML語法            規則,不能用XML工具進行操作處理

2. DTD對數據類型定義支持不夠,所定義的數據類型有限,並且都是針對屬性而設立,無法滿足電子商務等Web應用所需要的豐富數據類型

3. 擴展機制復雜,也很脆弱,最大的弊病在不能表達元素之間的相互關系

4. DTD不支持名稱空間的機制。

以上種種缺陷,促使W3C組織致力尋求一種新的機制來取代DTD。在眾多的標準之中, Microsoft公司為主提出的XML Schema較為引人注目。它具有完全符合XML語法、豐富的數據類型、良好的可擴展性以及易被DOM等XML解析器處理等優點。

詳細資料:http://forum.flash2u.com.tw/dispbbs_63_6547_1.html

SHEMA HAS Rich typing THEN DTD

The place where W3C XML Schemas really shine is in expressing type constraints on attribute values and element contents. This is where DTDs are weakest.

詳細資料:http://www-128.ibm.com/developerworks/xml/library/x-matters7.html