知道XML已經(jīng)很久了,最常見到它的地方莫過于web編程時見過的web.xml和struts中的struts-config.xml。但卻一直不了解它到底是做什么用地。有一點可以肯定,它的作用遠遠不止于此。 這兩天比較閑,在網(wǎng)上看了一些關(guān)于XML的學(xué)習(xí)資料,第一次有這樣一個東西深深的吸引了我。 研究它是因為想研究RSS,而RSS是目前最成功的XML應(yīng)用。所以,才有的沖動去了解XML。 記錄筆記如下: 背景 我對背景這個東西就跟讀新聞一樣,一廖而過。但了解一種技術(shù)或者一種語言的背景,有助于我們理解它的應(yīng)用。先了解幾個概念: SGML(Standard Generalized Markup Language),標(biāo)準(zhǔn)通用標(biāo)記語言。 XML(eXtensible Markup Language),擴展標(biāo)記語言。 HTML(Hyper Text Mark-up Language ),超文本標(biāo)記語言。 早在Web未發(fā)明之前,SGML就已經(jīng)存在了。但是SGML這種語言相當(dāng)?shù)凝嫶螅瑢W(xué)習(xí)起來很復(fù)雜(聽說的),我想,SGML中也應(yīng)該是可以任意的定義各種標(biāo)記,然后也有很多的DTD,對標(biāo)記做不同的定義。那個年代,對于這種靈活性可能一般人都很難掌握吧(猜的哈哈),于是就誕生了HTML。 我想HTML無非就是用SGML定義好每一種標(biāo)記,包括DTD也是定義好的(HTML中好像沒有DTD,我想是已經(jīng)定義好一種規(guī)范可以被瀏覽器識別了吧),通通不可以改變。這樣,由于HTML都是由一些固定的標(biāo)記組成的,數(shù)量有限,所以學(xué)習(xí)起來非常的簡單,使用起來也非常方便。 但是由于WEB的應(yīng)用越來越廣泛,HTML的缺點也逐漸的顯現(xiàn)出來。它固定的標(biāo)簽導(dǎo)致它在解決一些復(fù)雜問題的時候,很困難。介于這個弱點,于是就產(chǎn)生了XML,可擴展標(biāo)記語言。和SGML相比,XML就是一個精簡的SGML。可以想象,XML不局限于固定的標(biāo)簽,完全可以由自己來設(shè)置標(biāo)簽,再配合DTD文件對標(biāo)簽進行定義規(guī)范。XML的功能要比HTML強大得多。這樣,隨著問題空間的變大,解決問題的空間也變大了嘿。
XML與HTML比較 HTML只是WEB通過瀏覽器顯示數(shù)據(jù)的通用方法,而XML提供了一個直接處理WEB數(shù)據(jù)的通用方法。HTML著重描述WEB數(shù)據(jù)的顯示格式,(想想那些標(biāo)簽也基本上都是用于顯示格式的),而XML著重描述的是WEB頁面的內(nèi)容。 好像不是很好理解,我是這樣想的,HTML的標(biāo)簽?zāi)康脑谟谌绾伟褦?shù)據(jù)用不同的格式顯示出來。比如同樣的一個字符串,我可以把它顯示成一個Label,一個Text,或者一個Link。而XML,目的在于把這個字符串的內(nèi)容完整的顯示出來。 當(dāng)然,它也能做到把這個字符串顯示成各種格式。只需要結(jié)合一個XSL來描述。由XSL來定義XML中數(shù)據(jù)的顯示格式。這樣,使數(shù)據(jù)和表現(xiàn)形式完全的分離,這也許就是XML的魅力吧。 XML的應(yīng)用 這是我最在意的地方。記錄下有待研究。 參考網(wǎng)上的資料,有人這樣統(tǒng)計過: 1. 應(yīng)用于客戶需要與不同的數(shù)據(jù)源進行交互時。 2. 應(yīng)用于將大量運算負荷分布在客戶端,即客戶可根據(jù)自己的需求選擇和制作不同的應(yīng)用程序以處理數(shù)據(jù),而服務(wù)器只須發(fā)出同一個XML文件。 3. 應(yīng)用于將同一數(shù)據(jù)以不同的面貌展現(xiàn)給不同的用戶。 4. 應(yīng)用于網(wǎng)絡(luò)代理對所取得的信息進行編輯、增減以適應(yīng)個人用戶的需要。 另一個網(wǎng)絡(luò)資源的理解,同樣是這四個方面: 1. 當(dāng)網(wǎng)絡(luò)客戶必須在不同的數(shù)據(jù)庫之間傳遞信息時; 2. 當(dāng)需要把大部分從網(wǎng)絡(luò)服務(wù)器下載的數(shù)據(jù)在用戶端處理的時;(好像正是我需要的那個) 3. 當(dāng)相同的數(shù)據(jù)對于不同的用戶需要有不同的界面時; 4. 當(dāng)網(wǎng)絡(luò)情報供應(yīng)商要把發(fā)現(xiàn)的信息精心裁剪并發(fā)送給不同的個人用戶時。
blog.xml文件
2. 利用XSL文件來設(shè)置XML的樣式 blog.xml文件
blog.xsl文件
這都是最簡單的了。 xsl也是一個xml文檔。它有自己的語法,有待學(xué)習(xí)。 關(guān)于xml的學(xué)習(xí)還在進行中。
歡迎來訪!^.^! 本BLOG僅用于個人學(xué)習(xí)交流! 目的在于記錄個人成長. 所有文字均屬于個人理解. 如有錯誤,望多多指教!不勝感激!
Copyright © 久城