ITPub博客

首页 > Linux操作系统 > Linux操作系统 > XML PUBLISH 的一点总结(转)

XML PUBLISH 的一点总结(转)

原创 Linux操作系统 作者:blueshine07 时间:2011-09-07 16:13:45 0 删除 编辑
XML PUBLISH 的一点总结转自http://seanliu.sa.blog.163.com/blog/static/10296591120093771037627/

xsl 语法简介:
1.寻找(定位)数据:locating date
在XML文档中使用路径表达式来定位数据,例如:下面的实例中返回所有的CD元素
//CATALOG/CD
双斜线(//)指示满足查询标准的XML文档中的所有元素
单斜线(/)用于区分子节点

例如:
其中,//G_LINES[LINE_TYPE='LINE']的方括号为进一步的限制查询,
可以使用@symbol来确定属性,例如//CD[@cattype="Rock"]

同样,可以使用布尔表达式竖线(|)来连接多个复杂的查询 例如
//CD[@cattype="Folk"]|//CD[@cattype="Rock"]


2.上下文联系与父关系
为了选择当前元素及其父元素,xsl语言将dot(点.)符号来导航目录,使用单个点(.)表示当前节点,使用(..)来返回当前节点的父层
例如,获取所有节点的父层的用法为: ../*


3.使用上下文命令 context commands
--作用:1.定义if条件表达式,2.创建一个新的头及其页码在循环语句中(for-each)3.定义变量
语法:
 1)在xml publisher中使用的简单语法为:@context,例如:<?for-each@section:INVOICE?>用于每次occurrence时,组INVOICE产生一个新的段 @section后似乎不能跟参数
*2)对于xsl语言而言: 需要增加xdofo:ctx="context"属性来特别指出插入指令

  context 包括:
  section  -- 等同于for-each@section例如
  column   --用于显示/隐藏表的column
  cell     --
  block    --主要使用于if/for-each中
  inline   --用于变量
* incontext--The statement is inserted immediately after the surrounding statement. This is the default for statements that need to follow the surrounding for-each as
             the first element.
* inblock  --This is typically not useful for control statements (such as if and for-each) but is useful for statements that generate text, such as call-template.
  inlines  --
  begin    --
  end      --


4.各类语法
  定义模版规则:XSL Syntax:
  拷贝当前节点:XSL Syntax:
  调用模版:    XSL Syntax:
  模版声明:    XSL Syntax:
  变量声明:    XSL Syntax: Example:
  倒入连接:    XSL Syntax:

5.position() function returns a record counter while in the loop,可以把position当成一个指针,返回当前记录集的在具体某一行的行数,

6.如何定义参数:
  --定义常数
  --定义动态的变量

7.换页的方法
  a.page
  b.如果按固定行换页: 需要定义2个参数
  在end-each前加上:
 page
  其中$start为每页起始行的position(),$lpp为每页固定行的行数,count($invLines)每个header对应的总行数,
  c.在某处强制分页如新组新页,那么可以使用Word的分页符(CTRL+ENTER快捷键),但会导致最后出现空白页;
  d.分组声明中加@section,如<?for-each@section:G_PO_HEADER?>。
  e.前加。这个翻译后,实际上是:
   
    page
   

  f. 前加page,此法下RTF最后无空白页,但PDF有空白页。
  g. 前加page此法下RTF、PDF最后都有空白页。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25103190/viewspace-706836/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2011-08-26

  • 博文量
    55
  • 访问量
    151248