XML Schema和DTD的區別

2021-10-18 00:02:37 字數 503 閱讀 9401

schema是對xml文件結構的定義和描述,其主要的作用是用來約束xml檔案,並驗證xml檔案有效性。dtd的作用是定義xml的合法構建模組,它使用一系列的合法元素來定義文件結構。它們之間的區別有下面幾點:

1、schema本身也是xml文件,dtd定義跟xml沒有什麼關係,schema在理解和實際應用有很多的好處。

2、dtd文件的結構是「平鋪型」的,如果定義複雜的xml文件,很難把握各元素之間的巢狀關係;schema文件結構性強,各元素之間的巢狀關係非常直觀。

3、dtd只能指定元素含有文字,不能定義元素文字的具體型別,如字元型、整型、日期型、自定義型別等。schema在這方面比dtd強大。

4、schema支援元素節點順序的描述,dtd沒有提供無序情況的描述,要定義無序必需窮舉排列的所有情況。schema可以利用xs:all來表示無序的情況。

5、對命名空間的支援。dtd無法利用xml的命名空間,schema很好滿足命名空間。並且,schema還提供了include和import兩種引用命名空間的方法。

命名空間和XML Schema

namespace 命名空間是一組保持唯一的名稱。例如,可以將乙個公司所有人的姓名視為乙個命名空間。命名空間就是在邏輯上相關的任何一組名稱,而且每個名稱都必須唯一。lvqi pingdu reminder dont forget eat grass 預設命名空間 lvqi pingdu remind...

Schema和DTD的區別

schema是對xml文件結構的定義和描述,其主要的作用是用來約束xml檔案,並驗證xml檔案有效性。dtd的作用是定義xml的合法構建模組,它使用一系列的合法元素來定義文件結構。它們之間的區別有下面幾點 1 schema本身也是xml文件,dtd定義跟xml沒有什麼關係,schema在理解和實際應...

Schema和DTD的區別

schema是對xml文件結構的定義和描述,其主要的作用是用來約束xml檔案,並驗證xml檔案有效性。dtd的作用是定義xml的合法構建模組,它使用一系列的合法元素來定義文件結構。它們之間的區別有下面幾點 1 schema本身也是xml文件,dtd定義跟xml沒有什麼關係,schema在理解和實際應...