0

据我在 MobileFirst Adapter Transformation using XSL 中了解。

我们将数据作为文本输出,这意味着将 XML 转换为文本并通过适配器转发。

我的情景

  1. 只有当 XML 包含一些我需要的相关数据时,我才需要解析 XML,比如Catalog下面的 XML 中的数组不等于0.
  2. 如果相关数据不存在,我不希望 XSL 解析我的 XML,让 MobileFirst 自己进行解析并将结果发送给我。

例子:

XML

<catalog>
    <cd>
        <title>Empire Burlesque</title>
        <artist>Bob Dylan</artist>
        <country>USA</country>
        <company>Columbia</company>
        <price>10.90</price>
        <year>1985</year>
    </cd>
    <cd>
        <title>Hide your heart</title>
        <artist>Bonnie Tyler</artist>
        <country>UK</country>
        <company>CBS Records</company>
        <price>9.90</price>
        <year>1988</year>
    </cd>
</catalog>

我的 XSL:

<xsl:template match="/">


        <xsl:choose>

        <xsl:when test="count(*//catalog) != '0'"> 
               dosomething

        </xsl:when>
        <xsl:otherwise>
           i want to go back to normal mobilefirst way of converting XML to Json 
        </xsl:otherwise>
  </xsl:choose>

</xsl:template>

我的问题 :

有没有办法再次将普通的 XML 文件输出到 MobileFist 适配器,以便完成 aapter 的普通 XML 到 JSON 的转换。这我想从 Adaptername.xsl 文件中完成?

4

1 回答 1

0

XSL 转换无法“即时”决定是否继续进行转换。

这可能需要您提出第二个请求。

  1. 获取 XML
  2. 检查它是否包含需要节点
  3. 发送另一个请求,但这次发送到执行转换的过程
于 2015-03-24T08:14:20.973 回答