我必须在xf:select1
中提供ref属性值。我只需要在supportedProperties
实例中出现属性名称就可以选择属性名称,这可以通过以下方式完成:
<xf:select1
ref="
instance('properties')/property[
name = instance('supportedProperties')/property/name
]/name">
然而,问题是supportedProperties
可以包含大写字母的名称。假设我们无法更改实例,是否可以进行区分大小写的比较?
尝试使用lower-case()
XPath函数,如下所示,但它没有工作:
<xf:select1
ref="
instance('properties')/property[
name = instance('supportedProperties')/property/name
]/lower-case(name)">
答案 0 :(得分:0)
假设您使用的是XPath 2,您可以写:
<xf:select1
ref="
instance('properties')/property[
name = instance('supportedProperties')/property/name/lower-case(.)
]/name">
这样做是lower-case(.)
函数适用于instance('supportedProperties')/property/name
返回的序列中的所有元素。
您也可以写下来:
<xf:select1
ref="
instance('properties')/property[
name = (
for $name in instance('supportedProperties')/property/name
return lower-case($name)
)
]/name">