XHTML1.0 認識標記語言(Markup Language)
什麼是網頁?
什麼是網頁呢?網頁指的是在網站當中透過瀏覽器所顯示的每個頁面,例如您現在所看到的內容就是在此網站當中的一個頁面或一張網頁,就好像如同書本或雜誌的每一頁般。我們可以把一個網站當成是一本完整的書或雜誌,那要怎麼做才能形成一本書或雜誌呢?當然是要有「一頁一頁」的內容來組合成。換句話說,一個網站是由多張網頁所組合成的。
一開始每張網頁都是空白的,所以我們要發揮天馬行空的想像力把這張網頁寫成;然而,該網頁需存有一定的規則,只要您遵守這些規則就能完成一張張的網頁。
網頁說穿了,其實就是由一些「標籤」與「資料」所構築而成的,我們只要利用這些標籤語法加上您的資料內容,這就是一張網頁的形成。資料內容指的是文字、圖片或影音資料等等。這些標籤或語法的知識雖然是固定的,不過您的想像是無限的,利用這些無限的可能,就可「組合」創造出您的網頁。
什麼是標記語言?
| HTML 標記語言的家族 | |
| 標記語言 | 發表時間 |
| SGML(Standard Generalized Markup Language) | 1986 年 |
| HTML(Hyper Text Markup Language) | 1989 年 |
| XML(eXtensible Markup Language) | 1998 年 |
| XHTML(eXtensible Hyper Text Markup Language) | 2000 年 |
Markup Language 我們可以把它翻譯為標記語言,而這個所謂的標記語言指的是一系列制定好的標記來對電子文件進行標記,來實現對電子文件的語義、結構、格式的定義。這些標記必須能夠、並且容易的和內容相區分與識別。標記語言它必須定義什麼樣的標記是允許的,什麼樣的標記是必須的,標記是如何與文件的內容來區分的,以及標記的含義是什麼。
它並不同於一般用來設計應用軟體的語言,而是用來製作電子文件的一種語言。「標記語言」顧名思義是由一些標記 (tags)所組合而成的,而這些標記倘若單獨存在的話是沒有意義的,它必須結合一些所謂的「資料」後才會變成有用的電子文件。先前我們曾提到網頁是由「標籤」與「資料」所構築而成,當中所說的標籤指的就是標記(tags),而資料就是想呈現出來的網頁內容。
而「有用的電子文件」相對於應用軟體而言指的是能夠解讀這份電子文件當中的標記語言與資料,然後藉著這些標記的意義對這文件做特定的處理,例如將圖片或一段文字顯示在螢幕上或者與資料庫交互作用…等等,而在網路上解讀這些東西的應用軟體就是瀏覽器。標記語言可分為兩大類:
-
特殊用途的標記語言(Specialized Markup Language)
特殊用途的標記語言是為特定的某種應用軟體或者是應用而特別制定的,例如當初為了應用在網路上的 HTML (Hyper Text Markup Language),這類的標記語言其應用範圍較小,故其本身的複雜度就會比較低。
-
一般通用的標記語言(Generalized Markup Language)
一般通用的標記語言它只有描述文件當中內容的意義與結構,它並未定義如何去「應用」這些在文件中的「資料」,簡單的說它並不是為了某單一軟體而定的。這類的語言其本身的成熟度與穩定度都相當夠,所以很多的應用軟體都能夠解讀它,這類的電子文件其可攜性當然就會比有特殊用途的標記語言還要高。例如: SGML(Standard Generalized Markup Language)。
什麼是 SGML?
SGML (Standard Generalized Markup Language,標準通用標記語言) 它是從 IBM 的 GML 演化而來的,是第一個標準化的資訊結構化技術。SGML 成為了 IBM 內部格式化和維護文件的技術。SGML 後來被擴展和修改,作為一種全面的資訊標準以適應工業範圍的廣泛應用。但是一直到 1986 年,SGML 才成為了 ISO 標準,其規範的文件為 ISO 8879 。
SGML 最主的目的是在提供一種描述電子文件的規範,也就是提供一種對文件進行結構化的規則,而當文件採用這種規則來進行結構化的處理後,該 SGML 文件就可以被廣泛地被傳遞與使用,並且有關該文件的製作、存取、應用都可以透過電腦來作最有效的處理。
SGML 之所以可以在各類應用領域的文件上通用,最主要是因為 SGML 允許使用者可以依據資料結構與形態的需求,制定出適用的文件類別定義(Document Type Definitions,簡稱為 DTD),所以在不同領域當中的文件,其包含的資料項目與形態可能差異性很大,但是只要分別定義出各自的文件類別定義,就可以被各類文件建立時所引用與遵循,以保證同一類的文件都有相似的文件結構。
SGML 是在 80 年代中期出現的,它一直保持的相當穩定,其穩定的原因是它具有豐富的特徵與靈活性。但是靈活性也相對帶來了一定程度的複雜性,它並且也限制了它在各種環境下的適應性,其中包括了 World Wide Web 。
什麼是 HTML?
| HTML 的版本與時間關係 | |
| 版本 | 時間 |
| HTML 1.0 | 1993年 1月 |
| HTML 2.0 | 1995年 2月 |
| HTML 3.0 | 1995年10月 |
| HTML 3.2 | 1996年 6月 |
| HTML 4.0 | 1997年 9月 |
| HTML 4.01 | 1999年12月 |
1989年,歐洲粒子物理實驗室(CERT)的研究員 Tim Berners-Lee 和 Anders Berglund 兩人創建了一種基於標記的語言,其目的是為了在網路上共享的文章做標記,於是 HTML 就這樣誕生了。 HTML 可以看作是 SGML 的簡化應用,並且它也是 SGML 的一個子集,它的誕生推動了資訊產業的大發展。
網頁其本身就是一種文件,並且也是網路上的一種應用範圍,所以有關於網頁的文件結構當然就可以用 SGML 來定義網頁的 DTD。 HTML 是 SGML 的一種應用,它採用 SGML 的規範來制定網頁適用的 DTD,這種特別為網頁量身訂做的標記語言就稱為 HTML(Hyper Text Markup Language,超文件標記語言) 。
HTML 最初的構想是作為一種有系統的替換與其它技術文件的一種語言,以提供那些不熟悉書寫文件的專家使用。 HTML 規定了一小套的結構和語法標籤,適合於書寫相對簡單的文件,進而解決了 SGML 複雜性的問題。除了簡化文件的結構外,還加入對超連結(hypertext) 的支援,之後也增加了多媒體的功能。
在非常短的時間內, HTML 變的廣泛受歡迎,並且超出了原來的目的。自從 HTML 開始,一些新標籤被迅速的創造出來使用在 HTML(像一個標準) 之內,並且也很快的適應於市場。這麼多的新標籤導致了文件在不同平台的兼容性問題。
什麼是 XML?
| XML 的版本與時間關係 | |
| 版本 | 時間 |
| XML 1.0 | 1998年 2月 |
| XML 1.1 | 2002年10月 |
1996年, W3C 尋找一種在 WEB 中應用 SGML 的靈活性和強大功能的方法,於是就這樣造就了1998年 2 月 XML1.0 規範的發佈。XML(eXtensible Markup Language,可擴展標記語言)具備了 SGML 的核心特性,又非常的簡潔,XML 規範的內容甚至不到 SGML 的十分之一。
雖然 SGML 的成熟度與穩定度都非常的高,但是 SGML 太過於複雜,以致於無法在網站上普及應用,而 HTML 又過於簡單與缺乏彈性而無法滿足網站在各方面的應用,所以說 XML 就是為了解決這些問題,希望 XML 一方面能夠繼承 SGML 的優點又不會太複雜,而且又能補 HTML 之不足的地方。它的文件很容易在網路上傳遞與使用,當然也需要能正確解讀文件的軟體,而附有該剖析器的瀏覽器就是其中之一。
創造它的目的為的是重新獲得 SGML 的能力與靈活性,而去除大部分複雜的東西。儘管它是一個受到限制的 SGML 形式,但它仍保留了其中大部分的功能與豐富性,也保有 SGML 的所有常用特性。在保有這些有用特性的同時,它去除了使創作和設計更多困難與花費的複雜性。
什麼是 XHTML?
| XHTML 的版本與時間關係 | |
| 版本 | 時間 |
| XHTML 1.0 | 2000年 1月 |
| XHTML 1.1 | 2001年 5月 |
| XHTML 1.1 Basic | 草稿中 |
| XHTML 2.0 | 草稿中 |
eXtensible Hyper Text Markup Language 它的簡稱為 XHTML,中文稱為可擴展超文件標記語言,是作為 XML1.0 應用而重新制定的 HTML4 版本。那什麼是 XHTML? XHTML 是一系列當前與將來的文件類別和程序模組,它並且是 HTML4 的再版與延伸, HTML4 是其子集。XHTML 這一系列的文件是基於 XML ,最終被設計來與基於 XML 的用戶代理程式一起工作。
簡單地說就是以 HTML4 為範本,然後再依 XML 的語法規範重新對 HTML 作一個新規範的制定,來產生一個新的標記語言「XHTML」,W3C 最終目標是要以 XHTML 來取代 HTML。
XHTML1.0 是 XHTML 家族的第一個文件。它是將三種 HTML4 文件類別應用到 XML1.0 之後重新形成的。其意圖是,作為一種語言,它的內容既符合 XML ,並且如果依照一些簡單的指導方針也可以被 HTML4 用戶代理程式辨別,所以開發者將它們的文件改變成為 XHTML1.0 ,會得到以下好處:
- XHTML 文件遵循 XML 。如此一來用標準的 XML 工具很容易查看、編輯和檢驗它們。
- XHTML 文件可以在現有的 HTML4 代理用戶程式中使用,也可以在新的 XHTML 用戶代理程式中使用,在後者中可以達到與前者同樣或更好的效果。
- XHTML 文件中使用的應用程式(如 script 和 applet )可以是 HTML 的文件物件模型,也可以是 XML 的文件物件模型。
- 隨著 XHTML 家族的發展,遵循 XHTML1.0 的文件更有可能運用在各種 XHTML 環境中。
XHTML 家族是網際網路發展的下一步,所以開發者現在將文件改變為 XML ,以確保他們的文件向前後兼容的同時,還能享有進入 XML 世界帶來的好處。
為什麼需要 XHTML?
上面已經提到了移植到 XHTML 的好處,一般來說,移植為 XHTML 的好處有:
- 文件開發者與用戶代理程式設計者常常用新方法、新標籤來表達他們的想法。而使用 XML 導入新標籤與新屬性更加的容易。 XHTML 家族被設計為提供擴展透過 XHTML 模組和開發新的遵從 XHTML 模組技術。在開發文件與設計新用戶代理程式時,這些模組將允許混合使用現有的和新的特色。
- 各式替代連上網際網路的方法不斷的被提出。XHTML 家族在設計時就考慮到用戶代理程式的協同工作性。透過一個新的用戶代理程式和文件協議機制、伺服器、代理程式和用戶代理程式將能夠最佳完美地傳輸文件內容。最後,開發以遵從 XHTML 的文件內容,將可能被任何以遵循 XHTML 的用戶代理程式所使用。
結語
從上述的說明中,我想各位朋友應該可以瞭解到制定 XML 與 HTML 的使用規範,兩者之間是沒有衝突的,雖然 XML 可以彌補 HTML 的缺點,但 XML 並不是來取代 HTML ,這最主要是因為 XML 是著重在資料的描述與結構,而 HTML 足著重在資料的顯示,所以若要將 XML 文件透過瀏覽器來顯示出像 HTML 那樣好看的網頁,必須在 XML 文件中另外再指定排版的樣式,但這對傳統 HTML 的使用者來說是增加設計網頁的負擔,因為必須設計 XML 文件與排版樣式文件,並且世界上現存難以算計 HTML 格式的網頁,假如想要把它轉換成 XML 那更是不可能,所以 XHTML 就是在這種包容 HTML 過去並且符合 XML 光明的一面而被制定出來。