例如
将以下内容描述为一系列文本节点是否准确?
("foo", "bar", "baz")
不,他们不是。字符串不等于文本节点,这是一个字符串序列。
文本节点的类型Node
是 ,它又是一个item
(这些是 XQuery 中最通用的数据类型)。字符串派生自xs:anyAtomicType
,这也是一个item
.
可以使用构建一系列文本节点
(text { "foo" }, text { "bar" }, text { "baz" })
typeswitch
您可以使用以下构造轻松确定节点的类型:
for $item in (text { "foo" }, "bar", 42)
return
typeswitch($item)
case text()
return "text node"
case xs:string
return "string"
default
return "Something else"
您还可以测试继承的类型:
for $item in (text { "foo" }, "bar", 42)
return
typeswitch($item)
case node()
return "node"
case xs:anyAtomicType
return "anyAtomicType"
default
return "Something else"