可以在xquery中使用字符串变量作为标记吗
我可以在xquery中使用如下内容吗?基本上我想使用字符串变量作为标记。我正在使用WebHarvest提取数据。感谢您的帮助或指点可以在xquery中使用字符串变量作为标记吗,xquery,webharvest,Xquery,Webharvest,我可以在xquery中使用如下内容吗?基本上我想使用字符串变量作为标记。我正在使用WebHarvest提取数据。感谢您的帮助或指点 declare variable $doc as node() external; declare variable $tag as xs:string; let $tag := $doc//div[@class=details]//tr[1]/td[1] return <$tag>{$doc//div[@class=details]//tr[
declare variable $doc as node() external;
declare variable $tag as xs:string;
let $tag := $doc//div[@class=details]//tr[1]/td[1]
return
<$tag>{$doc//div[@class=details]//tr[1]/td[2]</$tag>
将变量$doc声明为node()外部;
将变量$tag声明为xs:string;
让$tag:=$doc//div[@class=details]//tr[1]/td[1]
返回
{$doc//div[@class=details]//tr[1]/td[2]
是,这在元素{}构造中是可能的:
return element {$tag} {$doc//div[@class=details]//tr[1]/td[2]}
是的,这在元素{}构造中是可能的:
return element {$tag} {$doc//div[@class=details]//tr[1]/td[2]}
使用元素构造函数
元素{$tag}{$content}
您的查询还有两个问题:
- 不需要将
声明为变量,您还是在隐藏它$tag
- 结束标记前面缺少结束卷曲括号
declare variable $doc as node() external;
let $tag := $doc//div[@class=details]//tr[1]/td[1]
return
element { $tag } { $doc//div[@class=details]//tr[1]/td[2] }
使用元素构造函数
元素{$tag}{$content}
您的查询还有两个问题:
- 不需要将
声明为变量,您还是在隐藏它$tag
- 结束标记前面缺少结束卷曲括号
declare variable $doc as node() external;
let $tag := $doc//div[@class=details]//tr[1]/td[1]
return
element { $tag } { $doc//div[@class=details]//tr[1]/td[2] }