DTD 和 XSD 之間有什麼區別?


在學習它們之間的區別之前,讓我們先了解一下 XML 模式定義 (XSD) 和文件型別定義 (DTD) 的概念。

XML 模式定義 (XSD)

XML 被稱為可擴充套件標記語言,用於表示和操作資料元素。它是一種用於在網際網路上以結構化形式通訊資料的語言。

XSD 被稱為 XML 模式定義,是資料定義語言的擴充套件版本,用於解釋 XML 模式的結構。XML 的特點是它以更精確的方式解釋文件,使用者可以理解。

XML 模式的用途

XML 模式的用途如下:

  • XSD 提供結構並檢查 XML 檔案是否根據結構建立,它們幫助程式設計師建立或輸入檔案中的錯誤詳細資訊。

  • 當資料透過網際網路傳送時,即從傳送方到接收方,使用 XML 模式非常重要,因為它可以保護資料。

  • 透過使用 XML 模式,可以非常輕鬆地連線到資料庫並解釋表示模式,即資料格式。

  • 它還有助於將資料從一種格式轉換為另一種格式。

示例

考慮一個名為 page.xml 的檔案,如下所示:

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="note">
   <xs:complexType>
      <xs:sequence>
         <xs:element name="to" type="xs:string"/>
         <xs:element name="from" type="xs:string"/>
         <xs:element name="heading" type="xs:string"/>
         <xs:element name="body" type="xs:string"/>
      </xs:sequence>
   </xs:complexType>
</xs:element>
</xs:schema>

XSD 檔案以 .xsd 副檔名儲存,它為 XML 檔案或文件提供結構。上面 xml 程式碼的 XSD 檔案如下:

上面 XSD 檔案的示例名為 page.xsd,該檔案在 xml 文件中使用。“from”、“heading”和“body”包含字串型別,為了按順序使用,我們將它們放在 sequence 標籤之間並關閉 schema。

文件型別定義 (DTD)

文件型別定義也稱為 DTD,它幫助我們為 XML 文件提供邏輯方法和語法。DTD 使用的副檔名為 .dtd,它提供了關於 XML 文件的約束(即格式、元素)的完整解釋。

它是一種支援標記語言的標記宣告。DTD 文件的表示形式如下:

https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd

要在 XML 格式中使用 DTD,程式設計師必須在 XML 文件中傳送上述宣告。

DTD 提供宣告,例如如何建立根元素及其子元素以及它們如何相互關聯。

語法

DTD 的語法如下:

<!DOCTYPE element DTD identifier
[
   declaration1
   declaration2
   ........
]>

DTD 的用途

DTD 的用途如下:

  • DTD 用於為 xml 文件提供語法和邏輯結構。

  • 它使程式碼更易讀且更易於程式設計師理解,並將資料儲存在 XML 中,使其格式良好且沒有複雜性。

示例

以下是 DTD 的表示形式:

<?xml version = "1.0" encoding = "UTF-8" standalone = "yes" ?>
<!DOCTYPE address [
   <!ELEMENT address (name,company,phone)>
   <!ELEMENT name (#PCDATA)>
   <!ELEMENT company (#PCDATA)>
   <!ELEMENT phone (#PCDATA)>
]>

<address>
   <name>Tanmay Patil</name>
   <company>TutorialsPoint</company>
   <phone>(011) 123-4567</phone>
</address>

更新於:2022-03-17

892 次檢視

開啟您的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.