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>
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP