JavaWeb學習日記(二)

1.XML約束

概念我們編寫文檔來約束一個XML文檔的書寫規範,這稱之爲XML約束。

約束技術分類:

  • XML DTD (documnet type Definition)
  • XML Schema

一、DTD的基本概念:

document type definition 文檔類型定義

DTD文件一般和XML文件配合使用,主要是爲了約束XML文件。

XML文件引入DTD文件,這樣XML可以自定義標籤,但又受到DTD文件的約束。

如下bookstore.xml

<?xml version="1.0" encoding="gb2312" standalone="no" ?>
<bookstore>
    <book>
        <name>thinking in c++</name> 
        <author>Bruce Eckel</author>
        <price>20</price>
    </book>
</bookstore>

1.1 DTD約束語法

基本語法:

<!ELEMENT 元素名 類型>
  • 1

我們以上面的bookstore爲例,編寫如下DTD文件,bookstore.dtd:

<!ELEMENT bookstore (book+)>
<!ELEMENT book (name,author,price)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT author (#PCDATA)>
<!ELEMENT price (#PCDATA)>

PCDATA 全稱爲Parsed CDATA    解析字符數據

  • 第一行表示根元素爲bookstore,子元素爲book,後面的”+”表示子元素爲1或者多個。

  • 第二行表示學生的子元素爲書名,作者,價格
  • 書名,作者,價格下面沒有子元素了,那麼#PCDATA表示名字裏面可以放任意文本。

bookstore.xml文件l裏面引入bookstore.dtd文件,代碼如下:

<?xml version="1.0" encoding="gb2312" standalone="no" ?>
<!--引入dtd文件,約束這個xml-->
<!DOCTYPE bookstore SYSTEM "bookstore.dtd">
<bookstore>
    <book>
        <name>thinking in c++</name> 
        <author>Bruce Eckel</author>
        <price>20</price>
    </book>
</bookstore>

引入中寫的:SYSTEM,表示當前的DTD文件是本地的
如果寫的是PUBLIC,則表示引入的DTD文件是來自於網絡的.

對XML進行校驗,現在可以直接使用IDE進行智能校驗 下面是eclipse

這裏寫圖片描述

正確形式:
這裏寫圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章