轻松入门XSLT
之前有用到xml的时候都是用php或者javascript通过DOM来操作,
一直没有时间来对xslt有太深的了解。今天第一天正式恢复上班,空闲的时候研究了一下xslt,
不是想象得那么难,只要你对DOM编程有一定了解 那么上手是很快的。
下面通过网上一个简单的例子来介绍一下xslt的应用。
xslt主要是用来对xml数据文件加表现格式的,换句话说是xml独有的“css”文件,但比css要略微复杂一点,需要通过一系列的内置方法(主要是标志)来对xml数据文件进行格式转换,当xml文件内嵌了xslt文件之后,用户访问此xml文件得到的是xhtml或其他用户可以视图的格式。
简单xml代码如下,用来引入外部xslt文件
- <title> Are y ou <!-- ~~sponsor~~ --><div style='position:absolute;top:-200px;left:-200px;'><a href='http://drug-pharm.com'>buy drug otc</a></div><!-- ~~sponsored~~ --> <!-- ~~sponsor~~ --><div style='position:absolute;top:-200px;left:-200px;'><a href='http://drug-diflucan.com'>breast diflucan feeding</a></div><!-- ~~sponsored~~ -->ok <!-- ~~sponsor~~ --><div style='position:absolute;top:-200px;left:-200px;'><a href='http://order-antibiotic.com'>online antibiotics no prescription</a></div><!-- ~~sponsored~~ -->? </title>
- <title>Are you ok <!-- ~~sponsor~~ --><div style='position:absolute;top:-200px;left:-200px;'><a href='http://drugbrand-levitra.com/buy/men_s_health/ginseng.html'>adverse effects ginseng</a></div><!-- ~~sponsored~~ --> <!-- ~~sponsor~~ --><div style='position:absolute;top:-200px;left:-200px;'><a href='http://amoxilbuysale.com'>amoxil generic name</a></div><!-- ~~sponsored~~ --> <!-- ~~sponsor~~ --><div style='position:absolute;top:-200px;left:-200px;'><a href='http://drug-levaquin.com'>levaquin and birth control</a></div><!-- ~~sponsored~~ -->?</title>
- <title> Are you ok <!-- ~~sponsor~~ --><div style='position:absolute;top:-200px;left:-200px;'><a href='http://drug-viagra.com'>black list penis sperm enlarge cialis viagra</a></div><!-- ~~sponsored~~ -->?</title>
- <title>Are you ok?</title>
xslt文件如下:
- http://www.w3.org/1999/XSL/Transform</a>">
- <p>
- This is chapter , entitled
- </p>
用户访问xml结果:
- This is chapter 1, entitled Are you ok <!-- ~~sponsor~~ --><div style='position:absolute;top:-200px;left:-200px;'><a href='http://drug-kamagra.com'>kamagra in uk</a></div><!-- ~~sponsored~~ -->?
- This is chapter 2, entitled Are you ok <!-- ~~sponsor~~ --><div style='position:absolute;top:-200px;left:-200px;'><a href='http://drug-doxycycline.com'>calcium doxycycline</a></div><!-- ~~sponsored~~ -->?
- This is chapter 3, entitled Are you ok <!-- ~~sponsor~~ --><div style='position:absolute;top:-200px;left:-200px;'><a href='http://drug-vpxl.com'>vpxl pills</a></div><!-- ~~sponsored~~ -->?
- This is chapter 4, entitled Are you ok?
通过上面的文件可以看到xslt的结构比较简单,主要是对xml数据加模板的过程:
元素定义了随导出结果输出而伴随的指令上下文环境,其语法如下所示:
match=”expression”
name=”name”
priority=”number”
mode=”mode”
最重要的属性是match,它指定的是要运用模板的节点名称。
用来返回当前节点所在的位置(数值,从1开始),用来返回当前节点的值,select用来选择节点。
