【问题标题】:flush XML tags having certain value刷新具有特定值的 XML 标记
【发布时间】:2010-04-03 03:11:55
【问题描述】:

我有一个返回 XML 的 web 服务,如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<contractInformation>
    <contract>
        <idContract type="int">87191827</idContract>        
        <region type="varchar">null</region>
        <dueDate type="varchar">null</dueDate>
        <contactName type="varchar">John Smith</contactName>
    </contract>
</contractInformation>

我想清空每个包含字符串 null 的标签,所以它看起来像这样:

<?xml version="1.0" encoding="UTF-8"?>
<contractInformation>
    <contract>
        <idContract type="int">87191827</idContract>        
        <region type="varchar"/>
        <dueDate type="varchar"/>
        <contactName type="varchar">John Smith</contactName>
    </contract>
</contractInformation>

我如何使用 XSLT 来实现这一点?

【问题讨论】:

    标签: xml xslt


    【解决方案1】:

    使用和覆盖身份规则

    <xsl:stylesheet version="1.0"
     xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
     <xsl:output omit-xml-declaration="yes" indent="yes"/>
    
     <xsl:template match="node()|@*">
      <xsl:copy>
       <xsl:apply-templates select="node()|@*"/>
      </xsl:copy>
     </xsl:template>
    
     <xsl:template match="text()[.='null']"/>
    </xsl:stylesheet>
    

    【讨论】:

      猜你喜欢
      • 2015-06-20
      • 1970-01-01
      • 1970-01-01
      • 2018-07-27
      • 1970-01-01
      • 1970-01-01
      • 2023-04-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多