Xquery转换将int转换为string

时间:2013-08-11 13:04:54

标签: xquery

我希望XQuery转换函数将int转换为string。

我有如下的XQuery转换:

<ns8:postCode>{ fn:string(data($customer/ns9:postCode)) }</ns8:postCode>

我正在尝试将int转换为字符串,但仍然上面的行给出了错误 它与目标模式不匹配.Source为int,target为string。

我也尝试过:

<ns8:postCode>{ xs:string(xs:integer(data($customer/ns9:postCode))) }</ns8:postCode>

但我得到同样的错误

1 个答案:

答案 0 :(得分:0)

fn:data()将返回为untypedAtomic定义的任何原子类型(或ns9:postCode)。如果你想要一个字符串,没有理由得到原子类型 - 或者做任何其他类型的转换 - 首先:

<ns8:postCode>{ fn:string($customer/ns9:postCode) }</ns8:postCode>

您的问题未提供相关错误,但<ns8:postCode>可能被定义为xs:string以外的类型。如果该元素包含xs:string,并且架构将该元素定义为xs:integer,则会抛出类型不匹配错误。