跳到主要內容

XML

可擴展標記語言英語eXtensible Markup Language,簡稱:XML),是一種標記語言。標記指計算機所能理解的信息符號,通過此種標記,計算機之間可以處理包含各種信息的文章等。如何定義這些標記,既可以選擇國際通用的標記語言,比如HTML,也可以使用像XML這樣由相關人士自由決定的標記語言,這就是語言的可擴展性。XML是從標準通用標記語言(SGML)中簡化修改出來的。它主要用到的有可擴展標記語言、可擴展樣式語言(XSL)、XBRLXPath等。

目錄

歷史

XML是從1995年開始有其雛形,並向W3C全球資訊網聯盟)提案,而在1998二月發佈為W3C的標準(XML1.0)。XML的前身是SGMLThe Standard Generalized Markup Language),是自IBM從1960年代就開始發展的GMLGeneralized Markup Language)標準化後的名稱。
GML的重要概念:
  • 文件中能夠明確的將標示與內容分開
  • 所有文件的標示使用方法均一致
1978年,ANSI將GML加以整理規範,發佈成為SGML,1986年起為ISO所採用(ISO 8879),並且被廣泛地運用在各種大型的文件計劃中,但是SGML是一種非常嚴謹的文件描述法,導致過於龐大複雜(標準手冊就有500多頁),難以理解和學習,進而影響其推廣與應用。
同時W3C也發現到HTML的問題:
  • 不能解決所有解釋資料的問題 - 像是影音檔或化學公式、音樂符號等其他形態的內容。
  • 效能問題 - 需要下載整份文件,才能開始對文件做搜尋。
  • 擴充性、彈性、易讀性均不佳。
為瞭解決以上問題,專家們使用SGML精簡製作,並依照HTML的發展經驗,產生出一套使用上規則嚴謹,但是簡單的描述資料語言:XML。 XML是在一個這樣的背景下誕生的——為了有一個更中立的方式,讓消費端自行決定要如何消化、呈現從服務端所提供的資訊。
XML被廣泛用來作為跨平台之間交互數據的形式,主要針對數據的內容,通過不同的格式化描述手段(XSLT,CSS等)可以完成最終的形式表達(生成對應的HTML,PDF或者其他的文件格式)。

用途

XML設計用來傳送及攜帶數據信息,不用來表現或展示數據,HTML語言則用來表現數據,所以XML用途的焦點是它說明數據是什麼,以及攜帶數據信息。
  • 豐富文件(Rich Documents)- 自定文件描述並使其更豐富
    • 屬於文件為主的XML技術應用
    • 標記是用來定義一份資料應該如何呈現
  • 元數據(Metadata)- 描述其它文件或網路資訊
    • 屬於資料為主的XML技術應用
    • 標記是用來說明一份資料的意義
  • 配置文檔(Configuration Files)- 描述軟體設定的參數

XML定義結構、存儲信息、傳送信息。下例為比爾發送給賈伯斯的便條,存儲為XML。
<小紙條>
    <收件人>賈伯斯>
    <發件人>比爾>
    <主題>問候>
    <具體內容>嗨,過些年去找你。>
>
這XML文檔僅是純粹的信息標籤,這些標籤意義的展開依賴於應用它的程序。

結構

每個XML文檔都由XML序言開始,在前面的代碼中的第一行便是XML序言,。這一行代碼會告訴解析器和瀏覽器,這個文件應該按照前面討論過的XML規則進行解析。第二行代碼,< books>,則是文檔元素(document element),它是文件中最外面的標籤(我們認為元素(element)是起始標籤和結束標籤之間的內容)。所有其他的標籤必須包含在這個標籤之內來 組成一個有效的XML文件。XML文件的第二行並不一定要包含文檔元素;如果有註釋或者其他內容,文檔元素可以遲些出現。
範例文件中的第三行代碼是註釋,你會發現它與HTML中使用的註釋風格是一樣的。這是XML從SGML中繼承的語法元素之一。
頁面再往下的一些地方,可以發現標籤裡有一些特殊的語法。代碼用於表示無需進行解析的文本,允許諸如大於號和小於號之類的特殊字元包含在文本中,而無需擔心破壞XML的語法。文本必須出現 在之間才能合適地避免被解析。這樣的文本稱為Character Data Section,簡稱CData Section。
下面的一行就是在第二本書的定義之前的:

雖然它看上去很像XML序言,但實際上是一種稱為處理指令(processing instruction)的不同類型的語法。處理指令(以下簡稱PI)的目的是為了給處理頁面的程序(例如XML解析器)提供額外的信息。PI通常情況下 是沒有固定格式的,唯一的要求是緊隨第一個問號必須至少有一個字母。在此之後,PI可以包含除了小於號和大於號之外的任何字元串序列。
最常見的PI是用來指定XML文件的樣式表:
這個PI一般會直接放在XML序言之後,通常由Web瀏覽器使用,來將XML數據以特殊的樣式顯示出來。
XML的結構有一個缺陷,那就是不支持分幀(framing)。當多條XML消息在TCP上傳輸的時候,無法基於XML協議來確定一條XML消息是否已經結束。

留言

這個網誌中的熱門文章

Effortless English - MP3 Free Download ( 167 )

Effortless English - MP3 Free Download ( 167 ) You can download here free AJ Hoge's podcasts, upload them to your mp3 player and improve your English listening at least 30 minutes everyday. To download mp3 click right button of your mouse and select "Save as". Click here to go to the official Effortless English website! General: Power_English_Update.mp3 Models_Etc.mp3 Audio_Twitter_Tweets.mp3 AJ_Update.mp3 Hitch_1_Commentary.mp3 Hitch_1.mp3 Hitch_1_MS-POV.mp3 Hitch_1_MS.mp3 Hitch_1_Vocab.mp3 English_Mastery_Formula.mp3 New_English_Club.mp3 Learn_English_Naturally.mp3 Back_Home.mp3 The_Best_Investment.mp3 Seminar_In_Bangkok_Jan25.mp3 New_Year_Resolution.mp3 Subconscious_Learning.mp3 Intensely.mp3 Super_Fast.mp3 English_Learning_Psychology.mp3 English_Club_2.mp3 Your_First_Lesson.mp3 Business_English_For_New_Business.mp3 Learn_English_Conversation.mp3 Learn_English_Grammar.mp3 Business_vs_Self-Employment.mp3 Learn_Business_English_Eff...

如何將SRT亂碼轉換成繁體字幕

avi格式的電影常常需要搭配srt格式的檔案來顯示字幕,最常見的字幕有英文、簡體中文及繁體中文的格式,不過偶爾會發現出現的字幕是看不懂的文字。若不是翻譯品質的問題,別急著把字幕砍掉,透過幾個小步驟即可轉換為能夠正確顯示的字幕。 1. 打開Word2007,點選"開啟舊檔",將右下角的下拉選單選擇"所有檔案",即可看到.srt檔案。 2. 點選開啟之後,會出現一個選取文字編碼的對話框,選擇"其它編碼方式"中的" 簡體中文GB2312 "語系,預覽框即會出現正確的簡體文字。 3. 選擇工具列上的"校閱">"簡轉繁"功能,將簡體中文轉換為繁體中文。 4. 按Ctrl+A全選、再按Ctrl+C複製所有內容;關閉Word且不要存檔。此時會出現對話框詢問是否要保留複製的文字,按下"是"後離開Word。 5.將剛才的.srt檔案用記事本開啟,將所有的內容文字刪除,再按Ctrl+V將剛剛複製的內容貼上,覆蓋,存檔並關閉就OK了。 另一個快速將亂碼改為簡體中文的方法: 1. 將srt檔案用IE開啟 2. 開啟出來的畫面顯示出來的也是亂碼,接著按右鍵選擇"編碼",選取"簡體中文(GB2312)"的選項,會出現正確的簡體文字。 3.將網頁上的文字複製下來,再用記事本開啟.srt檔案,將原有的亂碼內容刪掉、並貼上剛剛複製的文字,存檔關閉,若有出現對話框,存檔類型選擇"所有檔案",編碼改為"Unicode",按下儲存就完成囉!