[xml] Как создать логическое значение?



0 Answers

Функция boolean (), которую вы используете, действительно выполняет свою работу. Для использования явных значений true и false вы должны использовать следующие функции:

<xsl:variable name="var_false" select="false()"/>
<xsl:variable name="var_true" select="true()"/>

Только FYI, в документации MSDN , boolean () возвращает следующее:

  • Если аргумент является отрицательным или положительным числом, он преобразуется в значение Boolean true.
  • Если аргумент равен нулю или значение NaN, оно преобразуется в значение false.
  • Если аргумент является непустым набором узлов, он преобразуется в значение true. Пустой набор узлов преобразуется в значение false.
  • Если аргумент является непустой строкой, он преобразуется в значение true . Пустая строка преобразуется в значение false.
  • Если аргумент является объектом типа, отличного от четырех основных типов, он преобразуется в логическое значение, которое зависит от этого типа.
Question

Я совершенно не знаком с XSLT и не могу решить, где я ошибаюсь в следующем коде.

<xsl:variable name="var" select="boolean('false')"/>

<xsl:if test="$var'">variable is true</xsl:if>

Он всегда возвращает true, когда он должен быть ложным. Зачем?






Related