【发布时间】:2016-03-11 00:32:18
【问题描述】:
由于我是 xslt 新手,如果我的问题标题不正确,请见谅!
我的 xml:
<workorder>
<wo>wo1234</wo>
<locspec>
<attrid>accessrd</attrid>
<attrvalue>nogothruroad</attrvalue>
</locspec>
<locspec>
<attrid>phone</attrid>
<attrvalue>99123</attrvalue>
</locspec>
<locspec>
<attrid>accessvehicle</attrid>
<attrvalue></attrvalue>
</locspec>
</workorder>
期望的输出:
wo: wo1234
Road to access: nogothrurd
Phone number: 99123
Do you have vehicle access:
我的 xsl:
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" version="1.0">
<xsl:template match="/">
<xsl:apply-templates />
</xsl:template>
<xsl:template match="workorder">
<xsl:apply-templates select="wo" />
<xsl:apply-templates select="locspec" />
</xsl:template>
<xsl:template match="wo">
<xsl:text>wonum: </xsl:text><xsl:value-of select="." />
</xsl:template>
<xsl:template match="locspec">
<xsl:for-each select="locspec/attrid">
<xsl:text>Road to access: </xsl:text>
<xsl:value-of select="locspec/attrid"/>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
要求的逻辑是:如果attrid是“accessrd”则获取它的attrvalue,如果attrid是“phone”则获取它的attrvalue,如果attrd是“accessvehicle”则获取它的attrvalue。
坦率地说,我不知道如何将 xsl 编码用于我想要的输出。 请帮我。提前致谢!
当前输出为空。
【问题讨论】: