国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

從HTML到XML

2019-11-18 12:47:56
字體:
供稿:網(wǎng)友

  xml(eXtensible Markup Language,可擴(kuò)展標(biāo)記語言),是當(dāng)前最熱門的網(wǎng)絡(luò)技術(shù)之一,被稱為“第二代Web語言”、“下一代網(wǎng)絡(luò)應(yīng)用的基石”。自它被提出以來,幾乎得到了業(yè)界所有大公司的支持,絲毫不遜于當(dāng)年Html被提出時的熱度。所以,趁現(xiàn)在XML還未普及的時候,趕緊搶先學(xué)學(xué),以保住將來的飯碗。
  
  HTML的缺點
  談XML,不得不先說說“第一代的Web語言”——HTML。HTML老矣,已經(jīng)快被淘汰了(夸張了一點,不過HTML 4.0后就沒有了,取而代之的是依據(jù)XML定義的XHTML)。可憐我們這些人,好不輕易剛剛能夠湊合著會使用HTML了,卻又不得不被迫丟棄。為什么呢?HTML對帶動這些年來WWW的蓬勃發(fā)展,可謂功不可沒。想要在Internet上作點事情,幾乎無HTML不行。但是HTML有一個致命的缺點,就是:只適合于人與計算機(jī)的交流,不適合計算機(jī)與計算機(jī)的交流。
  
  大家都知道,HTML是通過一大堆的標(biāo)記來定義文檔內(nèi)容以什么樣的形式顯現(xiàn)在我們面前,也即,HTML是一種“顯示描述”語言,它僅僅描述了Web瀏覽器應(yīng)該如何在頁面上布置文字、圖形等,并沒有對Internet上最重要的東西——信息的本身含義進(jìn)行描述。這些通過HTML表現(xiàn)出來的文字、圖形內(nèi)容很輕易被人理解,而要計算機(jī)去理解這些標(biāo)記內(nèi)的文字的含義,就很困難了。
  
  舉個例子來說,我們設(shè)計一個程序,它可以自動地到各大網(wǎng)上商場去將最新的價目抓回來。但問題是,每個網(wǎng)上商場可能在網(wǎng)頁中寫商品名稱和價格時,都有他們自己的一套寫法,如:甲用〈B〉價格〈/B〉,而乙用〈H〉價格〈/H〉,還有更為復(fù)雜的表格。那么我們的程序怎樣才知道,哪種標(biāo)記里面的東西才是要抓的價格信息呢?再比如:在HTML里,〈B〉A(chǔ)pple〈B/〉只代表了Apple這個單詞在Web瀏覽器里用粗體來表現(xiàn),并沒有指出Apple代表什么,是蘋果?是蘋果計算機(jī)公司?還是其它什么?這造成了HTML不能揭示文件中信息的含義。
  
  另外,HTML的另一個問題就是它的標(biāo)記的集合是固定的,用戶不能增加自己的有意義的標(biāo)記。而且各大瀏覽器的規(guī)格不盡相同,要使我們用HTML做的網(wǎng)頁能夠被所有瀏覽器正常顯示,我們只能夠使用W3C給我們定義好了的標(biāo)記來創(chuàng)建網(wǎng)頁。
  
  在當(dāng)今的網(wǎng)絡(luò)世界里,隨著電子商務(wù)的蓬勃發(fā)展和基于Web的應(yīng)用日益廣泛,大量的信息需要被快速地處理。實際上,在Internet上的大部分信息,在最初都是被存放在結(jié)構(gòu)良好的數(shù)據(jù)庫里面,信息按照它的意義被存放在相應(yīng)的字段里,比如:員工檔案,名稱、性別、部門等。對于“張三”這個數(shù)據(jù),計算機(jī)能夠根據(jù)它所存放的位置,知道它代表一個員工的姓名。但是,一旦這些數(shù)據(jù)被調(diào)出來,經(jīng)過CGI、aspjspphp等轉(zhuǎn)換成HTML后,原本有意義的數(shù)據(jù)就變成了一些無特定含義的HTML標(biāo)記的組合。用戶必須通過自己的“頭腦”才能解析這些數(shù)據(jù),進(jìn)而“手動”將它們進(jìn)行記錄、處理,顯然處理信息的速度會很慢。假如我們能夠?qū)⒆畛醣4嬖跀?shù)據(jù)庫中的原始結(jié)構(gòu)的數(shù)據(jù)在計算機(jī)之間傳遞,那么肯定會加快信息處理的速度。顯然利用HTML辦不到,并且,由于計算機(jī)體系、操作系統(tǒng)以及所使用的數(shù)據(jù)庫不同,不同的計算機(jī)之間要想互相理解對方的數(shù)據(jù)庫格式是相當(dāng)困難且非常麻煩的,為了使各種不同的計算機(jī)之間能夠互相交換信息,似乎HTML又必不可少。怎樣來解決這個難題呢?
  
  迎接XML
  使用XML可以解決上述的難題。W3C對XML作了如下描述:“XML描述了一類被稱為XML文檔的數(shù)據(jù)對象,并部分描述了處理它們的計算機(jī)程序的行為。XML是SGML的一個應(yīng)用實例或一種受限形式。從結(jié)構(gòu)上說,XML文檔遵從SGML文檔標(biāo)準(zhǔn)。”同HTML一樣,XML也是一種基于文本的標(biāo)記語言,都是從SGML(Standard Generalize Markup Language,標(biāo)準(zhǔn)通用標(biāo)記語言,是一種老的標(biāo)記語言,最初用于出版行業(yè),非常復(fù)雜,依據(jù)SGML開發(fā)的應(yīng)用非常昂貴,只在少數(shù)大公司和政府部門有應(yīng)用)發(fā)展而來的,XML保留了SGML 80%的功能,降低了20%的復(fù)雜程度,這樣使得開發(fā)有關(guān)XML的應(yīng)用變得很便宜,使XML能夠進(jìn)入“平常百姓家”。
  
  提示:HTML只適合于人與計算機(jī)的交流,不適合計算機(jī)與計算機(jī)的交流。
  XML與HTML的不同在于:XML可以讓我們根據(jù)我們要表現(xiàn)的文檔,自由地定義標(biāo)記來表現(xiàn)具有實際意義的文檔內(nèi)容,比如:我們可以定義〈文檔名稱〉〈/文檔名稱〉這樣具有實際意義的標(biāo)記(可以用中文)。在XML中,我們只需要注重文檔的內(nèi)容,而文檔的表現(xiàn)形式則交給CSS(層疊樣式表)和XSL(可擴(kuò)展樣式語言)來完成,假如XML文件只用于計算機(jī)與計算機(jī)之間交流信息,僅僅需要一個XML文件即可,假如要將XML文件中的信息以某種形式顯示出來,如通過瀏覽器顯示,則可引用一個樣式表文件來定義瀏覽器怎樣來顯示XML文件中信息。而且XML不像HTML那樣具有固定的標(biāo)記集合,它實際上是一種定義語言的語言,也就是說使用XML的用戶可以定義無窮的標(biāo)記來描述文檔中的任何數(shù)據(jù)元素,突破了HTML固定標(biāo)記集合的約束,將文檔的內(nèi)容組織成豐富復(fù)雜的完整的信息體系。XML主要有三個要素:Schema(模式)、XSL(eXtensible Stylesheet Language可擴(kuò)展樣式語言)和XLL(eXtensible Link Language可擴(kuò)展鏈接語言)。Schema規(guī)定了XML文檔的邏輯結(jié)構(gòu),定義了XML文檔中的元素、元素的屬性以及元素和元素的屬性之間的關(guān)系,它能夠幫助XML的解析器校驗XML文檔標(biāo)記是否合法;XSL是用來規(guī)定XML文檔表現(xiàn)形式的語言,同CSS類似;XLL則進(jìn)一步地擴(kuò)展了當(dāng)前Web上已有的簡單鏈接。
  
  XML是一種定義語言的語言,現(xiàn)在已經(jīng)有幾個以XML規(guī)范為主所創(chuàng)建的標(biāo)記語言,如:Chemical Markup Language(CML:定義怎樣描述化學(xué)分子式的結(jié)構(gòu),將它顯示在網(wǎng)頁上)、Mathematical Markup Language(MathML:將復(fù)雜的數(shù)學(xué)公式以網(wǎng)頁的形式顯示在瀏覽器中)、Synchronized Multimedia Integration Language(SMIL:如何將多媒體信息展現(xiàn)在WWW中)。
  
  XML文件的解析器(一種檢查XML文件是否有結(jié)構(gòu)上的錯誤,將XML文件中的標(biāo)記剝離,讀出正確信息的工具)大多數(shù)是使用java語言寫成的,這樣,只要計算機(jī)支持Java虛擬機(jī),都可以支持XML(幾乎所有的計算機(jī)都支持Java虛擬機(jī))。所以,即使是異構(gòu)系統(tǒng),也不用擔(dān)心讀不懂對方的資料,大家都用XML文件作為傳送資料的介質(zhì)即可,因為只要對方計算機(jī)上有合適的XML解析器,就可以正確地讀取信息。現(xiàn)在,幾大數(shù)據(jù)庫廠商的數(shù)據(jù)庫產(chǎn)品,如:Oracle 8i、Informix、IBM DB2等都開始支持XML,輸入數(shù)據(jù)庫的數(shù)據(jù)可以輕易地轉(zhuǎn)化為XML,甚至可以直接以XML的形式輸入數(shù)據(jù)。有預(yù)言稱:將來的電子文檔必將是XML的天下。
  
  提示:XML保留了SGML 80%的功能,降低了20%的復(fù)雜程度,這樣使得開發(fā)有關(guān)XML的應(yīng)用變得很便宜,使XML能夠進(jìn)入“平常百姓家”。
  學(xué)習(xí)XML并不困難,因為XML的規(guī)范很簡潔,整個標(biāo)準(zhǔn)打印出來也只有幾十頁,而且XML的寫法和HTML類似,都是把標(biāo)記用〈 〉符號括起來。更加方便的是,我們能夠使用中文創(chuàng)建XML標(biāo)記,比如,我們能夠創(chuàng)建〈價格〉...〈/價格〉這樣的標(biāo)記,在此標(biāo)記內(nèi)的內(nèi)容,它的含義就是某件東西的價格。想象一下,假如各大網(wǎng)上商場都用這樣的XML標(biāo)記來說明他們網(wǎng)頁中文字的含義,那么我們就可以一個自動化的軟件去抓取我們感愛好的東西,比如:我們想了解以下有關(guān)XML書籍的信息,這個軟件就自動去抓取各個網(wǎng)頁中〈XML書籍〉...〈/XML書籍〉標(biāo)記內(nèi)的字段,這該是多么方便。
  
  XML具有卓越的性能,它具有四大特點:優(yōu)良的數(shù)據(jù)存儲格式、可擴(kuò)展性、高度結(jié)構(gòu)化以及方便的網(wǎng)絡(luò)傳輸。因為XML能針對特定用戶的應(yīng)用定義自己的標(biāo)記,這就使XML能夠在多種行業(yè)的信息交換中一顯身手,根據(jù)不同行業(yè)來提供具有各自特色的解決方案。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 得荣县| 澄江县| 贵德县| 郎溪县| 三门峡市| 耒阳市| 绍兴县| 青浦区| 开远市| 威远县| 赤峰市| 内江市| 安顺市| 县级市| 巫溪县| 监利县| 池州市| 溧阳市| 甘南县| 霍州市| 柞水县| 泰州市| 叙永县| 师宗县| 武清区| 涞源县| 浠水县| 祁东县| 邹城市| 宁乡县| 金坛市| 米脂县| 保德县| 手机| 镇安县| 太仓市| 武城县| 沂源县| 平昌县| 莎车县| 崇文区|