通过谓词匹配,基于另一个parent@refID选择多个运输组。示例:
<parent refid="masterbill"/>
<transportation refid="housebill">
</transportation>
<transportation refid="transportUnit">
</transportation>
<transportation refid="masterbill">
</transportation>
我的逻辑是通过下面的条件来满足get ALL运输
IF @refID=="masterbill"
else IF @refID=="trasportUnit"
get only <transportation @refid="transportUnit">.
我试着像下面这样做,但我在"*"部分
<xsl:if test="@refID=="masterbill">
<xsl:variable name='match' select="'*'"/>
</xsl:if>
<xsl:if test="@refID=="transportUnit">
<xsl:variable name='match' select="'transportUnit'"/>
</xsl:if>
<for-each select="transportation[@refID=$match]">
尝试以下操作:
<xsl:variable name='match'>
<xsl:if test="@refID=="masterbill">*</xsl:if>
<xsl:if test="@refID=="transportUnit">transportUnit</xsl:if>
</xsl:variable>
<xsl:for-each select="transportation[$match='*' or @refID=$match]">