课外阅读(XHTML和XML简介)
課外閱讀
一、XHTML簡介
HTML從出現發展到今天,仍有些缺陷和不足。HTML的三個主要缺點如下。
(1)太簡單。不能適應現在越來越多的網絡設備和應用的需要,比如手機、PDA、信息家電都不能直接顯示HTML;
(2)不規范。由于HTML代碼的不規范、臃腫,瀏覽器需要足夠智能和龐大才能夠正確顯示HTML;
(3)數據與表現混雜。當頁面要改變顯示時,就必須重新制作HTML。
因此HTML需要發展才能解決這些問題,于是W3C又制定了XHTML,XHTML是HTML向XML過渡的一個橋梁。
XHTML(eXtensible HyperText Markup Language,可擴展超文本標記語言)是一種標記語言,表現方式與超文本標記語言(HTML)類似,不過語法上更加嚴格。從繼承關系上講,HTML是一種基于標準通用標記語言(SGML)的應用,是一種非常靈活的標記語言,而XHTML則基于可擴展標記語言(XML),XML是SGML的一個子集。HTML是一種基本的WEB網頁設計語言,XHTML是一個基于XML的標記語言,看起來與HTML有些相象,只有一些小的但重要的區別,XHTML就是一個扮演著類似HTML的角色的XML,所以,本質上說,XHTML是一個過渡技術,結合了部分XML的強大功能及大多數HTML的簡單特性。
2000年底,國際W3C組織公布發行了XHTML 1.0版本。XHTML 1.0是一種在HTML 4.0基礎上優化和改進的的新語言,目的是基于XML應用開發。XHTML是一種增強了的HTML,是更嚴謹更純凈的 HTML 版本。HTML語法要求比較松散,這樣對網頁編寫者來說比較方便,但對于機器來說,語言的語法越松散,處理起來就越困難,對于傳統的計算機來說,還有能力兼容松散語法,但對于許多其他設備,比如手機,難度就比較大。因此產生了由DTD定義規則,語法要求更加嚴格的XHTML。
大部分常見的瀏覽器都可以正確地解析XHTML,即使老一點的瀏覽器,XHTML作為HTML的一個子集,許多也可以解析。也就是說,幾乎所有的網頁瀏覽器在正確解析HTML的同時,可兼容XHTML。當然,從HTML完全轉移到XHTML,還需要一個過程。
跟CSS結合后,XHTML能發揮真正的威力;實現樣式跟內容的分離的同時,又能有機地組合網頁代碼,在另外的單獨文件中,還可以混合各種XML應用。
從HTML到XHTML過渡的變化比較小,主要是為了適應XML。最大的變化在于文檔必須是良構的,所有標簽必須閉合,也就是說開始標簽要有相應的結束標簽。另外,XHTML中所有的標簽必須小寫。而按照HTML 2.0以來的傳統,很多人都是將標簽大寫,這點兩者的差異顯著。在XHTML中,所有的參數值,包括數字,必須用雙引號括起來(而在HTML中,引號不是必須的,當內容只是數字、字母及其它允許的特殊字符時,可以不用引號)。所有元素,包括空元素,比如img、br等,也都必須閉合,實現的方式是在開始標簽末尾加入斜扛。
在使用XHTML時需要注意以下幾點。
1.所有的標記都必須要有一個相應的結束標記
以前在HTML中,可以寫許多單標簽,例如寫<li>而不一定寫對應的</li>來關閉。但在XHTML中這是不合法的。XHTML要求有嚴謹的結構,所有標簽必須關閉。如果是單獨不成對的標簽,在標簽最后加一個“/”來關閉它。
例如:
<img src ="image/scenery.jpg" alt="風景" width ="360" height ="200"/>
2.所有標簽的元素和屬性的名字都必須使用小寫
與HTML不一樣,XHTML對大小寫是敏感的,<title>和<TITLE>是不同的標簽。XHTML要求所有的標簽和屬性的名字都必須使用小寫。例如,<BODY>必須寫成<body>。大小寫夾雜也是不被認可的。
3.所有的XML標記都必須合理嵌套
同樣因為XHTML要求有嚴謹的結構,因此所有的嵌套都必須按順序,以前我們這樣寫的代碼:
<p><b></p></b>
必須修改為:<p><b></b></p>
就是說,一層一層的嵌套必須是嚴格對稱的。
4.所有的屬性必須用引號""括起來
在HTML中,可以不需要給屬性值加引號,但是在XHTML中,它們必須被加引號。例如:
<img src =image/scenery.jpg alt=風景 width=360 height =200>
必須修改為
<img src ="image/scenery.jpg" alt="風景" width ="360" height ="200"/>
5.把所有特殊符號用編碼表示
任何小于號(<),不是標簽的一部分,都必須被編碼為<。
任何大于號(>),不是標簽的一部分,都必須被編碼為>。
任何與號(&),不是實體的一部分的,都必須被編碼為&。
注意:以上字符之間無空格。
6.給所有屬性賦一個值
XHTML規定所有屬性都必須有一個值,沒有值就重復本身。
例如:
<input type="checkbox" name="愛好" checked>
必須修改為
<input type="checkbox" name="愛好" checked="checked"/>
7.不要在注釋內容中使“--”
“--”只能發生在XHTML注釋的開頭和結束,也就是說,在內容中它們不再有效。例如下面的代碼是無效的:
<!--這里是注釋-----------這里是注釋-->
用等號或者空格替換內部的虛線。
<!--這里是注釋========這里是注釋-->
以上這些規范有的看上去比較奇怪,但這一切都是為了使我們的代碼有一個統一、唯一的標準,便于以后的數據再利用。
8.圖片必須有說明文字
每個圖片標簽都必須有alt說明文字。
<img src ="image/scenery.jpg" alt="風景" title="風景" width ="360" height ="200"/>。為了兼容火狐和IE瀏覽器,對于圖片標簽,盡量采用 alt和title雙標簽,單純的alt標簽在火狐下沒有圖片說明。
二、XML簡介
XML(Extensible Markup Language,可擴展標記語言),用于標記電子文件使其成為結構性的標記語言,可以用來標記數據、定義數據類型,是一種允許用戶對自己的標記語言進行定義的源語言。XML 提供統一的方法來描述和交換獨立于應用程序或供應商的結構化數據。
XML并非像HTML那樣,提供了一組事先已經定義好了的標簽,而是提供了一個標準,利用這個標準,可以根據實際需要定義自己的新的標記語言,并為這些標記語言規定它特有的一套標簽。準確的說,XML是一種元標記語言,它允許你根據它所提供的規則,制定各種各樣的標記語言。這也正是XML語言制定之初的目標所在。XML的最重要之處在于其信息處于文檔中,而顯示指令在其他位置 。即內容和顯示是相互對立的。
XML與MySQL、Oracle和SQL Server等數據庫不同,這些數據庫提供了更強有力的數據存儲和分析能力,例如數據排序、查找、修改、刪除等;XML僅僅存儲數據。事實上XML與其他數據表現形式最大的不同是:它極其簡單。這是一個優點,正是這點使XML與眾不同。
下面通過一個例子來理解XML,我們定義一個新的標記語言,叫做FCLML(F_companys Client List Markup Language)——F公司的客戶列表標記語言。這個語言應該定義一些標簽來代表可聯系的客戶和有關他們的信息。這組標簽很簡單,它們的優點是代表了一定的語義。與HTML相比,下面這一段代碼顯然更加清晰易讀:
<聯系人列表>
<聯系人>
<姓名>張三</姓名>
<ID>00101</ID>
<公司>清華大學出版社</公司>
<email>zhangsan@163.com</email>
<電話>(010)62345678</電話>
<地址>清華大學學研大廈 A 座</地址>
<郵編>100084</郵編>
</聯系人>
<聯系人>
<姓名>李斯</姓名>
<ID>00102</ID>
<公司>清華大學出版社</公司>
<email>lisi@163.com</email>
<電話>(010)62345678</電話>
<地址>清華大學學研大廈 A 座</地址>
<郵編>100084</郵編>
</聯系人>
</聯系人列表>
上面代碼是一個簡單的XML文件。看上去它和HTML非常相似,但這里的標簽代表的不再是顯示格式,而是對于客戶信息數據的語義解釋。
XML與HTML的區別是:XML的核心是數據,其重點是數據的內容。而HTML 被設計用來顯示數據,其重點是數據的顯示。不是所有的HTML標記都需要成對出現,XML則要求所有的標記必須成對出現;HTML標記不區分大小寫,XML則大小敏感,即區分大小寫。
XML文檔使用的是自描述的和簡單的語法,一個XML文檔最基本的構成包括:聲明,處理指令(可選)和元素。例如下面的book.xml
<?xml version="1.0" encoding="UTF-8"?>
<bookstore>
<book publicationdate="2012年1月" ISBN="978-7-302-27526-8">
???? <bookname>Java程序設計與項目實訓教程</bookname>
<author>張志鋒</author>
<price>43元</price>
?? </book>
?? <book publicationdate="2013年5月" ISBN="978-7-302-31945-0">
???? <bookname>Web框架技術(Struts2+Hibernate+Spring3)教程</bookname>
<author>張志鋒</author>
<price>59</price>
?? </book>
<book publicationdate="2013年5月" ISBN="978-7-302-31705-0">
????????<bookname>Java Web技術整合應用與項目實戰(JSP+ServletStruts2+Hibernate+Spring3)教程</bookname>
<author>張志鋒</author>
<price>98</price>
?? </book>
</bookstore>
1.聲明
在所有XML文檔的第一行都有一個XML聲明。這個聲明表示該文檔是一個XML文檔,它遵循的是哪個XML版本的規范。
2.注釋
<!--注釋內容-->
3.元素
所有的XML元素必須合理包含,且所有的XML文檔必須有一個根元素。XML元素的屬性以“名字/值”成對的出現。
其格式如下:
<元素 屬性名1="值1" …>數據內容</元素>
XML元素的命名規則如下。
(1)元素的名稱可以包含字母、數字和其他字符。
(2)元素的名稱不能以數字或者標點符號開頭。
(3)元素的名稱不能以XML開頭。
(4)元素的名稱不能包含空格。
使用XML元素以及屬性注意事項。
(1)任何起始標簽都必須有一個結束標簽。
(2)可以采用另一種簡化語法在一個標簽中同時表示起始和結束標簽。這種語法是在大于符號之前緊跟一個斜線(/),例如<tag/ >。XML解析器會將其翻譯成<tag></tag>。
(3)標簽必須按合適的順序進行嵌套,所以結束標簽必須按鏡像順序匹配起始標簽。這好比是將起始和結束標簽看作是數學中的左右括號:在沒有關閉所有的內部括號之前,是不能關閉外面的括號的。
(4)所有的屬性都必須有值。
(5)所有的屬性都必須在值的周圍加上雙引號。
元素是XML文檔的靈魂,它構成了文檔的主要內容。XML元素是由標記來定義的,表明XML的目的是標識文檔中的元素。
XML是將數據和格式分離的。XML文檔本身不知道如何來顯示數據,必須有輔助文件來幫助實現。XML中用來設定顯示風格樣式的文件類型有如下幾種:
1)XSL
XSL全稱為eXtensible Stylesheet Language(可擴展樣式表語言),是用來設計XML文檔顯示樣式的主要文件類型。
XSL是基于XML的語言,用于創建樣式表。XSL創建的樣式表能夠將XML文檔轉換成其他的文檔,比如HTML文檔,這樣就可以在瀏覽器上顯示了。在執行轉換之前,首先要創建一個XSL樣式表,以定義如何進行轉換。
2)CSS
? CSS大家很熟悉了,全稱是Cascading Style Sheets(層疊樣式表),是目前用來在瀏覽器上顯示XML文檔的主要方法。
?
總結
以上是生活随笔為你收集整理的课外阅读(XHTML和XML简介)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Adobe DreamweaverCS4
- 下一篇: 计算机应用领域的CIMS,计算机的应用领