DTD – 元素概述
導讀 | DTD(文件型別定義)的作用是定義 XML 文件的合法構建模組。在一個 DTD 中,元素通過元素宣告來進行宣告。 |
宣告一個元素
在 DTD 中,XML 元素通過元素宣告來進行宣告。元素宣告使用下面的語法:
<!ELEMENT element-name category> 或 <!ELEMENT element-name (element-content)>
空元素
空元素通過類別關鍵詞EMPTY進行宣告:
<!ELEMENT element-name category> 或 <!ELEMENT element-name (element-content)>
只有 PCDATA 的元素
只有 PCDATA 的元素通過圓括號中的 #PCDATA 進行宣告:
<!ELEMENT element-name (#PCDATA)> 例項: <!ELEMENT from (#PCDATA)>
帶有任何內容的元素
通過類別關鍵詞 ANY 宣告的元素,可包含任何可解析資料的組合:
<!ELEMENT element-name ANY> 例項: <!ELEMENT note ANY>
帶有子元素(序列)的元素
帶有一個或多個子元素的元素通過圓括號中的子元素名進行宣告:
<!ELEMENT element-name (child1)> 或 <!ELEMENT element-name (child1,child2,...)> 例項: <!ELEMENT note (to,from,heading,body)>
當子元素按照由逗號分隔開的序列進行宣告時,這些子元素必須按照相同的順序出現在文件中。在一個完整的宣告中,子元素也必須被宣告,同時子元素也可擁有子元素。"note" 元素的完整宣告是:
<!ELEMENT note (to,from,heading,body)> <!ELEMENT to (#PCDATA)> <!ELEMENT from (#PCDATA)> <!ELEMENT heading (#PCDATA)> <!ELEMENT body (#PCDATA)>
宣告只出現一次的元素
<!ELEMENT element-name (child-name)> 例項: <!ELEMENT note (message)>
宣告最少出現一次的元素
<!ELEMENT element-name (child-name+)> 例項: <!ELEMENT note (message+)>
上面的例子中的加號(+)宣告瞭:message 子元素必須在 "note" 元素內出現至少一次。
宣告出現零次或多次的元素
<!ELEMENT element-name (child-name*)> 例項: <!ELEMENT note (message*)>
上面的例子中的星號(*)宣告瞭:子元素 message 可在 "note" 元素內出現零次或多次。
宣告出現零次或一次的元素
<!ELEMENT element-name (child-name?)> 例項: <!ELEMENT note (message?)>
上面的例子中的問號(?)宣告瞭:子元素 message 可在 "note" 元素內出現零次或一次。
宣告"非.../即..."型別的內容
例項: <!ELEMENT note (to,from,header,(message|body))>
上面的例子宣告瞭:"note" 元素必須包含 "to" 元素、"from" 元素、"header" 元素,以及非 "message" 元素即 "body" 元素。
宣告混合型的內容
例項: <!ELEMENT note (#PCDATA|to|from|header|message)*>
上面的例子宣告瞭:"note" 元素可包含出現零次或多次的 PCDATA、"to"、"from"、"header" 或者 "message"。
原文來自:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69955379/viewspace-2854360/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- XSLT 元素概述
- XML 元素概述XML
- XSLT 元素概述
- DTD
- HTML input 元素概述HTML
- XSD 空元素概述
- XSD 複合元素概述
- XSD 簡易元素概述
- XSD 僅含元素概述
- Xpath,XQuery,DTD
- 給XML檔案定義DTDXML
- 課時15.DTD文件宣告下(瞭解)
- 為什麼HTML5裡面我們不需要DTD?HTML
- No grammar constraints (DTD or XML Schema) referenced in the document.的兩種解決辦法AIXML
- 概述
- 探索 DTD 在 XML 中的作用及解析:深入理解文件型別定義XML型別
- Java概述Java
- Ocelot概述
- Servlet概述Servlet
- HBase概述
- hadoop概述Hadoop
- Promise 概述Promise
- mongodb 概述MongoDB
- EOSKeosd概述
- JVM 概述JVM
- DevOps概述dev
- OpenFeign概述
- ElasticSearch 概述Elasticsearch
- TCP 概述TCP
- JDBC概述JDBC
- Flume概述
- Android概述Android
- UML概述
- RXJS 概述JS
- (1)概述
- uoj概述
- Kafka 概述Kafka
- SparkSQL 概述SparkSQL