我使用BaseX作为我的基于XML DB。 我做一个简单的查询像
xquery for $Book in
/Libraray/Literaturelist/Literature/Title return fn:data($Book)
我得到的所有冠军,就像当年得到了不换行的String。
有没有办法通过查询到的数据分开找到的每个节点后用XQuery添加换行符? 因为我不加标签内的硬编码换行符这不是真正依赖于我的XML文件。 ;)
我使用BaseX作为我的基于XML DB。 我做一个简单的查询像
xquery for $Book in
/Libraray/Literaturelist/Literature/Title return fn:data($Book)
我得到的所有冠军,就像当年得到了不换行的String。
有没有办法通过查询到的数据分开找到的每个节点后用XQuery添加换行符? 因为我不加标签内的硬编码换行符这不是真正依赖于我的XML文件。 ;)
这取决于你如何检索查询结果。 最优雅的方式是使用迭代器,如图例如:
http://basex.org/code/QueryExample
除此之外,你可以通过返回一个额外的换行符扩展您的XQuery:
xquery for $Book in /Libbraray/Literaturelist/Literature/Title
return (fn:data($Book), '
')
但是请注意,该附加输出空格字符不能被抑制。
最好,基督教
PS:随意使用为baseX通话邮件列表更迅速地得到反馈。
添加一个新行的另一种方法是明确使用换行字符引用:
xquery for $Book in /Libbraray/Literaturelist/Literature/Title
return (fn:data($Book), " ")
所述的XQuery 3.1序列化规范提供新的“自适应”模式系列化,其输出在新的一行的每个XQuery的结果。 由于BaseX 8,这种模式被用作新的默认。