dtd(document type definition
),定義了
xml檔案的結構,為
xml檔案提供語法與規則。內容既可以在
xml檔案中,也可以在
xml檔案外。可以定義自己的
dtd.dtd
對於xml
是可選的內容。
為了正確的交換資料,
xml檔案需要確定的結構。
劉偉
男
乙個標籤只能包含乙個和標籤
1、內建dtd
dtd被包含在您的 xml 原始檔中,它應當通過下面的語法包裝在乙個 doctype 宣告中:
帶有dtd 的 xml 文件例項:
<?xml version="1.0"?>
]>
晴天小夏提醒
得要開會今天!
解釋如下:
!doctype note (第二行)定義此文件是note 型別的文件。
!element note (第三行)定義note 元素有四個元素:"to、from、heading,、body"
!element to (第四行)定義to 元素為 "#pcdata" 型別
!element from (第五行)定義from元素為 "#pcdata" 型別
!element heading (第六行)定義heading 元素為 "#pcdata" 型別
!element body (第七行)定義body 元素為 "#pcdata" 型別 2
、外部dtd
dtd位於 xml 原始檔的外部,那麼它應通過下面的語法被封裝在乙個 doctype 定義中:
這個 xml 文件和上面的 xml 文件相同,但是擁有乙個外部的 dtd:<?xml version="1.0"?>
晴天小夏
提醒記得要開會今天!
<
/body>
這是包含 dtd 的 "note.dtd" 檔案:
< !element to (#pcdata)>
< !element from (#pcdata)>
< !element heading (#pcdata)>
< !element body (#pcdata)>
1、元素
(
1)普通元素
例子:
書名(#pcdata)>
計算機書籍
(書名,**,簡要介紹
)>
(
2)空元素
empty
進行宣告:
元素名稱
empty>
dtd例子:
xml例子:
(3
)帶有任何內容的元素
元素名稱
any>
例子:
子元素順序
<1 要求順序:
dtdxml
《書籍列表》
《計算機書籍》
《書名》j2eedtd:
xml:
《書籍列表》
《計算機書籍》
《**》23
xml:
《書籍列表》
《計算機書籍》
《書名》j2ee
xml:
《書籍列表》
《計算機書籍》
《書名》j2ee
2、屬性
屬性宣告使用下列語法:
dtd例項
xml例項
關鍵字的使用(這部分簡答了解):
#implied:
假如您不希望強制作者包含屬性,並且您沒有預設值選項的話
#required:
假如您沒有預設值選項,但是仍然希望強制作者提交屬性的話
#fixes:
如果您希望屬性擁有固定的值,並不允許作者改變這個值 3
、實體
實體是用於定義引用普通文字或特殊字元的快捷方式的變數。
實體可在內部或外部進行宣告。
乙個內部實體宣告
語法:實體名稱
"實體的值
">
例子:
dtd例子:
例子:注釋:
乙個實體由三部分構成
:乙個和號
(&),
乙個實體名稱
,以及乙個分號
(;)。
乙個外部實體宣告
語法:實體名稱
system "uri/url">
例子:
dtd例子:
">
">xml例子:
注意:宣告的次序4
、命名空間
解決複雜的
dtd描述元素中名稱衝突問題
字首法的使用
元素名和屬性名前面加乙個標識進行區分
Linux學習三部曲 之二
新建linux分割槽以及檔案系統 今天,我們來聊聊在linux上建立分割槽和檔案系統。windows系統建立分割槽可以借助分割槽工具,那麼在linux分割槽以及檔案系統又該如何操作呢?開啟securecrt,連線到linux,輸入命令 fdisk l 可以得出下圖。兩句話的意思是說裝置dm 0和dm...
人生三部曲
人生三部曲 童年沙丁魚罐頭似的公共汽車在曬的發燙的柏油路上緩慢地爬著。我 瘦瘦小小的個子在擁擠的人群中喘不過氣來。還要多久呀?人們煩躁而沉悶的氣氛充斥著整個車廂。忽然,我看見一位打扮入時的西裝人士,正悄悄地把手伸入一位老人的口袋。我第一反應就是有小偷!於是大聲脫口而出,一車人都回頭驚悸地看著我,西裝...
XML三部曲之Schema詳解
前幾篇部落格討論了xml及dtd的用法,通過討論了解到xml是一種元標記語言,通過它可以定義新的標記語言。另外,文件定義模型為xml文件提供了規範,dtd的引入雖然解決了xml文件的規範化問題,但它檔案格式型別和xml檔案格式型別不一致,同時dtd提供的資料型別有限有時候無法滿足行業的需求,所以引入...