Xml Xsl 备忘

       Xml Xsl(eXtendion Style Language),Xsl可以用来控制Xml文件的呈递效果。配合Xml文件中存储的数据能灵活的开发出很多非常有意思的程序。

       Xsl语言工作程序是基于模板的,系统提供了一些基础的模板,自己也可以定义自己的模板。假如有这样一个xml文件

      在根节点books下有2个子节点,现在我们想对这两个节点应用不同的外观效果,我们可以这么做:

  

               最终效果是:book节点是以无序列表的形式来呈递数据,publisher是一表格的形式来呈递数据。

               该xsl文件的执行流程如下:

              1 检查跟节点(match=“/" 这里的跟节点不是books,books是根节点下的第一个节点)有没有符合的模板--------找到

              2 遇到了<apply-templates/>系统模板,该模板的功能是递归调用当前节点的所有子节点,如果有符合模板的就处理,没有就忽略。

              3 递归到book节点,执行template(match="book")----------ok

              4 递归到publisher节点,执行template(match="publisher")----------ok

              5 递归调用结束,处理结束

       match属性里面的值是什么?

               match属性里面保存的值是xpath表达式,如果把xml比作数据库,那xpath就是sql语言

       系统提供了哪些模板?

                <apply-templates> 从当前节点开始,递归调用子节点

                <value-of> 获取值的模板

                <for-each> 迭代

                <copy>

                <attribute>生成一个元素的属性

                <comment>

                <choose> 多条件选择

                <when> 多条件选择

                <otherwise> 多条件选择

                <if> 条件选择

                <stylesheet> xsl文档的声明语句

                <template>声明模板

                <variable> 声明变量

                <call-template>调用模板

        怎么使用这些系统模板?

 

 

下面看一个具体的例子:

xml文件:

xslt文件:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值