这是我的xml。
<Parent>
<child>
<child1>Ram</Child1>
<child2>Buss</Child2>
</child>
</Parent>
对于这个xml,我需要和xsl文件一起生成子1和子2的名称。但是child 2标签是可选的。所以我只需要在标签出现时获取child2的文本内容,如果出现child2标签,我还必须在child1和child2的文本内容之间给出斜杠字符(/)。我如何在XSL中执行此操作?
答案 0 :(得分:1)
这可能是最简单,最短的解决方案之一:
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text"/>
<xsl:strip-space elements="*"/>
<xsl:template match="child2">
<xsl:value-of select="concat('/', .)"/>
</xsl:template>
</xsl:stylesheet>
应用于提供的(文本,更正要制作的)XML文档:
<Parent>
<child>
<child1>Ram</child1>
<child2>Buss</child2>
</child>
</Parent>
产生了想要的正确结果:
Ram/Buss
应用于此XML文档:
<Parent>
<child>
<child1>Ram</child1>
</child>
</Parent>
再次生成想要的结果:
Ram