Xquery:将链接转换为变量

Xquery:将链接转换为变量,xquery,Xquery,是否可以将xquery文件(.xq)中的链接设为变量 例如,我有下面的链接,我需要将其转换为一个变量,以便可以将其与For contains代码一起使用 { for $x in doc("myfile.xml")/portion/food return <li><a href="#link"></a>{data($x)}</li>}</ul> { for $y in doc("myfile.xml")/portion[con

是否可以将xquery文件(.xq)中的链接设为变量

例如,我有下面的链接,我需要将其转换为一个变量,以便可以将其与For contains代码一起使用

{ for $x in doc("myfile.xml")/portion/food
     return <li><a href="#link"></a>{data($x)}</li>}</ul>

{ for $y in doc("myfile.xml")/portion[contains(., <THIS IS WHERE THE LINK VARIABLE SHOULD GO>)]

你的问题结合了不同的观点,应该分开处理。如果我理解正确,您希望在web浏览器中显示查询结果,并且希望在用户交互中操作结果页创建后的DOM。第一部分(在浏览器中显示),我想

由于浏览器只显示序列化为文件的查询结果(与简单文本编辑器的方式相同),因此浏览器和XQuery引擎之间基本上没有允许重新评估任何用户交互的“联系”或“通信”。因此,您的问题主要是询问如何创建这样一种基于自定义参数重新计算XQuery的方法

的文档中有一个有趣但简单的例子,需要服务器端评估用户输入并修改每个猜测的页面内容。它完全在XQuery中实现,使用eXist dbs的会话处理和XQuery Servlet的功能

根据您的需要调整数字猜测示例应该很容易。您甚至不需要跟踪猜测计数,因此不需要在服务器上创建会话。将所选项目的
id
与请求一起发送就足够了(如示例所示,使用一个简单的HTML表单,使用猜测的数字),并使用XQuery函数计算该请求属性。在本例中,
local:guess
函数负责此任务,并创建相应的HTML输出


这种解决方案取决于XQuery引擎的功能。也许使用Javascript可以实现“独立”的解决方案,但这似乎超出了问题的范围。

我对编程还不熟悉,从我所知道的情况来看,我需要使用eXist来实现这一点,但我无法做到。谢谢。我是编程新手,据我所知,我需要使用eXist来创建会话(但不幸的是不能使用eXist,因为我需要能够将文件发送给其他人查看)。Javascript可能是一种选择,但我对它不太熟悉。您可以将Javascript与Saxon结合使用进行测试吗?如果使用Javascript,您会建议使用事件处理程序、页面会话或?Javascript将根据结果页面的布局在事件上“激发”。XQueryWikibook作为一个,其中XQuery用于处理服务器端的请求。因此,这个解决方案也需要一个服务器端组件。对于独立解决方案(“?”),您必须在结果页面中包含初始数据,例如使用JSON。但我认为最好就这件事提出一个新问题。
declare variable $hello := ("Hello World");