浅析XSLT

XSLT是一种用来转换XML文档结构的说明性计算机语言,随着网络时代的发展,它的应用场合越来越广泛,影响力也越来越大。从不同观点来看,XSLT或XSL转换可以说是对XML最好的发展,也可以说是迄今发明的最恐怖的计算机语言之一。

首先,我们要知道XSL与XSLT之前要了解可扩展标记语言(EXtensible Markup Language,XML)。它是由标准化的通用标记语言(Standardized General Markup Language,SGML)派生出来的,尽管它的名字表明它是一种标记语言,且它不仅仅是一种简单的标记语言,而是一种创建和管理标记的语言。XML文档由文字组成,除此之外,没有其他的内容。XML与HTML有些相似,它们都使用尖括号,&符号等等,但它却比HTML更为强大。在XML中,定义元素的标记必须成对匹配。尽管XML文档内在的逻辑结构是完美的,但对习惯于Web页面和精美输出的用户来说,XML文档简直是丑陋之极。XML真正的优势在于数据交换格式方面,而不在于数据存储格式方面。如果将XML信息传递给某个不支持XML的应用或传递给使用其他的XML词汇表的应用,这时候需要分别为上述情况编写单独的转换程序。XSL是以XML为基础的样式单语言来表示CSS属性。XSL的设计不仅受到CSS和XML的强烈影响,而且还受一种称为文档格式语义及规范语言DSSSL的影响。

XSLT转变工作的原理与造型软件有些相似,大体上来说,样式单中的代码描述了XML源文档的所有内容,而这些内容也正是所要生成的结果文档中的内容。在XSLT转变中,没有必要像上述厨师到刽子手的变形过程中那样在相同的地方建立点到点的一一对应关系,可以将相关的内容放在任意位置。XSLT是解决转换问题的一种通用方案。对于各种不同的文档结构,通用解决方案是很有用的,因为我们不需要为各种不同的文档结构编写定制的程序代码。虽然需要为每种结构编写定制的样式单,但这些样式单通常都比过程化语言(如C++和Java)编写的程序要简单。XSLT的样式单不仅容易编写,而且也容易读,不熟悉XSLT的人都可以读懂它。因为开发的简单性和易懂性,相对于文档处理应用程序,XSLT样式单的效率要高得多。为每种文档开发特定的程序的工作量是相当惊人的,更不用说为每个文档开发一个应用程序,这也正是阻碍文本处理应用被广泛接受的一个主要原因。简而言之,XSLT在文档处理应用的两个互相矛盾的目标,即简单性和通用性这间起着重要的平衡作用。为了使XML“举止”像其他的东西,而不仅仅是表示纯内容标记,必须将它转换成其他的格式。从长远范围来看,较为简单的解决方案是使用一种通用的方法来完成对XML文档的转换。

XSLT不能指示计算机如何取得预期的结果,这正是XSLT样式单区别于传统意义上的真实“计算机编程语言”之处。XSLT仅简单地描述了结果是什么样的。而真正的转换工作,要由称为XSLT引擎或XSLT处理器的应用程序完成,并按它为合适的格式产生结果。XSLT转换的工作是指定一些由XSLT处理器实现 的结果,这些结果是对源文档中的指定部分的转换描述。简而言之,它将源树(source tree)转化为结果树(result tree)。“树”指的是某种结构化的数据,这些数据被组织成层状结构,而且源树中的数据必须是XML形式的。结果树可以是任意类型的广西。可以将XML文档转换为没有标记的,以逗号分隔平板式文档,然后将这些数据导入到数据库去;或将其转换到另一个XML词汇表中,或将其导入相同XML词汇表的另一个版本中。

XMLT能够引起人的注意,是因为可以同时巧妙地处理多个文档。其处理模型定义了下列行为:一个样式表可以引用多个XML输入文档。在这种情况下,必须有一个主要的源文件与此样式表相关联;另一方面,样式表可以接着再引用另外的输入文档。样式表可以引用额外的样式表文档,允许模块化用户样式表。这里也必须有一个主要的样式表文档。该样式表接着可以利用xsl:import和xsl:include元素引入或包含多个样式表。对于大多数XSLT处理机来说,另一个有用的功能是能够在其单次运行中产生多个输出。XSLT标准目前尚未支持这一功能。不过,市场上的许多产品提供这一功能。顶级元素和指令,这两个术语都与XSLT样式单的结构相关。样式单本身是个良构的XML文档,而为了实现良构,它只能有一个根元素。在XSLT中,这个根元素是xsl:stylesheet。在xsl:stylesheet元素的开始及结束标签之间是顶级元素和指令的混合体。它包括所有的名字在XSLT名字空间内的元素,也就是说他们的名字都是以xsl:为前缀的。所谓的顶级元素,指的是xsl:stylesheet的直接子元素;相反,所谓的指令,指的是包含在某些顶级元素中的内容。任何一个模板都必包含在一个顶级元素中,也就是说,模板不能是根元素xsl:stylesheet的直接子元素。

(作者单位:长江大学计算机科学院网络工程10802班)

浅析XSLT

转载请注明出处学文网 » 浅析XSLT

学习

“蓝血”到底是什么?

阅读(33)

本文为您介绍“蓝血”到底是什么?,内容包括蓝血啥意思,蓝血研究是什么。从“蓝血十杰”说起

学习

斯坦福监狱实验

阅读(24)

本文为您介绍斯坦福监狱实验,内容包括1971年斯坦福大学的监狱实验,1971年斯坦福监狱实验的真相。提要:“最卑劣的行为就像有毒的杂草一样繁茂地生长在监狱的空气里——OscarWilde。”是否好人也会犯下恶行?如果会,是什么让好人越界犯错?有没

学习

浅谈人与自然的关系

阅读(40)

本文为您介绍浅谈人与自然的关系,内容包括人与自然的关系推荐背诵手册,人与自然关系演变历程及看法。摘要:马克思批判了旧唯物主义的自然观,并对人与自然的关系进行了阐述。20世纪人类面临着严重的生存环境问题,保护环境,走出生存危机已

学习

五百年来谁著史

阅读(28)

本文为您介绍五百年来谁著史,内容包括五百年来谁著史,五百年来谁著史全诗。1567年,明穆宗朱载隆庆元年,明帝国开放“银禁”与“海禁”,通俗地说:这等于把帝国“央行”从北京搬到了拉美矿山。

学习

尘世喜悦无处不在

阅读(43)

她说,读过《浮生六记》后,深爱书中芸娘的贤淑有情调,所以呢,她想学学芸娘。第一个就学她在黄昏时分,把茶叶放在将开的荷花里,第二天清晨再取出煮茶,那沾染了荷花香气的茶,清香扑面,回味悠长哩。

学习

生理卫生课

阅读(47)

本文为您介绍生理卫生课,内容包括生理卫生教材全文,生理卫生课和性教育。教育局的老师听完欧阳老师的课,在校长办公室里展开了一场激烈的争论――

学习

夜深人静的时候

阅读(25)

本文为您介绍夜深人静的时候,内容包括夜深人静时全文,形容夜深人静的句子。既然要扛起人间的正义,就得放下儿女情长;既然从事公安工作,就要讲奉献,肯付出。“夜深人静的时候是想家的时候,想家的时候啊,更想为家做点事……”这首名为《想家的时

学习

物流信息技术

阅读(35)

本文为您介绍物流信息技术,内容包括物流信息技术,物流信息技术。【摘要】物流信息技术是物流现代化的重要标志,也是物流技术中发展最快的领域,从数据采集的条形码系统,到办公自动化系统中的微机、互联网,各种终端设备等硬件以及计算机软件都

学习

浅析马克思主义唯物史观

阅读(25)

本文为您介绍浅析马克思主义唯物史观,内容包括浅议马克思主义的唯物史观,马克思主义唯物史观形成标志。关键词:唯物史观马克思主义哲学科学社会发展规律

学习

企业文化的作用1

阅读(28)

本文为您介绍企业文化的作用1,内容包括企业文化的理解实际案例,企业文化的作用及意义短篇文章。文化对企业能力的形成、作用和保持、促进起着根本性的作用,因为文化决定着企业在市场活动中的态度,决定着企业产品(服务)属性的价值取向,决定着

学习

中华民族传统美德

阅读(32)

本文为您介绍中华民族传统美德,内容包括中华民族优良的传统美德,中华民族的传统美德。作为一个中国人,可堪自豪的事物实在太多了。我们勤俭而诚恳,悌孝仁义,友善而勇敢,这是叫亿万炎黄子孙倍感骄傲的传统美德。

学习

你说,后来

阅读(48)

本文为您介绍你说,后来,内容包括你说后来全文完整版,你说后来全文。千年的等待,只等你转身时的惊艳。

学习

浅析《灶神之妻》中的文化创伤

阅读(46)

本文为您介绍浅析《灶神之妻》中的文化创伤,内容包括灶神之妻讲的什么,灶神之妻讲什么故事。摘要:谭恩美的第二部作品《灶神之妻》是一部书写苦难的作品,其中不仅涵盖了个人创伤也反映了中国社会的文化创伤。本文从文化创伤理论角度出发解

学习

浅析安全生产的重要性

阅读(28)

本文为您介绍浅析安全生产的重要性,内容包括浅析安全生产的重要性,关于安全生产的重要论述全文。心系安全,付诸实践。古往今来,“安全”在生产过程中是一个不可或缺的角色。安全与生产,两者息息相关,密不可分,忽略安全保护工作,必然发生伤亡事

学习

浅析后天论的影响因素

阅读(29)

摘要:社会学中,关于社会环境对儿童发展是否有影响存在争议,有先天论与后天论两种观点。在社会科学中,认为人类的行为和知识,基本上是后天习得的。在没有排斥先天的禀赋的同时,更是认同了后天环境的影响。后天环境的影响因素有很多,本文从音乐教

学习

新闻娱乐化浅析

阅读(23)

本文为您介绍新闻娱乐化浅析,内容包括新闻娱乐化现象探析摘要,新闻娱乐化的利与弊通俗。【关键词】新闻娱乐化

学习

电厂水处理浅析

阅读(24)

本文为您介绍电厂水处理浅析,内容包括电厂水处理技术操作规程,电厂水处理方案比较。【摘要】本文以电厂水处理为研究对象,首先论述了当前电厂中汽水的流程,分析了电厂水处理的重要性,在此基础上,提出了电厂水处理工作的内容。

学习

浅析分式方程的增根

阅读(30)

本文为您介绍浅析分式方程的增根,内容包括什么是分式方程增根通俗易懂,怎样判断分式方程是增根。1.什么是分式方程的增根

学习

粘土稳定剂研究现况浅析

阅读(21)

本文为您介绍粘土稳定剂研究现况浅析,内容包括粘土稳定剂研究,粘土稳定剂的作用机理。摘要:本文综述了不同油田开发和应用的多种粘土稳定剂,即无机类粘土稳定剂、有机类粘土稳定剂、小阳离子类粘土稳定剂和复合型粘土稳定剂。分析并介绍了

学习

土工试验浅析

阅读(28)

本文为您介绍土工试验浅析,内容包括土工试验报告解读,土工试验方法标准。关键词:土工试验;重要性;含水率试验;密度试验;固结试验;常见问题;相关性