gpt4 book ai didi

xslt - 如何通过索引使用 XSLT 选择指定的元素?

转载 作者:行者123 更新时间:2023-12-02 05:13:21 24 4
gpt4 key购买 nike

我这里有一个 xml 文件:

<DM_Function Function="attribute value">
<DM>
<DM_Source SourceID="id1" SourceTitle="Title1" SourceContent="content1">
</DM_Source>
</DM>
<DM>
<DM_Source SourceID="id2" SourceTitle="Title2" SourceContent="content2">
</DM_Source>
</DM>
<DM>
<DM_Source SourceID="id3" SourceTitle="Title3" SourceContent="content3">
</DM_Source>
</DM>
</DM_Function>

在 XSLT 文件中,有一个变量:

<xsl:param name="dmIndex" select="2" />

我想把这个XML文件转换成另一个。变量是元素的索引,我希望另一个XML文件只显示根元素和指定的元素(包括属性)。

最佳答案

这个转换:

<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output omit-xml-declaration="yes" indent="yes"/>
<xsl:strip-space elements="*"/>

<xsl:param name="dmIndex" select="2" />

<xsl:template match="/*">
<xsl:copy>
<xsl:copy-of select="@*"/>
<xsl:copy-of select="DM[$dmIndex]"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>

应用于提供的 XML 文档时:

<DM_Function Function="attribute value">
<DM>
<DM_Source SourceID="id1" SourceTitle="Title1" SourceContent="content1">
</DM_Source>
</DM>
<DM>
<DM_Source SourceID="id2" SourceTitle="Title2" SourceContent="content2">
</DM_Source>
</DM>
<DM>
<DM_Source SourceID="id3" SourceTitle="Title3" SourceContent="content3">
</DM_Source>
</DM>
</DM_Function>

产生想要的、正确的结果:

<DM_Function Function="attribute value">
<DM>
<DM_Source SourceID="id2" SourceTitle="Title2" SourceContent="content2"/>
</DM>
</DM_Function>

关于xslt - 如何通过索引使用 XSLT 选择指定的元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3305476/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com