gpt4 book ai didi

xml - XSLT 在输出文件中注入(inject)不需要的命名空间

转载 作者:数据小太阳 更新时间:2023-10-29 01:46:34 25 4
gpt4 key购买 nike

我看过类似的问题,但我还是不清楚。我不希望“n1”命名空间出现在输出文件中节点的属性中。但是我必须在 xslt 文件中创建“n1” namespace 才能使 xpath 工作。谢谢。

XSLT:

   <xsl:stylesheet version="1.0" 
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:n1="http://www.spicefactory.org/parsley"
xmlns="http://www.spicefactory.org/parsley"
>

<xsl:output method="xml" indent="no"/>

<xsl:template match="node()|@*">
<xsl:copy>
<xsl:apply-templates select="node()|@*"/>
</xsl:copy>
</xsl:template>

<xsl:template match="n1:object[@type='mytype1']">
<object type="mytype2">
<xsl:apply-templates select="node()"/>
</object>
</xsl:template>

从输出 XML 文件中摘录:

<object type="mytype2" xmlns:n1="http://www.spicefactory.org/parsley">

最佳答案

使用 exclude-result-prefixes <xsl:stylesheet> 上的属性元素。

<xsl:stylesheet version="1.0" 
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:n1="http://www.spicefactory.org/parsley"
xmlns="http://www.spicefactory.org/parsley"
exclude-result-prefixes="n1"
>

关于xml - XSLT 在输出文件中注入(inject)不需要的命名空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4973596/

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