xslt-2.0 - XSL 中的显式类型变量

我正在使用 XSL 的便利函数进行比较,gt、lt、ge、le、eq

我知道这些函数在执行比较时不会将字符串提升为数值,但是我需要进行转换,而且我不想让我的代码像

这样的行困惑
<xsl:when test="xs:integer($variable) lt 250" >

我宁愿像这样类型转换(当然是假设的)

<xsl:variable name="variable" type="xs:integer">

那么,有没有办法在声明/创建时将 variable 显式转换为数字类型?

最佳答案

<xsl:when test="xs:integer($variable) lt 250" >

I'd rather make that cast like this (hypothetical of course)

<xsl:variable name="variable" type="xs:integer">

使用 as 属性 -- 它的目的正是指定变量、参数、模板或函数的类型:

<xsl:variable name="variable" as="xs:integer" 
              select="some-integer-type-expression">

https://stackoverflow.com/questions/10324122/

相关文章:

snmp - SNMPv3 是否需要使用用户名/身份验证和社区字符串?

qt - 如何确保 QWidget 在屏幕外?

assembly - ARM7TDMI(GameBoy Advance)上操作系统相关的操作和模式

ms-access - MS Access - 使用相同的记录 ID 转到另一个子表单

python - 从 python 脚本启动 python IDLE

activex - 是否有 MsStkPrp.dll 的 x64 版本

xcode - 如何在 Xcode 分析和存档构建中设置 DEBUG 和 NDEBUG 宏?

asp.net - SSRS 报告缓慢加载第一份报告

django - 保存前更改表单实例 Django

xcode - Xcode 中的 "Canvas"选项在哪里?