0

我正在尝试处理来自另一个系统的 XML 文档,而我得到的 XML 是伪 HTML,我需要将其转换为 HTML。

示例 XML:

<DOC>
<Paragraph>This text is <bold>bold</bold> and this text is not.</Paragraph>
</DOC>

所需输出:

<BODY>
<P>This text is <b>bold</b> and this is not.</P>
</BODY>

使用 node() 值我能够在标记之前获取节点的值(此文本是 ),但我无法编写模板帽子将在标记之前处理部分节点,处理标记,然后返回到其余部分价值。有什么建议么?

4

2 回答 2

1
<xsl:template match="@*|node()">
  <xsl:copy>
     <xsl:apply-templates select="@*|node()"/>
  </xsl:copy>
</xsl:template>

<xsl:template match="DOC">
    <BODY><xsl:apply-templates/></BODY>
</xsl:template>

<xsl:template match="Paragraph">
    <P><xsl:apply-templates/></P>
</xsl:template>

<xsl:template match="bold">
    <b><xsl:apply-templates/></b>
</xsl:template>
于 2012-08-06T12:06:56.110 回答
0

你尝试了什么?应该不会比

<xsl:template match="DOC">
    <BODY><xsl:apply-templates/></BODY>
</xsl:template>

<xsl:template match="Paragraph">
    <P><xsl:apply-templates/></P>
</xsl:template>

<xsl:template match="bold">
    <b><xsl:apply-templates/></b>
</xsl:template>
于 2012-08-06T04:14:47.897 回答