#xml #xslt #xslt-1.0 #apache-fop
#xml #xslt #xslt-1.0 #apache-fop
Вопрос:
Я пытаюсь найти способ пропустить значение в моем шаблоне XSL. Значение находится в теге select=»ID», который называется «Редактор». Я пытаюсь пропустить определенное значение в инструкции Choose when, и я не уверен, что это возможно.
<xsl:param name="caption">
<xsl:choose>
<xsl:when test="Description"><xsl:value-of select="Description" /></xsl:when>
<xsl:otherwise><xsl:value-of select="ID" /></xsl:otherwise>
</xsl:choose>
</xsl:param>
Как я мог бы получить оператор xsl в приведенной выше логике, чтобы пропустить значение в идентификаторе, вызываемом редактором?
Ответ №1:
<xsl:param name="caption">
<xsl:choose>
<xsl:when test="Description"><xsl:value-of select="Description" /></xsl:when>
<xsl:otherwise><xsl:value-of select="ID[not(. = 'Editor')]" /></xsl:otherwise>
</xsl:choose>
</xsl:param>
«Значение любого <ID>
, которое не равно 'Editor'
» .
Поэтому, если есть только один <ID>
, выбирается 1 или 0 узлов.
Комментарии:
1. вот как вы это делаете… Большое вам спасибо