0

我正在研究 XML 转换。我必须提取元素的元素并以粗体/斜体/列表显示它们。来源:

 <content>
    <bodyParagraphText>
ABCD<strong   xmlns="http://www.w3.org/1999/xhtml">:<dynamicVariable  name='BOLD'></dynamicVariable></strong>
 </bodyParagraphText>  
 </content>

1.输出要求1(粗体):

<aaa>
     ABCD **BOLD**
</aaa>

2.输出所需1(列表):

<aaa>
     ABCD 

 - BOLD

</aaa>

3.输出要求1(下划线):

  <aaa>
     ABCD BOLD(underlined)
  </aaa>

我对它完全陌生。我没有任何想法可以解决。请帮忙。先感谢您。

4

1 回答 1

0

有点猜测你需要做什么,但是:

  • 在您的xsl:stylesheet元素上,为 xhtml 声明一个命名空间前缀,例如"xhtml".

  • 创建一个匹配的模板"content/bodyParagraphText"

  • 显然,使用 XPath 表达式"text()[1]"获取“ABCD”文本。将其放入变量中,例如abcd.

  • 使用 XPath 表达式".//xhtml:dynamicVariable/@name"获取“BOLD”。将其放入变量中,例如dv.

  • 要指定您的输出,请使用类似

<aaa>
  <xsl:value-of select="$abcd" /> **<xsl:value-of select="$dv" />**
</aaa>

对于所需的第一种输出格式。

如果我误解了你的问题,请澄清...

于 2012-03-12T06:33:15.600 回答