XSLT - 如何只输出属性值而忽略元素的值
XSLT - How do output only the attribute values and ignore the value of the element
我是一个有菜鸟问题的菜鸟
我正在尝试 XML -> XSLT -> XML 转换,以将供应商平台中创建的内容与遗留发布渠道集成。
我卡住了。输入 XML 文档有一个值作为属性,我希望它作为输出 XML 文档中的新元素文本。我可以做到,但我想忽略原始 xml 文档中元素的值,它不会消失!
感谢您的帮助。这是示例:
输入XML
<author value="Firstname LASTNAME">123456789</author>
期望的输出XML
<owner>Firstname LASTNAME</owner>
损坏的 XSLT
<xsl:template match="author">
<owner>
<xsl:value-of select="@display_value" />
</owner>
<xsl:apply-templates></xsl:apply-templates>
</xsl:template>
xml XSLT 损坏的结果
<owner>Fistname LASTNAME</owner>123456789
您从原始 xml 文档中看到元素的值,我希望它消失。我不需要它。我哪里做错了?
从您的代码中删除 apply-templates
表达式即可完成任务
<xsl:template match="author">
<owener>
<xsl:value-of select="@value"/>
</owener>
</xsl:template>
我是一个有菜鸟问题的菜鸟
我正在尝试 XML -> XSLT -> XML 转换,以将供应商平台中创建的内容与遗留发布渠道集成。
我卡住了。输入 XML 文档有一个值作为属性,我希望它作为输出 XML 文档中的新元素文本。我可以做到,但我想忽略原始 xml 文档中元素的值,它不会消失!
感谢您的帮助。这是示例:
输入XML
<author value="Firstname LASTNAME">123456789</author>
期望的输出XML
<owner>Firstname LASTNAME</owner>
损坏的 XSLT
<xsl:template match="author">
<owner>
<xsl:value-of select="@display_value" />
</owner>
<xsl:apply-templates></xsl:apply-templates>
</xsl:template>
xml XSLT 损坏的结果
<owner>Fistname LASTNAME</owner>123456789
您从原始 xml 文档中看到元素的值,我希望它消失。我不需要它。我哪里做错了?
从您的代码中删除 apply-templates
表达式即可完成任务
<xsl:template match="author">
<owener>
<xsl:value-of select="@value"/>
</owener>
</xsl:template>