ZT XML輕鬆學習手冊(1)XML快速入門

2021-04-01 21:43:18 字數 4706 閱讀 1239

前言

xml越來越熱,關於xml的基礎教程網路上也隨處可見。可是一大堆的概念和術語往往讓人望而生畏,很多朋友問我:xml到底有什麼用,我們是否需要學習它?我想就我個人學習過程的心得和經驗,寫一篇比較全面的介紹文章。首先有兩點是需要肯定的: 

第一:xml肯定是未來的發展趨勢,不論是網頁設計師還是網路程式設計師,都應該及時學習和了解,等待只會讓你失去機會; 

第二:新知識肯定會有很多新概念,嘗試理解和接受,您才可能提高。不要害怕和逃避,畢竟我們還年輕。 

提綱本文共分五大部分。分別是xml快速入門,xml的概念,xml的術語,xml的實現,xml的例項分析。最後附錄介紹了xml的相關資源。作者站在普通網頁設計人員的角度,用平實生動的語言,向您講述xml的方方面面,幫助你撥開xml的神秘面紗,快速步入xml的新領域。 

第一章:xml快速入門

一. 什麼是xml? 

二. xml是新概念嗎? 

三. 使用xml有什麼好處? 

四. xml很難學嗎? 

五. xml和html的區別 

六. xml的嚴格格式 

七. 關於xml的更多 

一. 什麼是xml?

這往往是第乙個問題,也往往在第乙個問題上你就會搞不明白,因為大多的教材上這樣回答:

xml是extensible markup language的簡寫,一種擴充套件性標識語言。 這是標準的定義。那麼什麼是標誌語言,為什麼叫擴充套件性?已經讓人有些糊塗。我想我們這樣來理解會好一些:

對html你已經非常熟悉了吧,它就是一種標記語言,記得它的全稱嗎:"hypertext markup language" 超文字標記語言。明白了?同時,html裡面有很多標籤,類似,等,都是在html 

4.0裡規範和定義,而xml裡允許你自己建立這樣的標籤,所以叫做可擴充套件性。

這裡有幾個容易混淆的概念要提醒大家:

1.xml並不是標記語言。它只是用來創造標記語言(比如html)的元語言。天,又糊塗了!不要緊,你只要知道這一點:xml和html是不一樣的,它的用處途比html廣泛得多,我們將在後面仔細介紹。

2.xml並不是html的替代產品。xml不是html的公升級,它只是html的補充,為html擴充套件更多功能。我們仍將在較長的一段時間裡繼續使用html。(但值得注意的是html的公升級版本xhtml的確正在向適應xml靠攏。)

3.不能用xml來直接寫網頁。即便是包含了xml資料,依然要轉換成html格式才能在瀏覽器上顯示。

下面就是一段xml示例文件(例1),用來表示本文的資訊:

xml quick start

ajie

[email protected]

20010115

注意:1.這段**僅僅是**,讓你初步感性認識一下xml,並不能實現什麼具體應用;

2.其中類似< title>,< author>的語句就是自己建立的標記(tags),它們和html標記不一樣,例如這裡的< title>是文章標題的意思,html裡的< title>是頁面標題。

二. xml是新概念嗎? 

不是。xml**於sgml,一種比html更早的標誌語言標準。 

關於sgml,我們來簡單了解一下,你只需要有個大致概念就可以。 

sgml全稱是"standard generalized markup language"(通用標識語言標準)。看名稱就知道:它是標誌語言的標準,也就是說所有標誌語言都是依照sgml制定的,當然包括html。sgml的覆蓋面很廣,凡是有一定格式的檔案都屬於sgml,比如報告,樂譜等等,html是sgml在網路上最常見的檔案格式。因此,人們戲稱sgml是html的"媽媽"。 

而xml就是sgml的簡化版,只不過省略了其中複雜和不常用的部分。(哦,明白了!是html第二個"mother",難怪比html功能強大呢。),和sgml一樣,xml也可以應用在金融,科研等各個領域,我們這裡講的,只是xml在web方面的運用而已。 

到這裡,你應該有點明白了:xml是用來建立定義類似html的標記語言,然後再用這個標記語言來顯示資訊。 三. 使用xml有什麼好處? 

有了html,為什麼還需要用xml? 

因為現在網路應用越來越廣泛,僅僅靠html單一檔案型別來處理千變萬化的文件和資料已經力不叢心,而且html本身語法十分不嚴密,嚴重影響網路資訊傳送和共享。(想想瀏覽器相容的問題傷透多少設計師的腦細胞啊。)人們早已經開始**用什麼方法來滿足網路上各種應用的需要。使用sgml是可以的,但sgml太龐大,程式設計複雜,於是最終選擇了"**"的sgml---xml作為下一代web運用的資料傳輸和互動的工具。 

使用xml有什麼好處?來看w3c組織(xml標準制定者)的說明: 

xml使得在網路上使用sgml語言更加"簡單和直接": 簡化了定義檔案型別的過程,簡化了程式設計和處理sgml檔案的過程,簡化了在web上的傳送和共享。 

1.xml可以廣泛的運用於web的任何地方; 

2.xml可以滿足網路應用的需求; 

3.使用xml將使程式設計更加簡單; 

4.xml便於學習和建立; 

5.xml**將清晰和便於閱讀理解; 

還是抽象了些。讓我們在後面的例項教程中慢滿體會xml的強大優勢吧! 

四. xml很難學嗎?

xml非常簡單,學習容易。如果你熟悉html,你會發現它的文件和html非常相似,看同樣的示例文件(例1):

?xml version="1.0"?>

xml quick start

ajie

[email protected]

20010115

第一行是乙個xml宣告,表示文件遵循的是xml的1.0 版的規範。

第二行定義了文件裡面的第乙個元素(element),也稱為根元素: < myfile>。這個就類似html裡的< html>開頭標記。注意,這個名稱是自己隨便定義的。

<?xml version="1.0" encoding="gb2312"?>

《文章》

《標題》xml輕鬆學習手冊

信箱:

日期:

2.將下面**存為myfile.xml

<?xml version="1.0" encoding="gb2312"?>

xml輕鬆學習手冊

ajie

[email protected]

20010115

3.將它們放在同乙個目錄下,用ie5以上版本瀏覽器開啟,可以看到效果。 學習並掌握一種script,你將真正了解到xml無比的強大的功能。

五. xml和html的區別 

xml和html都來自於sgml,它們都含有標記,有著相似的語法,html和xml的最大區別在於:html是乙個定型的標記語言,它用固有的標記來描述,顯示網頁內容。比如< h1>表示首行標題,有固定的尺寸。相對的,xml則沒有固定的標記,xml不能描述網頁具體的外觀,內容,它只是描述內容的資料形式和結構。 

這是乙個質的區別:網頁將資料和顯示混在一起,而xml則將資料和顯示分開來。 

我們看上面的例子,在myfile.htm中,我們只關心頁面的顯示方式,我們可以設計不同的介面,用不同的方式來排版頁面,但資料是儲存在myfile.xml中,不需要任何改變。 

(如果你是程式設計師,你會驚訝的發現,這與模組化物件導向程式設計的思想極其相似!其實網頁何嘗不是一種程式呢?) 

正是這種區別使得xml在網路應用和資訊共享上方便,高效,可擴充套件。所以我們相信,xml做為一種先進的資料處理方法,將使網路跨越到乙個新的境界。

六. xml的嚴格格式

吸取html鬆散格式帶來的經驗教訓,xml一開始就堅持實行"良好的格式"。

我們先看html的一些語句,這些語句在html中隨處可見:

1.sample

2.< b>< i>sample< /b>< /i>

3.< td>sample< /td>

4.< font color=red>samplar< /font>

在xml文件中,上述幾種語句的語法都是錯誤的。因為:

1.所有的標記都必須要有乙個相應的結束標記;

2.所有的xml標記都必須合理巢狀;

3.所有xml標記都區分大小寫;

4.所有標記的屬性必須用""括起來;

所以上列語句在xml中正確的寫法是

1.sample

2.< b>< i>sample< /i>< /b>

3.< td>sample< /td>

4.< font color="red">samplar< /font>

另外,xml標記必須遵循下面的命名規則:

1.名字中可以包含字母、數字以及其它字母; 

2.名字不能以數字或"_" (下劃線) 開頭;

3.名字不能以字母 xml (或 xml 或 xml ..) 開頭;

4.名字中不能包含空格。

在xml文件中任何的差錯,都會得到同乙個結果:網頁不能被顯示。各瀏覽器開發商已經達成協議,對xml實行嚴格而挑剔的解析,任何細小的錯誤都會被報告。你可以將上面的myfile.xml修改一下,比如將< email>改為< email>,然後用ie5直接開啟myfile.xml,會得到乙個出錯資訊頁面:

<?xml version="1.0" encoding="gb2312"?>

xml輕鬆學習手冊

ajie

[email protected]

20010115

七. 關於xml的更多 

好了,到現在你已經知道: 

1.什麼是xml; 

2.xml,html,sgml之間的關係和區別; 

3.xml的簡單應用。 

恭喜你!你已經不再對xml一無所知,並且已經走在了網路技術的前沿。整個學習過程好象並不很難哦:) 

XML輕鬆學習手冊(2)XML概念

第二章 xml概念 導言 經過第一章的快速入門學習,你已經知道了xml是一種能夠讓你自己創造標識的語言,它可以將資料與格式從網頁中分開,它可以儲存資料和共享資料的特性使得xml無所不能。如果你希望深入學習xml,系統掌握xml的來龍去脈,那麼我們首先還是要回到xml概念的問題上來。xml exten...

XML輕鬆學習手冊(4)XML語法

第四章 xml語法 提綱 一.xml語法規則 二.元素的語法 三.注釋的語法 四.cdata的語法 五.namespaces的語法 六.entity的語法 七.dtd的語法 通過前面三章的學習,我們已經對什麼是xml,它的實現原理以及相關的術語有所了解。接下來我們就開始學習xml的語法規範,動手寫自...

spring入門學習 1 xml配置檔案載入方式

載入xml配置檔案方式 1 xmlbeanfactory 引用資源 spring 4已經廢棄 resource resource new classpathresource spring.xml beanfactory factory new xmlbeanfactory resource 3 用檔...