?? 0102-0400.htm
字號:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0071)http://162.105.170.55/ASPs/GetLearningArticleTemp.asp?section=0102-0400 -->
<HTML><HEAD><TITLE>XML中國論壇 - 初學(xué)進(jìn)階 - 1.2.4 XML的其它優(yōu)點(diǎn)</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<STYLE type=text/css>TABLE {
FONT-SIZE: 9pt; COLOR: black; LINE-HEIGHT: 15pt; FONT-FAMILY: "宋體"
}
.pt9 {
FONT-SIZE: 9pt; COLOR: black; LINE-HEIGHT: 15pt; FONT-FAMILY: "宋體"
}
.pt10 {
FONT-WEIGHT: 700; FONT-SIZE: 10pt; LINE-HEIGHT: 18pt; FONT-FAMILY: "宋體"
}
.TempOutline {
FONT-SIZE: 9pt; MARGIN-LEFT: 15pt; COLOR: #666666; TEXT-INDENT: -28pt; LINE-HEIGHT: 15pt; FONT-FAMILY: "宋體"; TEXT-DECORATION: none
}
.TempOutline1 {
FONT-SIZE: 9pt; MARGIN-LEFT: 24pt; COLOR: #666666; TEXT-INDENT: -36pt; LINE-HEIGHT: 15pt; FONT-FAMILY: "宋體"; TEXT-DECORATION: none
}
.Outline {
FONT-SIZE: 9pt; MARGIN-LEFT: 15pt; TEXT-INDENT: -28pt; LINE-HEIGHT: 15pt; FONT-FAMILY: "宋體"; TEXT-DECORATION: none
}
.Outline1 {
FONT-SIZE: 9pt; MARGIN-LEFT: 24pt; TEXT-INDENT: -36pt; LINE-HEIGHT: 15pt; FONT-FAMILY: "宋體"; TEXT-DECORATION: none
}
.Outline11 {
FONT-SIZE: 9pt; MARGIN-LEFT: 38pt; TEXT-INDENT: -50pt; LINE-HEIGHT: 15pt; FONT-FAMILY: "宋體"; TEXT-DECORATION: none
}
.passage0 {
FONT-SIZE: 9pt; MARGIN-LEFT: 15pt; TEXT-INDENT: -28pt; LINE-HEIGHT: 15pt; FONT-FAMILY: "宋體"; TEXT-DECORATION: none
}
.passage1 {
FONT-SIZE: 9pt; MARGIN-LEFT: 24pt; TEXT-INDENT: -36pt; LINE-HEIGHT: 15pt; FONT-FAMILY: "宋體"; TEXT-DECORATION: none
}
.passage11 {
FONT-SIZE: 9pt; MARGIN-LEFT: 38pt; TEXT-INDENT: -50pt; LINE-HEIGHT: 15pt; FONT-FAMILY: "宋體"; TEXT-DECORATION: none
}
.passage111 {
FONT-SIZE: 9pt; MARGIN-LEFT: 51pt; TEXT-INDENT: -64pt; LINE-HEIGHT: 15pt; FONT-FAMILY: "宋體"; TEXT-DECORATION: none
}
</STYLE>
<META content="Microsoft FrontPage 5.0" name=GENERATOR></HEAD>
<BODY vLink=#000000 aLink=#000000 link=#000000 leftMargin=0 topMargin=0
onload=""><!-- 以下為主體內(nèi)容 -->
<div align="center">
<center>
<TABLE width="100%" border=0 style="border-collapse: collapse" bordercolor="#111111" cellpadding="0" cellspacing="0">
<TBODY>
<TR vAlign=top>
<TD rowSpan=2> </TD>
<TD vAlign=center >
<p align="center"><IMG height=33
src="image/title_learner.gif" width=226> </TD>
<TD rowSpan=2> </TD>
</TR>
<TR vAlign=top>
<TD ><!-- 正文內(nèi)容 -->
<DIV class=pt10><B>1.2.4 XML的其它優(yōu)點(diǎn)</B></DIV>
<DIV></DIV><BR>
<DIV class=pt9>
<P>上面講到的XML的兩大優(yōu)勢是XML最突出的優(yōu)點(diǎn),除此以外,XML至少還有下面三個優(yōu)點(diǎn)。
<OL>
<LI>XML遵循嚴(yán)格的語法要求<BR><BR>前面講過,HTML的語法要求并不嚴(yán)格,瀏覽器可以顯示有文法錯誤的HTML文件。但XML就不同了,它不但要求標(biāo)記配對、嵌套,而且還要求嚴(yán)格遵守DTD的規(guī)定,比如在前面的client.xml中,你決不能在<聯(lián)系人></聯(lián)系人>這對標(biāo)記外面,再套上一層<地址></地址>標(biāo)記。<BR><BR>
<DIV align=center>
<CENTER>
<TABLE width="80%" bgColor=#ffffc0 border=0>
<TBODY>
<TR>
<TD
width="100%">“和HTML不同,XML非常非常注重準(zhǔn)確性。如果語法有絲毫差錯,分析器都會停止對它的進(jìn)一步處理,相應(yīng)地,除了錯誤提示外,你看不到任何的顯示信息。
<P>舉例來說,對于任何一個XML文件,處理指示都是必須的。而如果一個HTML文件沒有開始標(biāo)記〈HTML〉,在大多數(shù)瀏覽器中仍能通過。因?yàn)闉g覽器通常具備一個內(nèi)置的修改功能去猜測HTML文件中漏掉了什么,并試圖修改這個有誤的文件。XML分析器,無論是內(nèi)嵌于瀏覽器還是作為獨(dú)立的處理器,絕對不允許修改。就象我們編譯一個程序一樣,一個XML文件或者被判別為‘正確’而被接受,或者被判別為‘錯誤’不予運(yùn)行。這看上去可能有些武斷,不過想想XML的宗旨在于通過非標(biāo)準(zhǔn)的標(biāo)記傳遞結(jié)構(gòu)化的數(shù)據(jù),一個分析器無法象處理一個已有了一套固定DTD的HTML文件那樣猜出到底有什么,又缺什么。</P>
<P align=right>——Ken Sall”</P></TD></TR></TBODY></TABLE></CENTER></DIV>
<P>一聽說編寫XML文件時要遵循嚴(yán)格的語法要求,那些被HTML寵壞了的網(wǎng)頁制作者可能會叫苦不迭。其實(shí)仔細(xì)想想,一個具有良好語法結(jié)構(gòu)的網(wǎng)頁文件可以提供較好的可讀性和可維護(hù)性,從長遠(yuǎn)來看還是大有好處的。何況這大大減輕了瀏覽器開發(fā)人員的負(fù)擔(dān),也提高了瀏覽器的時間空間效率。再有,以后隨著XML的自動生成工具和所見即所得的編輯器的問世,XML的編寫者也就不用再操心XML的源碼是什么樣子,更不用去想XML的一些瑣碎的語法規(guī)定。當(dāng)然,這對于這類XML的開發(fā)工具提出的要求可就比較高了。</P>
<LI>XML便于不同系統(tǒng)之間信息的傳輸<BR><BR>當(dāng)今的計(jì)算機(jī)世界中,不同企業(yè)、不同部門中存在著許多不同的系統(tǒng)。操作系統(tǒng)有NT、UNIX,數(shù)據(jù)庫系統(tǒng)有SQL
Server、Oracle,...,要想在這些不同的平臺、不同的數(shù)據(jù)庫軟件之間傳輸信息,不得不使用一些特殊的軟件,非常之不便。而不同的顯示界面,從工作站、個人微機(jī)、到手機(jī),使這些信息的個性化顯示也變得很困難。<BR><BR>現(xiàn)在有了XML,各種不同的系統(tǒng)之間可以采用XML作為交流媒介。XML不但簡單易讀,而且可以標(biāo)注各種文字、圖像甚至二進(jìn)制文件,只要有XML處理工具,就可以輕松地讀取并利用這些數(shù)據(jù),使得XML成為一種非常理想的網(wǎng)際語言。<BR><BR>
<LI>XML具有較好的保值性<BR><BR>XML的保值性來自它的先驅(qū)之一——SGML語言。SGML是一套有著十幾年歷史的國際標(biāo)準(zhǔn),它最初設(shè)計(jì)的一大目標(biāo)就是要為文件提供50年以上的壽命。不要小看文件的壽命問題,想想我們是如何知道我們祖先的悠久而輝煌的歷史的。如果不是流傳至今的大量歷史文獻(xiàn),我們恐怕對“唐宋元明清”沒有一點(diǎn)概念;同樣,我們的后代也要靠我們留下的文字資料來了解我們。可是現(xiàn)在大部分資料都是電子文檔的形式了,有些人已經(jīng)不屑于把它們打印下來單獨(dú)存檔,而只留一份拷貝就覺得萬事大吉了。禍患的種子就是這樣埋下的,假定五十年以后,你的子孫面對你留下的一大堆用Word97寫的文檔,苦于沒有軟件工具能夠打開(你現(xiàn)在還能打開當(dāng)初用WordStar1.0寫的文件嗎?),那么這一段歷史豈不被抹煞了?如果沒有XML,恐怕只有兩個辦法:要不返樸歸真繼續(xù)使用紙介質(zhì),要不不辭勞苦隨著軟件的更新?lián)Q代來大規(guī)模地轉(zhuǎn)換你的文檔到最新的格式。<BR><BR>幸好,20世紀(jì)末的科技先知對這一問題給出了圓滿的解決,這就是SGML和XML的設(shè)計(jì)。它們不但能夠長期作為一個通用的標(biāo)準(zhǔn),而且很容易向其它格式的文件轉(zhuǎn)化。想留下逝去歲月的印跡嗎?XML是你明智的選擇。
</LI></OL>
<P>到現(xiàn)在為止,我們已經(jīng)詳細(xì)闡述了XML的五大優(yōu)點(diǎn)。不過,任何事物都不是完美無缺的,XML也有一些固有的缺陷,雖然這些缺陷不是不可彌補(bǔ)的,但它在XML的陽光大道上,還是投下了一些小小的陰影。</P></DIV>
<P></P>
<P></P></TD></TR></TBODY></TABLE>
</center>
</div>
<P></P>
<P>
<P></P></BODY></HTML>
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -