【问题标题】:Avoid self closing tag - Biztalk envelope schema避免自闭标签 - Biztalk 信封架构
【发布时间】:2015-03-16 10:43:25
【问题描述】:

在我的 XSLT 调用模板下,我想在值为空时避免使用自闭合标记。

如果没有值,错误标签的输出是:

<ns0:Error />

但是我想得到输出为

<ns0:Error></ns0:Error>  

【问题讨论】:

  • 更正我的问题:我想在值为空时避免自闭标签。如果没有值,则错误标记的输出为: 但是我想将输出作为
  • 您的更正不清楚:您是否希望输出元素具有空格字符而不是空字符?
  • 这是作为 BizTalk 映射中的内联调用模板脚本函数完成的,还是完全在自定义 XSLT 中完成?另外,您能否提供更多信息说明您为何有此要求?

标签: xml xslt biztalk


【解决方案1】:

您可以选择将输出方法更改为“html”,这应该可以防止自动关闭标签:

<xsl:output method="html" indent="yes" />

如果这不是一个选项,因为输出不是 html,我认为它不是来自您的示例,那么您可能想通过在元素中添加空白内容来欺骗 XSLT。

<xsl:variable name="blank" select="''"/>
<xsl:template match="@* | node()">
  <xsl:copy>
    <xsl:apply-templates select="@* | node()" />
    <xsl:value-of select="$blank"/>
  </xsl:copy>
</xsl:template>

【讨论】:

  • 可能适用于某些处理器(例如 libxslt),但不适用于其他处理器(Xalan、Saxon)。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-01-20
  • 2011-09-07
  • 1970-01-01
  • 2020-06-06
  • 1970-01-01
相关资源
最近更新 更多