使用XSL输出xml转义字符和文本

时间:2013-06-19 12:11:47

标签: xml xslt

我有一个与此类似的XML

<audit>
     <contextData>
          <name>Auditing</name>
          <values>String</values>
     </contextData>
     <credentials>
               <subjectRoleName>subjectRoleName</subjectRoleName>          
     </credentials>
</audit>

我正在尝试编写一个XSL,它将输出一个格式类似于下面的文本 的 * ** * ** * ** * ** OUTPUT * ** * ** * ** * *

Name=Auditing

<credentials>
      <subjectRoleName>subjectRoleName</subjectRoleName>
</credentials>

这里的关键是输出包含文本以及来自原始xml源的一些xml。经过大量研究后我无法弄清楚如何创建一个可以提供类似于上面的输出的xsl。每次我似乎只得到输出中的值。尝试过使用xsl:copy,xsl:copy-of等等。

非常感谢您对此的任何指导。

1 个答案:

答案 0 :(得分:0)

尝试这个以获得所需的输出:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

 <xsl:output omit-xml-declaration="yes"/>
<xsl:template match="/">
  <xsl:param name="name-text" select="//contextData/name"/>
  <xsl:text>Name=</xsl:text><xsl:value-of select="$name-text"/><xsl:text>

  </xsl:text>
  <xsl:copy-of select="//credentials"/>
</xsl:template>
</xsl:stylesheet>