Transcript SGML介紹
資訊組織研究
SGML介紹
指導教授:張迺貞 教授
報告者:曾嬿容
組 員:江政哲、劉慈心、鄭美珍
大綱
何謂Markup Language
SGML內容
SGML目的、功能、特性
SGML的文件組成
SGML優點與限制
SGML的發展
Markup Language
指的是一系列制定好的標示,可以對電子
文件進行標示,定義電子文件的語義、結
構和格式。
這些標示必須很容易的區分與識別內容。
它必須定義什麼樣的標示是允許的,什麼
樣的標示是必須的,標示是如何與文件的
內容來區分的,以及標示的含義是什麼。
分為程序性標示(Procedural Markup)
和描述性標示(Descriptive Markup
程序性標示
(Procedural Markup)
對文件的外觀進行標示,方便個人使用
,標示編碼通常使用專屬於特定平台或系
統的控制碼。屬於直覺性的標示。
大部分的電子出版或文書處理軟體都使用
專屬性的程序性標示,使用專屬的軟體或
控制碼來執行文件的處理。這類的標示語
言其應用範圍較小,其本身的複雜度就會
比較低。如Word、PDF。
描述性標示
(Descriptive Markup)
對文件內容和語義結構進行標示,只描述
文件的內容與結構,不描述文件如何被處
理。採用ASCII編碼。著眼於文件的長期
保存、交換與再利用。
這類的語言其本身的成熟度與穩定度都相
當好,所以很多的應用軟體都能夠解讀它,
這類的電子文件其可攜性相當地高。如
SGML、XML。
SGML 內容
(Standard Generalized Markup Language )
於1969年由IBM發展出來,是第一個標準
化的資訊結構化技術。於1986年正式成為
ISO標準,ISO 8879。
是一種元語言(meta-language)。是一
套可以用來定義或描述其他更專門性的標
示語言的通用規則。
SGML不只是一種標示性語言,更可說是
一種創造標示語言的標準。
SGML 內容(二)
是一套資料編碼系統,使資訊獨立於出版
和傳遞媒介之外,文獻可在不同的機器與
軟體之間以相同的方式編碼與傳輸,因此
資訊得以共享。
提供一個設備中立的介面,且是正式的國
際化資訊交換標準,因此它被廣泛運用在
開放系統環境之中。
藉由文件型別定義(Document Type
Definition ,DTD )定義標籤及規範文件
結構,作為標注內容的依據,樹立了文件
共享的基礎。
發展SGML 的目的
在於規範文件製作及交換的標準,以確保電
子文件能在不同的電腦系統上進行交換、傳
輸與應用而設計。適用於任何複雜的文件結
構,具有相當嚴謹的文件結構。
提供一種文件結構化的規則,使 文件可以
被廣泛地被傳遞與使用,並且有關該文件的
製作、存取、應用都可以透過電腦來作最有
效的處理。
達到資訊共用、系統獨立、硬體獨立、語言
獨立、應用獨立 等目的。
SGML的功能
做為不同系統間資料交換的標準。
標示文件的邏輯結構,並指明文件中每一
個文字元素的角色。
用以檢測文件的完整性。
增強文件編輯軟體的功能。
做為開發全文資料庫建檔子系統的準則。
SGML的特性
SGML本身不直接規定任何的文件結構或
標示符號,而是定義一套規則,讓使用
者可以依據規則宣告自己的DTD、標示
符記和標示方法,使得任意兩個SGML文
件間可以很方便的隨時交換,無須事先
預設共同的DTD、標示符記或標示規則。
每份SGML文件都包含著DTD。
SGML文件的組成
一份SGML文件的組成可分成三大部份:
SGML declaration, DTD (Document Type
Definition) , DI (Document Instance)。
SGML文件在交換之前,必須要先透過
Parser 檢查DI是否符合DTD的規範。
Parser會根據所採用的字元集及DTD所定
義出來的文件結構,去判斷一份SGML DI
的合法性。
SGML declaration
在使用SGML文件之前,SGML declaration
用來告訴SGML Parser須先明確地定義文件
中所使用的字元集、變數極限值和文件特性,
並定義用何種符號當做SGML標示的符號。
如果文件中沒有規定SGML declaration ,
則系統會選擇預設的SGML字元集,一般預
設是ASCII 碼。
DTD
(Document Type Definition)
用來定義 SGML 文件架構、可用標籤及
其屬性,描述標示的語意等,用來宣告
該份文件的文件結構與文法參數。包含
附加式的定義,如:參考字元實體。
A DTD describes how a document
conforming to it should be marked up. A
DTD describes a class of tagged
documents in a vendor-independent
way.
DI (Document Instance)
DI 的撰寫須根據DTD所定義出來的結構
順序撰寫,必須經過SGML Parser檢查是
否符合DTD規範出來的結構,而DI就是加
上標示處理後的文件。
SGML DTD文件的結構
SGML的文件結構有如倒樹狀的結構。而
起始標示(start tap)<tap>或結束標示(end
tap)</tap>就是樹狀結構的各個節點。
SGML DTD是以BNF文法來描述文件架構,
是一套嚴謹的正規語言。
DTD常以三個關鍵字定義文件的結構:
Element, Attlist, Entity。
Element
定義DI中的標示,標示是用來定義其文件
的內容是屬於文件結構的哪一部份,所以
經過標示的指示後,便可以知道文件是屬
於何種邏輯結構。在DTD中出現最多。
Element宣告的方式:
<!ELEMENT element_name omit (content) (exception) >
Attlist
定義Element的屬性及屬性值或屬性值之
範圍。
Attlist宣告的方式:
<!ATTLIST element_name attribute_name domain default >
Entity
定義DTD中類似如巨集展開,參數替換、
特殊字元、包含外部檔案之表示及引入其
它SGML DI等功能。
SGML的優點
彈性和擴充性:可依不同需求,而制定不
同的標示語言;能夠描述各種複雜的文件
結構。如:TEI、EAD、CIMI。
非專屬性、平台獨立性、系統獨立性:可
以在不相容的系統間交換,以ASCII編碼,
資料不易遺失,利於文件長期保存。
資訊再利用性(re-usability):可利用已
標示的結構作內容的加值處理,可以多種
呈現方式出版。
SGML的限制
SGML標準規格過於複雜,應用程式不
易開發,開發成本太高。
SGML文件不易在Web上應用。
缺法廠商的支援 。
Why use SGML?
System independent
Non-proprietary
Separates content from format
Facilitates strict control over information
content
Provides an information-rich environment
for creation of free-text databases
Resources: Neil Bradley (1997). The concise SGML companion. England:
Addison Wesley Longman.
SGML對文件標示帶來的改變
提供規劃文件架構的方法
識別文件中使用的字元。允許文件指定
使用何組字元集,來確保處理器能了解
文件內所有的內容。
提供辨識文件中物件的方法。
提供將外部資料整合到文件內部的方法。
與SGML相關的標準
SGML並不是一個單獨的標準,在ISO
所制定的OSI (Open System
Interconnection)環境中,SGML必須搭
配其他的標準,才能完成整個出版過程。
Ex: SDIF, DSSSL, SPDL, HyTime, etc.
SGML在電子圖書館上的應用
TEI(Text Encoding Initiative)
EAD(Encoded Archival Description)
CIMI(Consortium for the Interchange of Museum
Information)
DIAP(Digital Image Access Project)
American Memory Project
LC MARC DTD Project (Machine Readable
Cataloging Document Type Definition)
Digital Libraries Initiative
The OCLE CORE Project (Chemistry Online
Retrieval Experiment)
SGML, HTML, XML的關係
HTML是SGML的應用,但是太過於簡化,
不具擴充性;XML亦是由SGML衍生出來,
XML擁有SGML80%的功能,但複雜度只
有SGML的20%,更改進SGML的缺點 。
XML、SGML都是典型的通用標示語言,
HTML就比較特殊了,HTML大部分是用
來設定文件在Web上的呈現外觀,少部分
描述文件的結構。
SGML HTML
App.
PICS
1.0
XML
App.
RDF
PICS
App.
2.0
P3P
RDF-semantics
SGML
XML-structure
W3C資料格式關係圖
資料來源:Tim Berners-Lee, Internet- http://www.w3c.org/
Reference-中文
官欣怡(譯)(2000)。實戰XML(第二版)。台北:華彩軟體。
(William J. Pardi) 。
凌群電腦。SGML介紹。網址
http://dbmaker.syscom.com.tw/rd/c_sgml.html,Retrieved:2008/9/26。
張世敏(譯)(2002)。XML技術參考辭典。台北:博碩文化。
(Sandra E, Eddy, B.K.)。
陳嵩榮(1998)。SGML、XML、RDF文件標準比較與Metadata資料模
式設計。台北:輔仁大學圖書資訊學系碩士論文,未出版。
陳嵩榮(1999)。SGML、HTML、XML比較。大學圖書館,3(1)。
陳嵩榮(2005)。XML & DTD理論、實務與應用。中華民國圖書館學會
資訊組織進階班研習手冊-94年(p255-318)。台北:中華民國圖書館
學會。
曾士熊(1996)。認識SGML(二)。計算中心通訊,11(25),pp.218222。
曾士熊(1996)。認識SGML(三)。計算中心通訊,12(26),pp.228232。
曾守正、黃文忠(1999)。SGML 文件與物件關聯式資料庫的結合:自
動縱橫SGML文件於物件關聯式資料庫系統。中華管理評論,2(2),
pp.33-50。
數位典藏國家型科技計畫技術彙編電子書。SGML。網址
http://www2.ndap.org.tw/eBook/showContent.php?PK=182,
Retrieved:2008/9/26。
Reference-英文
Boeri, R. J. (1995). What good is SGML? 8(4). Retrieved: 2008/9/26 from
EBSCO Host database on the WWW (http://www.ebsco.com).
Neil Bradley (1997). The concise SGML companion. England: Addison
Wesley Longman.
SGML Users' Group (1990). A Brief History of the Development of SGML.
Internet- http://www.sgmlsource.com/history/sgmlhist.htm, Retrieved:
2008/9/26.
Shafer, Keith E (2001). Manipulating Tagged Text. Journal of Library
Administration, 34(1/2). Retrieved: 2008/9/26 from EBSCO Host database
on the WWW (http://www.ebsco.com).
W3C. On SGML and HTML. Internethttp://www.w3.org/TR/html4/intro/sgmltut.html, Retrieved:2008/9/26.
Watson, Bradley C. (2001). Arbitrary SGML Viewers and Their Role in
Online Text Delivery Systems. Journal of Library Administration, 34(1/2).
Retrieved: 2008/9/26 from EBSCO Host database on the WWW
(http://www.ebsco.com).
報告完畢
敬請指教