繁体   English   中英

xsl或xsl-fo处理动态xml

[英]xsl or xsl-fo to handle dynamic xml

我有一个可以动态处理的xml文件(在下面的xml示例中,行数可以是0、1、2或很多)。 xsl(或xsl-fo)如何处理这种情况? 任何示例或指针将不胜感激。

<form>
    <table>
        <row>
            <date>2012-02-10</date>
            <departure>Boston</departure>
            <arrival>NYC</arrival>
            <typeOfTransport>Flight</typeOfTransport>
            <estimatedCost>$300.00</estimatedCost>
        </row>
        <row>
            <date>2012-02-12</date>
            <departure>NYC</departure>
            <arrival>Boston</arrival>
            <typeOfTransport>Flight</typeOfTransport>
            <estimatedCost>$200.00</estimatedCost>
        </row>
    </table>
</form>

这将针对每个对象使用XSL(以便与多个匹配的XML元素等重用):

<xsl:for-each select="form/table/row">
  <!-- Content -->
</xsl:for-each>

它使用XPath表达式指定要处理的节点集-在这种情况下,该row位于formtable

函数分配的内容将针对每个匹配的节点(因此而得名)执行/重复。

如果没有(0 row ),则不会调用它。 对于两row它将被调用两次。

许多人将其称为for-each“循环”-但这是用词不当(由于不是循环,因此无法break XSL for-each的方法)。

请参阅W3Schools教程:

http://www.w3schools.com/xsl/el_for-each.asp

另请参阅此问题,它将帮助您了解所执行操作的范围/上下文:

XSLT和XSL-FO有什么区别?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM