背景
我正在尝试对可能是attrname
或xs:string
的属性值(xs:int
)执行查询(使用XQuery 3.0),让我们调用它{{1 }}
如果$a
能够解析为$a
,那么我想将其与xs:int
变量xs:int
($v
,{{1}进行比较},<
等)。
否则,如果它是<=
我想要执行不同的比较。
XML示例
=
伪代码
xs:string
我的问题:
在执行任何操作之前,我无法找到评估<root>
<element attrname="1">this is an xs:int</element>
<element attrname="A">this is an xs:string</element>
</root>
是否为IF $a IS xs:int THEN
DO SOMETHING
ELSE IF $a IS xs:string THEN
DO SOMETHING ELSE
的正确方法。
答案 0 :(得分:4)
您可以使用if ($a castable as xs:int) then expression1 else expression2
。