基于XML之新一代Web技术及其在电子出版之应用

【摘要】:
        一般预料,XML将继HTML之后,成为新一代Web的整合技术,为网路带来第二波革命性的改变,促使网路从资讯处理阶段跨越到知识管理阶段,并将在电子出版、电子商务、电子图书馆、电子资料交换、远距教学等领域展现其强大的应用潜能.本文旨在探讨XML如何有效的表达网路上各种知识,为资料的交换和处理提供新的机制;并试图从电子出版的角度着眼,说明电子文件组成要素,分析目前Web出版的现况,从而深入了解现今Web所遭遇的困境与瓶颈;接着基于文件存取、整合、传递、操纵、显示等议题,提出一个整合式XML文件管理系统架构,并探讨XML相关技术,诸如DTD、XML  Schema、XML Namespaces、RDF、XLink、DOM、CCS、XSL等,在此一架构中所扮演的角色及功能,进而描绘出Web未来发展之趋势与轮廓.


关键词:XML;HTML;XHTML;Web出版;电子文件;电子出版


壹、绪论


随着网路的发展,图书与出版技术逐渐由传统印刷形式,朝向全面电子化的方向迈进,藉由网路,人类的文化得以采用数位化型态即时传播;透过网路,全球的使用者皆可共享资讯、共用资源.从电子出版的角度而言,Web实为一个建构于Internet上的超文件(Hypertext)出版与管理系统,Web的发展使得超文件观念普植于人心.如今,经由Web产生的电子文件,已经如同蜘蛛网一样,密密麻麻的组成了一个全球性的分散式超文件系统(Distributed  Hypertext  System).在此一系统中,HTML(HyperText  Markup  Language,超文件标示语言)无疑是扮演了一个关键性的角色.由于具备规格开放、易学易用、语法简洁明了等特色,加上独特的超连结,HTML的确为Internet上庞大的数位资料与电子文件,提供了一条有效的整合之道.但是随着资讯科技的发展,Web应用愈来愈广泛,HTML的弱点也愈来愈明显.其中最严重的,便是HTML擅长版面编排而欠缺内容语意,所以虽然适合人类阅览但却不利于电脑理解;其次,HTML的标签集是固定的、不可扩展的,无法应付多样化的应用.这些缺点在电子出版、电子商务、远距教学、电子图书馆等全新领域急速发展,并期望Web朝向自动化、智慧化目标迈进的同时,遂成了Web发展的一大隐忧.

  
有鉴于此,人们开始着手研究改进HTML的方法,XML(eXtensible  Markup  Language,可扩展标注语言)便是在这样的背景下产生的.XML具有可扩展性、高度结构化和良好的资料组织能力,能够有效的表达网路上各种知识,为资料的交换和处理提供新的机制,一般预料,XML将成为新一代Web的整合技术.若将HTML比拟为网路的第一波革命,则XML极可能继HTML之后为网路带来第二波革命性的改变,促使网路从资讯处理阶段跨越到知识管理阶段,并将在电子出版、电子商务、电子图书馆、电子资料交换、远距教学等领域展现其强大的应用潜能.众多的特点使得XML成为一个强势语言,并迅速获得各界的支持及响应.然而,XML基本语法虽然简单,却由于其可扩展性,目前已发展完备或正发展中的相关技术,如XML  Namespaces、RDF、XLink、XPointer、CSS、XSL、DOM、SMIL、MathML......等如雨后春笋般出现,俨然蔚为一支XML大家族,使得XML的复杂度及学习难度远远超越HTML. 

 
本文从电子出版的角度着眼,说明电子文件组成要素,分析目前Web出版的现况,从而深入了解HTML所遭遇的困境与瓶颈,接着基于文件存取、整合、传递、操纵、显示等议题,规画一个整合式XML文件管理系统架构,并探讨XML相关技术在此一架构中所扮演的角色及功能,进而描绘出Web未来发展之趋势与轮廓.  

 

贰、电子文件与Web出版

 

一、电子文件三要素


电子文件所必备的要素众多,其中最重要的当属’资料’(Data)、’结构’(Structure)和’表现’(Presentation)三者:

1.  资料:指文件的内容(Content),也就是文字、图表等内涵部分.    
2.  结构:指文件中有关资料的描述部分,如题名、作者、章节、段落等.    
3.  表现:指文件所呈现出来的外观、样式、版面编排等. 


若将文件与人体作一类比,则结构就如同人的骨架,资料则相当于肉体,而表现就形同外貌,三者相辅相成,形成一个完整的资讯描述体系,因此在本文中特将此三者合称为’电子文件三要素’.


一般而言,如果电子出版的目的仅在于如何将电子文件顺利呈现在读者面前供其阅览,则只要使用适当的’表现’方式来展现出文件的’资料’即可,不太需要考虑到文件的’结构’问题,就此一层次而言,HTML已经相当足够.但是,如果要更有效的管理、检索、交换Web上呈现指数成长的电子文件,则非得加强其结构性不可.  


二、HTML的限制


HTML是从SGML(Standard  Generalized  Markup  Language,标准通用标注语言)演变而来的.SGML发表于1986年(ISO  8879),主要目的在于规范文件制作及交换的标准,以确保电子文件能在不同的电脑系统上进行交换与应用,它藉由DTD(Document  Type  Definition,文件型别定义)定义标签及规范文件结构,作为标注内容的依据,因此SGML具有可移植、可扩展、结构化......等特性,树立了文件共享的基础.但由于SGML庞大复杂、不易学习及使用,因此并未获得普及.有鉴于此,Tim  Berners-Lee于1989年提出WWW概念时,乃根据Web  的需求而以SGML定义了适合超文件使用的HTML语言.由于HTML具备规格开放、易学易用、语法简洁明了等特色,加上独特的超连结功能,使得HTML在短短数年内迅速普及,如今Web上的大多数文件,仍以HTML作为主要写作格式.  


但是随着Web应用愈来愈广泛,HTML的弱点也愈来愈明显:  

1.    HTML着重在资料的表现,擅长版面格式、体裁编排,但其文件在语意(Semantic)上缺乏自我描述性.因此,HTML文件较适合人类阅读却不利于机器理解.    

2.    HTML是一个固定用途的标注语言,无法根据不同的应用,由文件作者自订标签,此种无法扩展的特性也就局限了它的发展.    
3.    HTML将电子文件的资料、结构和表现三要素夹杂在一起,使其内容’杂质’过多,使得欲从文件中撷取有意义的资讯时困难度增加.    
4.  内容提供者、版面编排者、资料著录者对HTML文件所作的任何处理,都必须对原始内容进行更动,不符合资料处理原则.    


由于HTML有这些缺点,所以发展出许多改善方案,例如借助动态HTML(Dynamic  HTML)、Script语言、CGI、ASP和外挂程式(Plug-Ins)等扩增功能,可以完成动态网页展现、资料库存取、通讯协定转换、网路资源整合等,使得近几年Web大放异彩.不过,这些基于HTML先天缺陷所提出的解决方案,却也是促使HTML文件愈来愈’不纯’的罪魁祸首.现今,在一份HTML文件中,极可能除了文件本文和有关的结构、样式等标签之外,尚且夹杂了众多与资料无关的字型、颜色、外观等标签及属性,再加上Script程式码和各家浏览器厂商自订的稀奇古怪功能,怎堪一个’乱’字了得. 


其实,资讯化社会所感困扰的不是资讯的匮乏,而是资讯的氾滥.如今,以HTML为主的电子文件充斥在网路上,其内容又乱象丛生,不但造成电子资料的氾滥,更引发了资讯检索的问题.换言之,由于HTML过度着重于形式的呈现,而忽略了以结构化方式组织资料,使得在网路上进行资料搜寻及交换时显得杂乱而缺乏效率.因此,为了让使用者在浩瀚的网海中能顺利查找到所需资料,资讯检索技术在这几年内有许多突破性的进展,而基于资讯检索技术的搜寻引擎(Search  Engines),顺理成章的也成了网路使用者查找资料的主要依据.  


三、资讯检索技术的研究


网路所标榜的终极目标,是要使任何人能在任何时间、任何地点,都能获得所需的任何资讯或服务,因此提供使用者一个有效的资讯检索机制,便成为Web出版所应考虑的重要课题.资讯检索(Information Retrieval,简称IR)技术历经数十年的发展,累积了不少经验与成果,如索引(Indexing)技术、自动文件分类(Automatic Document Classification)技术、全文检索(Full-text  Retrieval)技术、相关回馈(Relevance  Feedback)、自然语言处理(Natural Language Processing)及跨语资讯检索(Cross-Language  Information  Retrieval)技术、多媒体资讯检索(Multimedia Information Retrieval)技术等,近年来由于电脑科技的发展及各领域研究人员的投入,资讯检索技术渐渐朝向跨领域整合方向发展,如资讯过滤(Information  Filtering)、资讯撷取(Information  Extraction)、资料挖掘(Data  Mining)、智慧型代理人(Intelligent  Agent)等,使得资讯检索成了一个多元化的研究领域.学者Michael  Lesk将资讯检索技术的发展历程,从1945年起以每十年为一个年代划分,每个年代都有重要的突破与进展,是了解近代资讯检索技术发展的重要文献之一.


资讯检索系统的基本原理是:将文件资料库中的文件集合(Document  set),经由文件分析过程,抽取出足以描述文件的特征(Feature),以简化后续的检索处理程序及提升检索效能;当使用者输入检索条件时,查询模组则针对使用者的检索词句进行查询分析(Query  analysis),并将此查询映射(Mapping)至特征空间,以便进一步与文件进行检索处理;检索处理模组经由计算’查询’与’文件’之间的’相似度’(Similarity)完成比对(Matching)工作;检索结果最后输出至使用者的检视装置上;若使用者对系统检索的结果不满意,可透过互动式的人机介面(Interactive  men-machine  interface)对系统进行相关回馈(Relevance  feedback),以便修正检索策略,逐渐逼近所需的结果.  


在文件分析过程中所抽取出的文件特征,是不是具有足够的代表性而能充分描述整份文件,对于整个检索系统的效能有决定性的影响.回现率(Recall  Rate)和精确率(Precision  Rate)是评估检索系统效能的两大重要指标,两者经常是无法兼得的.君不见搜寻引擎动辄成千上百篇的检索结果,回现率有余而精确率不足,往往造成使用者资讯需求上的额外负担;反之,若仅顾及精确率则又往往牺牲回现率.实际上,文件中的结构化资讯,经常是特征抽取时非常重要的指标,资讯检索系统在进行文件分析或检索时,通常可以藉由文件中结构化资讯的辅助,简化分析过程或提高检索效能.因此,加强文件的结构性,增加描述性资料,对于简化文件分析过程,提升检索精确率有极大的帮助.以此观之,在发展全文资讯检索技术之外,加强Metadata的著录,不失为另一个解决网路上电子文件乱象并提升检索精确率的有效方案. 


四、Metadata的发展
Metadata是个极为普遍的概念,在我们的日常生活中,四处可见Metadata的踪影:例如我们可以用{CPU型号,  记忆体大小,  硬碟机容量  ...}这一组Metadata来描述每部个人电脑的规格,所以我们可以很清楚的知道配备为{Pentium-II  350,  64MB  RAM,  6.4GB  HDD...}的A电脑,比起配备为{Pentium  133,  16MB  RAM,  1.5GB  HDD...}的B电脑来得高档许多;而对于出版品资料则可用{书名,  作者,  出版社  ...  }这样的Metadata来加以描述.为了让Metadata发挥更大的功效,于是人们开始制订各种Metadata标准以供遵循,图书馆长期以来所沿用的机读编目格式MARC,就是用来描述书目资料的Metadata标准.在网路盛行之后,为了因应既多且杂的电子文件,让使用者都能尽快而且精确的找到所需资料,陆续被制订出来的Metadata标准也就愈来愈多. 目前已发展成熟或正发展中的Metadata格式众多,适用于不同的领域及用途,例如:

早已普遍使用的MARC家族(USMARC,UKMARC,CMARC)、PICA+等;

专为描述科技文献的BibTex、EELS、EEVL、RFC1807等;

专为描述人文社会科学资源的ICPSR  SGML  Codebook Initiative、TEI  Headers等;

专为描述政府资讯的GILS  Core  Elements;

专为描述地理空间资源的CSDGM(Content  Standard  for  Didital  Geospatial Metadata);

专为描述博物馆藏品与档案特藏的CDWA(Categories  for  the Description  of  Works  of  Art)、CIMI(Computer  Interchange  of  Museum  Information)、EAD(Encoding  Archival  Description)等;

以及专为描述大量网路资源的Dublin  Core(Dublin  Metadata  Core  Element  Set)、IAFA/WHOIS++Templates、LDIF(Lighweight  Directory  Access  Protocol)、SOIF(Summary  Object  Interchange  Format)、URC(Uniform  Resource  Characteristics)等.  


在现成的HTML规格中,大部分的标签都着重于文件外观及格式之呈现,只有极少关于文件结构之描述者(如、、......等),加以HTML并不具备可扩展性,使得虽然可以使用标签在HTML文件中著录Metadata,但仍不够理想,XML的诞生正好提供了一个可行的解决方案.

 

参、XML与新一代Web

一、XML缘起与目标


1996年7月’XML工作小组’(XML  Working  Group)在W3C(World  Wide  Web  Consortium,全球资讯网协会)的赞助下成立,当年11月提交XML初稿,并于1998年1月10日正式通过XML  1.0规范,成为W3C的一个建议标准(Recommendation).由于XML具有可扩展性、结构性、自我描述性,并采用资料和样式分离原则,使其在资料的管理、交换上拥有极为卓越之性能.XML和HTML一样都是从SGML演变而来的,只不过HTML是SGML的一个应用语言(Application),而XML却是SGML的一个精简子集(Subset).XML将SGML去芜存菁,舍弃约百分之二十复杂罕用的部分,承袭了其他百分之八十的特点,是以具备了SGML所没有的简易性与灵活性,又有着HTML所欠缺的扩展性与结构性.因此,称XML为主导’第二代Web’(Second-Generation Web)的重要技术实不为过.XML的发展将使得许多理想得以实现:
1.  促进国际化媒体独立(Media-Independent)的电子出版.    
2.  允许产业间定义平台独立(Platform-Independent)的协定来进行资料交换,尤其是在电子商务方面.    
3.  以某种形式传送资讯给使用者代理程式(User  Agents),使其能在接收之后自动处理.    
4.  让人们很容易的便能使用平价软体来处理资料.    
5.  允许人们以自己想要的方式显示资讯.    
6.  提供Metadata,不但能帮助人们找到所需的资讯,更能帮助资讯生产者与消费者找到对方.    

不过,XML并不是被发展出来取代HTML的,而是用以弥补其不足之处.XML相较于HTML至少有以下几个重要的差异:  

1.     XML文件的作者可以自订标签(Tags)和属性(Attribute),HTML则否.    

2.     XML是属于一般用途(General  Purpose)的标注语言,而HTML则是一种特殊用途(Special  Purpose)的标注语言.换言之,XML是一种元语言(Meta-Language),可以用以生成其他语言,HTML则否.    

3.     XML着重于文件的结构,而HTML则擅长于文件的表现.    

4.     XML文件的作者可以选择性的利用DTD或XML纲要(XML  Schema)来确认文件的有效性,HTML则否. 

 

二、新一代Web出版之特色与趋势

 

依据XML的特性,可归纳出以XML为核心技术的新一代Web出版将具备如下之特色:  
●  电子文件具备自我描述性    
●  电子文件更能有效整合    
●  电子文件更具结构性    
●  电子文件具备内容和外观分离原则    
●  标注语言具备多样性及可扩展性  
兹分述如下.  
(一)电子文件具备自我描述性

XML的标签可根据不同的用途来定义,因此在语意层次上具备一定程度的自我描述(Self-Description)特性,这对于提升处理程式解读文件内容的能力与进行自动处理的效率有着莫大的帮助.  

 

(二)电子文件更能有效整合

透过不同的协定转换,各种不同格式的资料可以转成XML格式,使得XML在文件整合(Document  Integration)方面,扮演了一个通用集成器(Universal  Hub)的角色,而XML的名称领域、XLink等正是文件整合不可或缺的重要技术.  


1.  整合功臣:名称领域
网路上的电子文件可透过XML定义不同的词汇集(Vocabulary)加以整合.然而,当分散的资源透过不同的词汇集,在同一份XML文件中被引用或参照时,若是不同词汇集中使用了相同的元素名称,此时便产生冲突了.因此,XML进行资源整合时必须注意元素名称的唯一性问题,XML的名称领域(XML  Namespaces)便是为了解决元素的命名冲突所发展出来的.根据W3C的定义:一个XML  Namespace是使用URI(Universal  Resource  Identifier,一致性资源识别码)识别的名称集,用于XML文件中作为元素型别和属性名称.由于URI是唯一的,所以Namespace可以保证文件中所使用的名称是独一无二的.  
XML  Namespace的宣告是由xmlns:  伴随着一个自订的前导字(Namespace  Prefix)和一个URI名称(Namespace  Name)所构成,亦即:xmlns:namepace_prefix=namespace_name


2.  连结机制:XLink
资源整合的另一个重大议题是:如何将资源连结(Link)起来.众所周知,HTML的锚元素(Anchor  Element)和连结元素(Link  Element)是目前Web文件的两个主要连结机制,已经广泛的使用了许多年了.然而,连结的种类繁多,如基本连结、多向连结、索引连结、节点内注释连结、IS-A连结、HAS-A连结、蕴含连结、执行连结、自动连结、类型连结等,HTML的连结只不过是基本连结的一种,还有许多其他类型的连结,是无法使用HTML完成的.因此,XML便肩负了增强连结功能的重任,不过在XML规格中并未定义任何的连结方法来改变HTML的现状,而是以原有HTML的连结概念为出发点,延伸出更强大的方式来处理连结资讯,此一延伸机制称为’XML连结语言’(XML  Linking  Language),简称XLink.XLink目前仍是  W3C  的一个工作草案(Working  Draft),尚未成为建议标准.为了与  HTML  的简易连结相容,并提供更强的的延伸功能供人们使用,在制订  XLink  规格时,简易性、可读性、延伸性、实用性等,便成了首要考量的几个重要的设计目标.XLink定义了两种主要的连结:简易连结(Simple  Links)和延伸连结(Extended  Links).简易连结虽然提供类似HTML的锚元素功能,只需要一个定址器(Locator),只能连结到单一资源,只能作单向连结,不过,却也具备HTML所没有的能力,例如可以定义连结的语意、展现、动作、行为等.延伸连结可以连结到不定数量的资源、可以作相关连结的过滤,但需要将定址器元素另外置放在与连结元素不同的集合里.此外,XLink还提供了延伸连结群组(Extended  Link  Group),以便建立一个核心文件来集中管理各类连结. 

 
(三)电子文件更具结构性
XML具有严格的规范以适应广泛的应用,因而造就了XML文件强烈的结构性,在资料处理和机器理解方面具备了先天的优势,这也是促使XML迅速成为重要机读格式的主因之一. 
XML文件可根据其结构性概分为两类:
1.  完构的(Well-Formed)XML文件.
2.  有效的(Valid)XML文件.
一个XML文件只要合于XML规范中所制订的语法规则,便可以很容易的具备’完构性’(Well-Formedness);不过,要达到’有效性’(Validity),则除了满足语法规则外,尚必须遵循某些额外定义的语意才行.XML处理器会根据XML规范中所定义的完构性和有效性来查核文件内容,一旦发现不合规定的文件便会拒绝处理并告知使用者,这对于在网路上进行资料交换与资讯共享是非常必要的--不符合公认标准的资料可以不被接受.  


1.  定义文件结构:DTD与XML  Schema
‘文件类型定义’(Document  Type  Definition,简称DTD)和’XML纲要’(XML  Schema)是XML处理器据以确定文件有效性的两大重要机制. 

 
DTD是沿袭自SGML的技术,主要用途在于定义文件中的元素型态、结构、范围、顺序等,以作为撰写XML文件的蓝本.不过,由于DTD采用的语法规则与XML不同,不支援Namespace,所提供的资料型态相当有限,并且扩充能力不足,于是有必要发展一个类似DTD又能跨越其功能界限的机制,以作为定义文件结构的全新规范.是以W3C便在1999年2月15日发布一份’XML纲要需求书’(XML  Schema Requirements),说明DTD不足之处及新制订的XML纲要规范所必须符合的要求,并在  1999  年  5  月  6  日,首度发布XML  纲要的工作草案,并历经多番修订,预定在  2000  年中旬提交W3C审议,以便成为建议标准.  


DTD比起XML纲要,具有如下的优点,因此短期内仍有一定优势:
(1)  广泛的支援:所有SGML和大多数的XML工具程式都支援DTD,许多文件格式也都支援DTD.    
(2)  丰富的经验:DTD使用多年,已累积许多宝贵经验.    
(3)  众多的应用:数以千计应用于各领域的DTD,早已普遍存在供人使用.  
然而,就长期趋势而言,XML纲要因具有许多DTD所不及的特色,预料将逐渐成为定义XML文件结构的重要技术:
(1)  具有丰富的资料型态,如整数、布林、日期......等,并可由使用者自订资料型态.    
(2)  支援Namespace.    
(3)  使用XML语法规则,因此文件作者不必另学一套特殊规格.    
(4)  设计支援XML纲要的软体,远比DTD容易.    
(5)  具有强大的扩展能力.  


2.  剖析文件结构:DOM文件物件模型
要对XML文件结构及资料内容,进行加值处理或操纵(Manipulation),可以透过W3C制订的介面标准’文件物件模型’(Document  Object  Model,简称DOM)为之.其实DOM并非是针对XML量身订做的,而是一套普遍适用于类似HTML、XML等文件的应用程式介面(Application  Programming  Interface,API).在DOM的规范中,定义了文件的逻辑结构以及存取、处理、操纵文件的方法.藉由DOM,电脑程式可以轻易的建立文件,可以在文件结构中来回穿梭,甚至可以新增、修改或删除文件中的元素或内容.制订文件物件模型的最重要目的之一,是在不同的作业平台和应用程式之间提供一个标准的程式介面.因此,W3C所倡议的DOM,是一个语言独立的规格(Language-Independent  Specification),可以在不同的作业系统中,使用任何程式语言加以实现.  


由于网路上的资料分别存放在各种异质系统中,而XML以文件方式来描述各种资料的作法,使得DOM成了管理资料的有效途径.在DOM模型中,文件中的各个元素(Element)都被视为一个一个的节点(Node),而整份文件则被描述成树状结构(Tree  Structure).例如,图  2  是一个以XML撰写之简易图书目录,若将此XML文件以DOM展开,则形成如图3所示的树状结构.图中的矩形方块表示文件中的节点,而椭圆形则为该节点的内容.这样的资料结构可以很容易的以程式加以处理,如新增、修改、删除节点等,而这些动作正好就是文件处理所需的各项功能.


(四)电子文件的内容和外观分离原则
XML强调的是如何以适当的结构来组织资料,对于外在的表现则必须透过其他显示机制才能达成,这就是XML文件的资料、样式(即内在、外貌)分离原则.这使得文件作者只要专注于内容的撰写,而将显示资讯的任务交由版面设计者或使用者,依据不同的需求来展现.如此一来,同一份文件或资料,将可在不同的场合呈现出不同的风貌.  


一般而言,展示XML文件最简便的方式是透过样式表(Stylesheet),一份文件可以使用不同的样式表而呈现出不同的外观.CSS(Cascading  Style  Sheets层级样式表)和XSL(eXtensible  Stylesheet  Language延伸样式语言)即是两种常用的样式表语言;此外,XML文件出版者还可以透过分解XML结构树的方式,将XML文件呈现在读者眼前.  


1.  以CSS层级样式表显示文件
层级样式表(Cascading  Style  Sheet,CSS)规格分为Level  1(简称CSS1)及Level  2(简称CSS2)两种,目前都已正式成为W3C的建议标准.CSS1是在  1996  年  12  月完成,并在1999年1月增修;而CSS2则是在1998年5月完成的.CSS1提供作者针对文件内容设定显示时的版面格式及样式,不但便于内容的显示,而且可以对版面的边界、边框、背景及字体种类、大小、形态、字距、行距、对齐方式等进行精细的控制.CSS2则建构在CSS1的基础上,除了CSS1的功能外还提供了与输出媒体相关的样式表,不但可针对不同类型的浏览器、语音输出设备、列表机、盲胞用点字设备或掌上型设备等进行特殊的设定,还提供了更精准的内容定位、字型下载、表格格式、国际化及一些与使用者介面有关的设定. CSS适用于HTML和XML文件,目前的浏览器都已经有支援CSS1,只是程度不同而已;至于CSS2则只支援部分功能.  


2.  以XSL可扩展样式语言显示文件
XSL(eXtensible  Stylesheet  Language,可扩展样式语言)目前仍是一个正在制订中的规格,W3C于1998年12月提出了1.0版的工作草案,最新修订版则在2000年1月公布.虽然最终的正式规格可能与目前的草案有所差异,但其理念却是一脉相承的.  


XSL是由XML所定义语言,它提供远超过CSS的强大功能,虽然CSS发展较早,并可作为HTML文件和XML文件的排版样式,但却无法对原始文件进行内容过滤或结构重组,因此,在处理高度结构化的XML文件以及复杂多样的Web应用时,必须仰赖XSL所提供的功能才能达成.


XSL处理XML文件的过程如图4所示.其中,XSL样式表以’样版’(Template)和’样式’(Pattern)来描述XML文件的转换规则;而XSL处理器则负责先将XML文件以树状结构建立’原始树’(Source  Tree),接着将样式与原始树中的元素相匹配,再根据样版建立’结果树’(Result  Tree);结果树便构成了显示的文件结构.由于结果树和原始树是分离的,原始树可以被过滤、重组或增删而产生结果树,因此,目的文件可以拥有和原始文件完全不同的结构.是以使用XSL不仅可将XML文件转换为HTML文件或其他排版格式,如PDF、RTF、TeX......等,也可以将文件结构转换至另一个结构.  


CSS与XSL的差异为:CSS采用简单的比对方式,直接将样式套用在文件上,完全没有改变原始文件的结构及内容顺序;XSL则提供较复杂的机制,可以对原始文件进行内容过滤和结构重组,产生全然不同的文件.


3.  以程式剖析方式显示文件

对于无法使用CSS或XSL完成的工作,可能需要直接以程式剖析XML文件的方式来处理了:首先藉由文件物件模型DOM,建立资料分析、撷取的管道,再利用程式语言的处理能力对资料进行各种加值处理,最后建构使用者介面及资料展现画面即可.  


(五)标注语言具备多样性及可扩展性
XML既可视为是一种在Web上建立结构化文件和资料的通用格式(Universal  Format),也可视为发展其他应用语言的低阶语法(Low-Level  Syntax),这就是XML被称为  Meta-Language  的原因,也是XML最引以为傲的可扩展性(Extensibility).目前已有许多经由  XML  所定义并使用于不同领域的应用语言,例如:

应用于网页出版的  XHTML(eXtensible  HyperText  Markup  Language)

应用于数学方面的MathML(Mathematical  Markup  Language)

应用于向量图的SVG(Scalable  Vector  Graphics)

应用于多媒体领域的SMIL(Synchronized  Multimedia  Integration  Language)

应用于描述网路资源的RDF(Resource  Description  Framework)

应用于网路推播频道的CDF(Channel  Definition  Format)

......等


肆、XML在电子出版之应用
一、电子文件与Metadata:RDF资源描述架构
文件整合为资源整合的一环,而资源整合的重大议题之一是:如何使得所有被整合的事物不但是’机器可读的’(Machine-readable),而且更进一步是’机器可理解的’(Machine-understandable),这和人工智慧(Artificial  Intelligent)领域长久以来致力于提升机器智能的宗旨不谋而合.人类的思维过程不外乎藉由各种管道获取知识(Knowledge),然后进行推理(Reasoning),最后做出决策(Decision),由此可见,知识乃是人类智慧中极重要的一环.然而,知识的获得则需要经过资料处理及资讯管理的过程才能萃取出来,如图  6  所示,大量的资料经过组织、整理后成为有用的资讯;而众多的资讯经过归纳、演绎之后,才能构成知识;有了足够的知识,才能做出正确的推理与决策,此乃人类思维的基本体系.因此,要让机器如同人类一样能’理解’事物,就必须发展能够具体表达知识的方式.于是,知识表达(Knowledge  Representation)这一门探讨如何利用不同模式有效描述人类知识的学问,遂逐渐成为人工智慧一个极重要的研究领域.目前,已被提出的知识表达模式众多,较重要的有:

语意网路(Semantic  Nets)

框架(Frames)

生产法则(Production  Rules)

剧本(Scripts)

逻辑与集合(Logic  and  Sets)

物件导向表示法(Object-Oriented  Representation)

等. 

 
网路资源若能有效整合,将建构出人类有史以来最大的知识库(Knowledge  Base),辅助人类进行推理与决策.然而,如今  Web  资料杂乱、资讯氾滥,若要借助机器之功,完成全自动化的资源整合与知识萃取,以目前之资讯科技而言,实仍有许多困难;若要完全利用人工方式,对庞大的资料进行组织与整理,又力有未逮.因此,在撰写  Web  文件时,由作者或专业人士著录Metadata,提供足够机器理解之资讯,实为一可行的方案,而此种萃取文件中Metadata的行为,实际上就是一种知识撷取的过程,所产生的Metadata即是知识的具体表现!有鉴于此,W3C乃大力倡导’资源描述架构’,简称RDF(Resource  Description  Framework),作为处理Metadata的标准模式,使得Web上的应用程式可据以交换’机器可理解的’资讯.若是从人工智慧的角度观之,RDF实可视为一种知识表达,其资料模型(Data  Model)将资源(Resource)表示成特性(Property)与值(Value)的关系,相当于’物件-属性-值’三元表示法(Object-Attribute-Value  Triples),而用来定义资源与属性关系的RDF纲要(RDF  Schema),则类似实体-关系图(Entity-Relationship  Diagram).然而,RDF的宗旨并不在于建立一个专家系统或人工智慧系统,因此,在RDF中并未定义任何的推论机制(Reasoning  Mechanism),而仅借助知识表达技术来描述Metadata、建构知识库,使得系统开发者可以很容易的自行在此知识库之上建立所需的推论引擎.  


在  RDF  资料模型中,所有被描述的事物一律称为’资源’(Resources),每个资源都拥有一些’特性’(Properties)作为描述其外观、特征或属性之用.描述资源与特性的表示方式则称为’叙述’(Statement),在一个叙述中包含了’主词’(Subject)、’述词’(Predicate)和’受词’(Object)三部分,可表示成一个三元式 {predicate,subject,object},或简写成{p,  s,  o},此三元式等同于一个起始于端点  s  经由弧线  p  指向端点  o  的有向图(Directed  Graph),如图7所示.其涵义为’资源s有一个属性  p,其值是  o’或更简洁的说法:’s  的  p  是  o’. 

 
由于XML文件具有标准化、开放性、结构化及自我描述等特性,因此极适合作为RDF的实作语言,如图9即为实现图8之RDF叙述的XML语法.  


在  RDF  中,为了使文件读写双方都能了解叙述的含意,必须定义彼此能理解的语汇集,称为RDF纲要(RDF  Schemas).然而,不同的RDF纲要极可能定义了同名的词汇,以至于一旦同时在同一份文件中被引用或参照时,将造成冲突.为了避免此一问题,RDF  采用了  XML  的名称领域作为解决方案.
在RDF架构中结合都柏林核心集(Dublin  Core,简称DC)是描述  Web文件或网路资源的有效方式之一.  


二、电子文件的展示
XML  的整合性及扩充性,使得众多的  XML  应用语言可以互相结合,展现出电子文件的多样化风貌.以下针对W3C所提出的  XHTML、SMIL、MathML  和  SVG  等作为电子文件展示用途的规范加以说明.  


(一)新一代网页出版语言  XHTML  
无论如何,HTML历经多次的演进,已经拥有支援广泛  Web  应用的能力,因此目前仍是网路上最通用的Web出版语言.HTML  是  SGML  的一个应用,其最新规范是  W3C  于  1999  年  12  月所发布的HTML  4.01建议标准,该标准修正了1998年4月发布的HTML  4.0规范中的某些Bug.  
在XML规范正式成为  W3C  建议标准之后,HTML工作小组便拟定将  HTML  从原有的  SGML  框架中移植至  XML  框架上的计画,开始着手将  HTML  4  以  XML  语法重新定义,并于2000年1月颁布了基于XML之新一代网页出版语言XHTML  1.0(Extensible  HyperText  Markup Language,可扩展的超文件标注语言).  XHTML  不但具备了HTML  强大的超媒体网页表现能力,最重要的是它拥有XML的整合性及扩充性.  XHTML  支援  XML  的  Namespace  ,使得  XHTML  可结合众多  XML  应用语言,例如:SMIL、SVG、MathML......等,展出电子文件的多样化风貌.  


此外,XHTML  继承了  XML  的扩充性,并将标签集依功能及用途加以模组化(Modularization).网页作者可根据不同的使用者终端设备或不同的应用需求,选用不同模组的标签子集;若是现有的标签集不敷使用,模组化也提供了一个扩充标签外集的正规途径.依据  W3C  目前的工作草案,XHTML标签集依其用途大致分为以下十余个不同模组:

共同字元模组(Common  Characteristics  of  Modules)

基本模组(Basic  Modules)

Applet模组(Applet  Module)

文字扩充模组(Text  Extension  Modules)

表单模组(Forms  Modules)

表格模组(Table  Modules)

影像模组(Image  Module)

客户端影像映射模组(Client-side  Image  Map  Module)

伺服端影像映射模组(Server-side  Image  Map  Module)

物件模组(Object  Module)

框架(Frames  Module)

Iframe模组

事件模组(Intrinsic  Events)

诠释资讯模组(Metainformation  Module)

描述语言模组(Scripting  Module)

样式表模组(Stylesheet  Module)

连结模组(Link  Module)

基底模组(Base  Module)

Legacy  模组(Legacy  Module)

等.  


基于未来性的考量,人们除了桌上型电脑(Desk-Top  Computers)之外,将藉由更易于携带的行动设备(Mobile  Devices),如个人数位助理器(Personal  Digital  Assistants,PDA)、掌上型电脑(Palm-Top  Computers)、车用电脑(In-Car  Computers)、行动电话(Cellular  Phones)、呼叫器(Pagers)......等,来存取网路资讯、浏览网页内容.此一目标必须借助设备描述档(Device  Profile)和文件描述档(Document  Profile)来达成.设备描述档纪录着某一已知设备究竟支援了哪些XHTML模组;而文件描述档则记录着某一份特定文件要能正常呈现在某个已知设备时,所需要的XHTML文件和样式表为何,当然,这其中仍须某些转换程式的辅助.  


(二)同步多媒体整合语言  SMIL  
虽然  Web  已经成为多媒体文件的重要发行管道之一,但由于先天的限制,HTML  在同步性、互动性和即时性方面一直存在着若干限制.为了提升  Web  处理多媒体文件的能力,使独立的多媒体文件能被整合成为媲美电视的同步多媒体节目,  W3C  遂于  1997  年  3  月成立了同步多媒体工作小组,基于XML规范制订了适合  Web  展示的同步多媒体整合语言SMIL(Synchronized  Multimedia  Integration  Language),并于  1998  年  6  月正式成为W3C的建议标准.  


SMIL(念作smile)语言是一个非常容易学习的语言,它也是XML的一个应用,如同  HTML  文件一样,SMIL文件同样可以利用一般简易文书编辑器来制作.SMIL文件可内含串流语音(streaming  audio)、串流视讯(streaming  video)、影像(images)、文字(text)或任何其他的媒体类型.SMIL最重要的特性在于作者不但可以描述多媒体文件的时序行为,精确规划萤幕上的布局,将多媒体物件与超连结相关连,更能设定各种多媒体互动情境,适合在网路上进行即时互动的出版、广播、教学、娱乐等.  


SMIL  的主要特点为:
1.  同步多媒体播放
完美的多媒体环境中,图、文、影、音等多媒体元素必须能够依时序同步播放,例如:’播送视频文件  A  的同时一起播放旁白文件  B  ’,或’在旁白文件B播放完毕1秒后接着播放动画文件  C  ’等.Web虽然被标榜为一个多媒体环境,但  HTML  却缺乏时序上的同步控制机制.  SMIL  可以表述这类讯息,因而可以在  Web  上建立基于时序的同步多媒体播送系统.  


2.  简化创作工具
目前,在  Web  上发行同步多媒体文件,都需要专用的创作工具(Authoring  Tools)或者要进行复杂的程式设计.而撰写SMIL文件则和HTML文件类似,只需简单的文书编辑器即可,并使用一些简易的XML  元素,不用学习复杂的脚本语言.  


3.  与  Web  技术紧密结合
SMIL中包括现阶段及未来的  Web  技术,如  CSS  样式表、  HTML  超连结,以及基于  XML  的语法.因此,SMIL可藉由  XML  Namespace  整合到其他需要同步多媒体功能的  XML  应用环境中.  


4.  提高频宽利用率
一般而言,视频讯号是多媒体元素中频宽需求量最高的.而SMIL的特色是在显示视频内容时,可以尽量避免将低频宽需求的文字、图片转换成高频宽需求的视频讯号,以提高频宽的利用率.  


5.  促进讯息国际化
SMIL可以满足多国语言的需求,例如:在同一网页中包括中、日、英等多国语言的语音文件,然后根据使用者的参数设定自动选择下载中文、日文或英文版本.  


(三)数学标注语言MathML
在科技文献中,数学公式是非常重要的表现元素,非常可惜的是HTML虽然拥有无数好用的标签群,然而对于数学公式的支援却明显不足,以致于科技文献的作者只好另谋他法来呈现数学公式,例如利用图形方式
来展现.这造成了三个主要问题:其一,图形资料量庞大,占用网路频宽,影响传输效率;其二,图形化的公式无法重复利用,例如无法编辑或修改公式内容;其三,图形化公式只适合人类阅读,机器无法理解公式内涵.这些都使得目前要在Web上传递公式内涵或显示公式画面都极其麻烦,以致于在Web上进行科技文献的线上出版困难度增加. 有鉴于此,W3C遂于1998年4月提出专为出版数学公式的标注语言MathML(Mathematical  Markup  Language),并于1999年7月修订.MathML的标签群可概分为展示标签(Presentation  Tags)和内容标签(Content  Tags)两大类:展示标签主要用途在将数学公式外观以高解析度的方式呈现出来供人类阅读;而内容标签则用来将公式内涵以语意化的方式标注,作为不同应用程式之间的传输介面,进行分散式科学运算及处理.  


(四)向量式图形标注语言SVG
向量化(Vector)图形和点阵式(Bitmap)图形是电脑图形的两大类型,目前Web在处理图形上所使用的标准格式,如JPEG和GIF,基本上都属于点阵式图形.为了能增强Web处理向量图的能力,W3C遂组成工作小组进行向量图形语言之制订,并于1999年2月颁布第一份SVG(Scalable  Vector  Graphics)工作草案,而最新的草案则于2000年3月公布。SVG也是XML的一个应用,主要是作为描述二维图形的语言,它支援向量图形(vector  graphic  shapes)、影像(image)和文字(text)等物件,并允许作者对物件进行群组化、样式化、转换和合成.SVG物件可以直接以脚本程式透过DOM来呈现动态及互动式功能,并且由于SVG物件支援丰富的事件控制器(Event  handler),如onclick、onmouseover......等,因此可与现有的Web标准相容.再者,藉由XML Namespace,SVG元素与全球其他XML元素可同时整合在同一个网页中.  


伍、整合式XML文件管理系统之规画
综上所述,XML不但能有效解决目前网路上电子文件的乱象,更有助于开创电子文件自动交换与传递的新契机.但是,对于文件的作者、管理者或出版者而言,要区分HTML、SGML与XML已属不易,至于更深入了解何谓’DTD’?何谓’Well-Formed XML文件’?何谓’Validating XML文件’?何谓’XML  Schema’?何谓’CSS与XSL’?确实是一大难题.因此,有必要建立一个适合一般使用者使用的’整合性XML文件管理系统’(Integrated XML Document Management System).此系统不但要具备中文化介面、简单易用等特性,而且对于不具备任何XML技术素养的使用者,只要经由一般性的编辑流程,即可产出符合XML规范的文件.如此一来,不仅可以解决检索、管理等问题,更使得电子文件在出版的同时,也具备了结构化资料库的特性.  


藉由系统分析过程,本文将此一整合系统划分为三个子系统,并提出初步规画结果,以作为未来系统设计之依据.此三个子系统分别是:

(1)  编辑子系统;

(2)  核心子系统;

(3)  出版子系统.

其主要任务是基于XML规范,对电子文件的结构、内容、表现三要素,进行有效率的管理以利于展示、查询、编排、维护等加值处理,藉由各个子系统中的编辑模组、剖析及转换模组、检视模组、排版模组、发行模组......等,可以建立一个适用于网路环境的电子文件整合出版系统.  


一、编辑子系统(Editing  Subsystem)
编辑子系统含三个模组:文件结构编辑模组、文件内容编辑模组和文件样式编辑模组.  


(一)文件结构编辑模组
文件结构编辑模组的主要任务是提供一个定义文件结构的途径,最好具备图形化的使用者介面(Graphic  User  Interface),并将使用者在画面上所定义的结构转换成DTD或XML纲要,作为验证XML文件完构性及有效性的依据.  


(二)文件内容编辑模组
如同一般的文书处理器一般,文件内容编辑模组的任务是提供内容编辑的必要工具,如新增、删除、复制、剪下、贴上......等,若是文件中尚包含多媒体资料,则还需具备支援编辑多媒体资料的能力.

 

(三)文件样式编辑模组
文件样式编辑模组的主要任务在于提供版面和样式的编排,如字型大小、段落间距、排列方式、字体样式......,及有关该文件外观的设定等.然而,由于XML文件不似HTML有内定样式,必须透过CSS或XSL方式来显示,因此,文件样式编辑模组必须有能力将使用者所编排的这些样式转换成CSS或XSL.  


二、核心子系统(Core  Subsystem)
核心子系统主要有三个模组,分别是:剖析模组、转换模组和检索模组.  
(一)剖析模组
建立好的XML文件,必须先检测其语意或结构上有无错误才能进行尔后的处理.因此,剖析模组的任务便是依据DTD或XML  Schema的定义,检测文件的完构性及有效性,并将发现的错误告知使用者,以便于除错及修改.目前已有许多公司以API或ActiveX方式提供现成的剖析器(Parser),可作为发展剖析模组之用,如Microsoft的MSXML.  


(二)转换模组
转换模组主要任务是将文件的诠释资料,依据所定义的结构转成资料库方式储存,其优点是可借助现有资料库管理系统(DBMS)强大的功能,对文件进行查询、存取、管理、传递等处理.  


(三)检索模组
检索模组是提供一个文件检索的机制.由于转换模组已经将文件转存成资料库格式,因此只要藉由通用的资料库检索方式,如结构化查询语言(Structure  Query  Language,  SQL),即可很容易的检索文件内容.  


三、出版子系统(Publishing  Subsystem)
出版子系统主要有两个模组,分别是:发行模组和排版模组.

(一)发行模组
由于数以千万计的网路使用者已经习惯于使用Web浏览器来浏览网路文件,网页也已成了网路资讯传播的重要管道.所以发行模组的主要目的是将文件以Web方式送到伺服器上.  


(二)排版模组
既然要以Web方式发行,排版模组的任务便是依据使用者在编辑子系统中,透过文件样式编辑模组所制订的格式来展现文件内容.而为了相容性问题,应将其转换为浏览器能接受的排版样本或标准HTML,以便
能顺利地在Web浏览器上呈现.  


四、Web子系统(Web  Subsystem)
Web子系统严格说起来,应可独立于’整合性XML文件管理系统’之外,因为它是针对读者设计的,而不是给文件作者、管理者或出版者使用的.它的主要任务是提供Web式的使用者介面,让读者可以透过’检视介面’来阅读文章;透过’查询介面’来检索文件内容.  
综上所述,本系统充分运用XML的特性,将文件的结构、内容、表现三要素分开处理,除了可以让终端使用者顺利地浏览到文件资料,也可以方便电脑对文件进行查询比对,更重要的是它可以提供描述文件的metadata,例如:文件分类、作者姓名、文件标题、摘要、关键字、编制日期......等项目,这些讯息或许并不是读者阅读时的重点,但对于机器在进行资讯检索的过程,却具有重大的意义,在工程效率上以及精确率上都将远高于对全文进行检索.此外,同一份文件资料更可以随意加工处理,以各种不同型式呈现出来,创造各种不同的附加价值.  


陆、结论与建议


XML能够有效的表达网路上各种知识,为资料的交换和处理提供新的机制,因此XML将促使网路从资讯处理阶段跨越到知识管理阶段.

 

从电子出版的角度来看,目前Web上为数众多的网站及互相纠结的HTML文件,在写作之初由于缺乏有效的资料著录,造成资料杂乱、不易检索的问题,因此亟需资讯检索技术与方法来解决;此外,除了致力于技术的发展,在写作及出版的过程中加强Metadata的著录,亦不失为另一个解决网路上电子文件乱象并提升检索精确率的有效方案.XML与生俱来的结构化及自我描述特性,能有效的组织资料、描述资料,以进行语意层次的有意义检索;而其无限扩展的能力,更使其跳脱既定的框架,而在版面编排、多媒体出版、文件共享......等方面发展出独特的应用,在在使XML成为网路出版内、外兼顾的有效方案.  


从资讯传播的角度而言,传播的目的在于建立收送彼此双方的共同性(Commonness),亦即设法共享资讯(Information)、观念(Idea)、态度(Attitude)或知识(Knowledge).传播的双方可能是人对人,也可能是人对电脑或甚至是电脑对电脑.当网路上两部电脑透过通讯协定(Protocol)进行通讯时,只不过具备讯息传递能力.至于讯息的涵义以及如何把这些讯息转换成另一种形式呈现给人们,则正是XML的专长.在未来几年,为因应资讯需求从大众化到个人化的趋势,网路上预料将出现更智慧型的搜索引擎,能根据讯息意涵和使用者需求,提供资讯过滤、资讯撷取、智慧型代理等功能,XML技术能够使这样的目标早日实现.  


从电子商务的角度观之,不同商业系统采用相同的XML词汇集,便能随时自动更新来自各供应商的商品目录和价格资讯,并根据商品类别为客户提供最直观的购物环境.商家之间更可透过金融机构共通的资料交换格式(如以XML制订的OFX)来交换金融资讯,如电子支付、财务分析、咨询文件等;图书馆更可利用XML达到自动化的馆际合作、馆际互借、线上采购等工作.  


有鉴于XML将为Web带来第二波革命(第一波为HTML),目前,产、官、学界无不积极合作,致力于XML相关技术之研究及工具软体、应用程式之开发.我们何其有幸生活在这个科技发达的时代,得以享受新科技所带来的新产品及新服务,大大提升我们的生活品质.当然,科技是多变的,未来更是难以准确预测的,我们也可能成为新科技潮流中被实验的白老鼠.不过,从XML受产、官、学各界关注的程度而言,XML成为下一代Web的整合技术殆无疑义,并将在电子出版、电子商务、电子图书馆、电子资料交换等领域展现其强大的应用潜能,究竟能发挥多少效能,只局限于人们的想像力及创造力.相较于国外XML技术正如火如荼的发展,国内的研究仍处于萌芽阶段,不但中文化的开发工具和应用程式严重不足,连参考文献、研究报告也都寥寥可数,这对提升国家竞争力无疑是一大阻碍.因此,国内亦应尽速结合各界力量,投入XML相关技术之研发,积极从事推动学术、教育、企业各领域早日采用XML标准,以因应未来多变的网路应用环境.  

Posted on 2006-03-31 09:23  王俊锋  阅读(447)  评论(0)    收藏  举报