我刚刚开始将 Xquery 与 Xqilla 一起使用。
我希望我的结果以正确的缩进和换行符返回。
我有一个名为 $duplicates 的导演列表,我想在我的退货声明中从这些导演那里获取所有电影标题。
我的退货声明:
for $duplicate in $duplicates
return
<movie director="{$duplicate}">
{$result/videos/video/title[../director=$duplicate]}</movie>
我想像这样格式化(有点):
<movie director="Coppola">
<title>The Godfather</title>
<title>The Godfather pt. 2</title>
<title>Apocalypse Now</title></movie>
孩子们正确缩进,每个都在一个新的行上。
我得到的是:
<movie director="Coppola">
<title>The Godfather</title><title>The Godfather pt. 2</title><title>Apocalypse Now</title></movie>
所有标题都在一行中。
由于我之前通过简单地返回一个变量成功地返回了一个标题列表,因此我尝试了一个带有 for 循环的嵌套 return 语句,如wikibooks上所建议的那样。该解决方案还包含明确定义<title>
的 -tags。
我在 SO 上发现了一个有同样问题的人。
那里的答案没有用。当我添加一个命名空间时,我的程序完全停止了输出。如果有一些非杂乱的解决方案,我也更喜欢它(这似乎是因为每个人似乎从一开始就得到了完美的输出)。
问题似乎在于将 XML 和 Xquery 与大括号的使用混合在一起。