如何通过 javax.xml.transform.Transformer.transform() 调用指定 sortBy?
我正在使用 javax.xml.transform.Transformer.transform() 通过 xsl 样式表将一个 xml 转换为另一个 xml。我想以编程方式设置第一级儿童的排序,但不确定如何进行。我已经检查了 docs,但我不明白要使用哪种类型的属性/参数以及如何在排序中指定:
我对其他想法持开放态度,但不想将 xml 结果解析为 w3c 文档。
编辑: 为了澄清这一点,我希望通过 Transformer API 设置 xsl:for-each
标记中元素的排序键和方向。
I'm using javax.xml.transform.Transformer.transform() to convert one xml to another through an xsl stylesheet. I would like to programatically set the sorting of the first level of children, but am unsure how to go about it. I've checked out the docs, but I don't understand which type of property/parameter to use and how to specify in sort:
<xsl:sort select="*need to get property or parameter to here*"/>
I am open to other ideas, but would rather not parse the xml result into a w3c document.
Edit:
To clarify I am looking to set the sort key and direction for the elements in a xsl:for-each
tag via the Transformer API.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
此样式表:
使用此输入:
输出:
注意:您可以将
pSortingBy
参数定义为遵循 XSLT 处理器规范的任何元素名称。编辑:我不是java专家,但我认为你可以这样做:
This stylesheet:
With this input:
Output:
Note: You could define
pSortingBy
param to be any element name following specifications from your XSLT processor.Edit: I'm not a java expert, but I think you could do:
它需要进入 for-each 或 apply-templates,并且您指定要排序的表达式。
来自 http://www.w3schools.com/xsl/el_sort.asp:
It needs to go in a for-each or apply-templates, and you specify the expression to sort on.
From http://www.w3schools.com/xsl/el_sort.asp: