BaseX GET换行符节点之间的数据返回(BaseX get line-breaks return

2019-10-23 08:10发布

我使用BaseX作为我的基于XML DB。 我做一个简单的查询像

xquery for $Book in 
/Libraray/Literaturelist/Literature/Title return fn:data($Book)

我得到的所有冠军,就像当年得到了不换行的String。

有没有办法通过查询到的数据分开找到的每个节点后用XQuery添加换行符? 因为我不加标签内的硬编码换行符这不是真正依赖于我的XML文件。 ;)

Answer 1:

这取决于你如何检索查询结果。 最优雅的方式是使用迭代器,如图例如:

http://basex.org/code/QueryExample

除此之外,你可以通过返回一个额外的换行符扩展您的XQuery:

xquery for $Book in /Libbraray/Literaturelist/Literature/Title
return (fn:data($Book), '
')

但是请注意,该附加输出空格字符不能被抑制。

最好,基督教

PS:随意使用为baseX通话邮件列表更迅速地得到反馈。



Answer 2:

添加一个新行的另一种方法是明确使用换行字符引用:

xquery for $Book in /Libbraray/Literaturelist/Literature/Title
return (fn:data($Book), "
")


Answer 3:

所述的XQuery 3.1序列化规范提供新的“自适应”模式系列化,其输出在新的一行的每个XQuery的结果。 由于BaseX 8,这种模式被用作新的默认。



文章来源: BaseX get line-breaks return between node-data