1. 關(guān)于xml格式定義
xml格式定義分為兩部分:
- 申明
- 內(nèi)容
大概格式定義如下:
<?xml version="1.0" encoding="UTF-8" ?>
<root>
<ch>
<ch1>子節(jié)點1</ch1>
<ch2>子節(jié)點2</ch2>
<ch3>子節(jié)點3</ch3>
</ch>
</root>
-
<?xml表示這是一個xml文檔 -
version="1.0"表示這里 遵循xml 1.0版本規(guī)范 -
encoding="UTF-8 "表示使用編碼規(guī)范,這里指定了讀取規(guī)范.
說明:
如果我們使用非智能IDE工具編寫xml文檔,則需要注意保存的時候的編碼格式,例如我們常常使用CTRL+S保存文檔,這里我們不指定編碼系統(tǒng)采用默認編碼格式保存,一般為ANSI編碼.則我們指定xml文檔編碼格式為UTF-8這樣中文就會產(chǎn)生亂碼。所以我們應(yīng)該使用另存為手動指定編碼與文檔申明一致的編碼格式。
如圖:

save.png
2. xml約束文檔
xml可以引用*.dtd文件來約束xml文檔節(jié)點。
dtd定義如下:
<!ELEMENT root (ch+)>
<!ELEMENT ch (ch1,ch2,ch3)>
<!ELEMENT ch1 (#PCDATA)>
<!ELEMENT ch2 (#PCDATA)>
<!ELEMENT ch3 (#PCDATA)>
xml做如下調(diào)整使用戶編寫xml文檔受該規(guī)范約束.
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE root SYSTEM "test.dtd">
<root>
<ch>
<ch1>子節(jié)點1</ch1>
<ch2>子節(jié)點2</ch2>
<ch3>子節(jié)點3</ch3>
</ch>
</root>
這樣編碼上述xml文檔的時候自然就會被之前定義的test.dtd約束了。
否則xml文檔不能被正確解釋。比如在智能IDE中會提示相應(yīng)的非法內(nèi)容。
經(jīng)測試,在IDEA中 我們在*.dtd中定義了多個節(jié)點,那么在*.xml中定義超出[dtd文件]定義節(jié)點個數(shù)或者少于定義節(jié)點都會提示錯誤。如圖:

dtd.png

xmlError.png
---剛知道這個xml約束文檔,學習了,然后記錄下,以后遇到了有印象。有錯誤請大家指出。