0

我正在转换 XML 文档,并希望将整个内容转储到转换器的内容节点中。

<xsl:template match="/">
  <vce>
    <document>
      <content name="xml">
        <xsl:copy-of select="." />
      </content>
    </document>
  </vce>
</xsl:template>

这给了我一个名为“XML”的节点和我的整个 xml 内容。但是,当归一化转换器运行时,这将被删除。我需要做一些特别的事情来为内容中的 XML 编制索引吗?

4

1 回答 1

0

我能够引用转换器:'vse-converter-xml-to-vxml' 来创建索引 xml 的模板:

<xsl:template match="/">

  <vce>
    <document>
      <content name="xml">
        <xsl:apply-templates select="*" mode="xml-to-plain-text" />
      </content>
    </document>
  </vce>
</xsl:template>

<xsl:template match="*" mode="xml-to-plain-text">
  <xsl:text><![CDATA[<]]></xsl:text>
  <xsl:value-of select="name()" />
  <xsl:text> </xsl:text>
  <xsl:choose>
    <xsl:when test="text()|*|comment()">
      <xsl:text>></xsl:text>
      <xsl:apply-templates select="text()|*|comment()" mode="xml-to-plain-text" />
      <xsl:text><![CDATA[</]]></xsl:text>
      <xsl:value-of select="name()" />
      <xsl:text>></xsl:text>
    </xsl:when>
    <xsl:otherwise>
      <xsl:text>/></xsl:text>
    </xsl:otherwise>
  </xsl:choose>
</xsl:template>
于 2019-05-20T19:32:01.357 回答