如果所有标签都等于值,XSLT 返回布尔值

2023-12-05

我有一个xml:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
    <success>0</success>
    <success>0</success>
    <success>1</success>
</soapenv:Body>

我想实现这样的逻辑:如果成功标签之一等于 0,则返回 true;如果所有成功标签都等于 0,则返回 false。

到目前为止,我已经做到了,但我不知道如何使 xslt 重新调整 errorFlag=false(如果它们全部为 =0):

<xsl:template match="/">
  <xsl:call-template name="test" />
</xsl:template>

 <xsl:template match="/soapenv:Envelope/soapenv:Body" name ="test">
   <errorFlag>
     <xsl:if test="contains(.,'0')">true</xsl:if>
   </errorFlag>
</xsl:template>

想要的输出 - 只有一个字段:

<errorFlag>true<errorFlag> (if all are success=0)

怎么样:

<xsl:template match="/">
    <errorFlag>
         <xsl:value-of select="not(/soapenv:Envelope/soapenv:Body/success=1)" />
    </errorFlag>
</xsl:template>

或者(需要 XSLT 2.0):

<xsl:template match="/">
    <errorFlag>
        <xsl:value-of select="every $item in /soapenv:Envelope/soapenv:Body/success satisfies $item=0"/>
    </errorFlag>
</xsl:template>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如果所有标签都等于值,XSLT 返回布尔值 的相关文章

随机推荐

  • 动态更新fabric.js路径点

    我正在尝试动态地将点添加到路径对象 当我这样做时 路径会正确渲染 但边界矩形永远不会更新 这使得用户几乎不可能在画布上选择和移动路径 正如您在下面的代码中看到的 路径最初是使用单个点创建的 然后我动态添加第二个点以及控制点 执行此操作后 边
  • 如何使用 Apache POI 将 docx 中的文本(标签)替换为 HTML?

    我们将有一些模板 docx 文件 其中会有一些标签 例如 content 我需要用 HTML 替换这个标签 为此 我想在 XWPFDocument 中使用 altChunk 元素 以下答案在如何使用 Apache POI 将 altChun
  • 使用逗号格式化数字字符串

    我想格式化数字 我见过一些在数字字符串中插入逗号的正则表达式示例 都是连续检查3位数字 然后在数字中插入逗号 但我想要这样的东西 122 as 122 1234 as 1 234 12345 as 12 345 1723456 as 17
  • C 匹配组中的正则表达式

    我一直在努力解决 C 中的正则表达式 只是 usr include regex h 我有 比方说 数百个正则表达式 其中之一可以匹配输入字符串 目前我正在这样做 实际上生成它 如下所示 数百个 do while 内部有匹配 如果不匹配则中断
  • Hibernate多对多,重复相同的记录

    我尝试使用注释进行 Hibernate 映射多对多 并使用 vaannila 中给出的示例 http www vaannila com hibernate hibernate example hibernate mapping many t
  • 更新另一个视图上的标签

    我有两个视图 其中一个带有标签 在第二个视图上 有一个按钮 我想在这里实现的是能够按下按钮并更新第一个视图上的标签 我怎么做 我无法从第二个视图访问 IBOutlet 我必须对 IBOutlet 做些什么才能将其公开等吗 您可以使用NSNo
  • 如何在C#中的dll中进行全局异常处理?

    Dll 在 C 中没有入口点 因此我需要将全局异常处理的代码放在一处 因为这些 dll 在 exe 中引用 并且所有 dll 都有 try catch 但存在一些错误 导致它崩溃并识别我们正在尝试创建故障转储 任何人都可以建议这是可行的解决
  • 使用 HttpClient 发布自定义类型

    我有一个自定义 dto 类 public class myObject public string Id get set public string Name get set 和使用 Web Api 的控制器 4 5 net 框架 Http
  • 如何在 C 函数内使用全局结构引用填充结构指针?

    我是 C 新手 无法理解为什么 my struct ptr main 在下面的示例中为零 如何将 my structs 数组中结构的地址分配给 get my struct by name 函数中的 my struct ptr 指针 stru
  • Python 中根据条件求和嵌套列表

    我有一个嵌套列表 如下所示 Vienna 2012 890 503 70 London 2014 5400 879 78 London 2014 4800 70 90 Bern 2013 300 450 678 Vienna 2013 70
  • 将节点排列在特定位置

    在下面的 vis network 中 我有 2 组节点 我通过在生成一个节点后访问节点位置将 2 组节点分为左侧和右侧layout as tree 然后使用visEvents在节点组周围画了一个椭圆 以显示更定义为 2 个单元结构的分离 我
  • 如何向我的应用程序实时获取路线详细信息

    我正在为我的年终项目做一个 arduino 项目 我正在为自行车骑手制作一款智能手套 它可以通知电话 健康跟踪 地理跟踪和导航 我想知道是否有任何方法可以获取有关逐向导航到我的应用程序的详细信息 即 如果谷歌导航说 左转 则获取该详细信息并
  • 使用 Android Beam(或 S-Beam)发送大文件

    我的任务是为一个应用程序添加支持 以便通过 Android 上的 NFC 在设备之间传输大型数据文件 数十兆字节 我知道 Android 上的真正 NFC 速度非常慢 但我知道 ICS 支持将批量数据传输移交给蓝牙 三星拥有一种专有机制 可
  • java.lang.IllegalArgumentException:已添加:Lcom/google/android/gms/iid/MessengerCompat

    So I ve searched a lot on the internet already on what the error is causing me and they are all saying that a library ha
  • 在 64 位操作系统上的 32 位应用程序池中运行我的网站

    这是我的设置 开发 Windows Server 2008 64 位 视觉工作室 2008 具有 3 个类库 1 个 Web 应用程序的解决方案 暂存网络服务器 Windows Server 2008 R2 64 位 IIS7 5集成应用程
  • 如何检查输入字符串是否包含大写和小写组合?

    我想知道如何检查输入字符串是否包含大写和小写组合 之后打印一条语句以显示输入字符串包含大写和小写的组合 第0步 你需要的变量 char str int i char found lower found upper 第一步 遍历字符串 for
  • 如何使用 ASP.NET Identity 2.0 允许用户模拟另一个用户?

    我正在将 ASP NET MVC 5 1 应用程序从 MembershipProvider 迁移到 ASP NET Identity v2 0 该应用程序的功能之一是用户模拟 管理员可以像在网站上注册的任何其他用户一样登录 而无需知道密码
  • 如何在 Swing 应用程序中使用退出按钮?

    我是使用 Swing 进行 Java 表单应用程序开发的新手 用于退出应用程序的退出按钮的合适代码是什么 例如 在 C NET Framework 中我们使用Application Exit 作为退出按钮的代码 Java 中退出应用程序的等
  • 为什么对于回溯,有时我们需要在递归后显式弹出,有时则不需要?

    例如 让我们考虑一个任务 我们需要找到给定字符串的所有排列 保留字符序列但改变大小写 这是没有回溯的解决方案 pop def letterCasePermutation S type S str rtype List str def bac
  • 如果所有标签都等于值,XSLT 返回布尔值

    我有一个xml