gpt4 book ai didi

xquery - 使用Basex在XML中插入数据

转载 作者:行者123 更新时间:2023-12-03 20:14:12 33 4
gpt4 key购买 nike

我在BaseX中存储了两个XML文档,分别是医院和办公室。

以下是office xml:

<Staff>
<Employee Name="Brian">
<Personal>
<SSN> 666-66-6666 </SSN>
</Personal>
<StaffInfo>
<Position> Doctor </Position>
<AccountableTo> David </AccountableTo>
</StaffInfo>
</Employee>
<Employee Name="David">
<Personal>
<SSN> 555-55-5555 </SSN>
</Personal>
<StaffInfo>
<Position> Doctor </Position>
<AccountableTo />
</StaffInfo>
</Employee>
</Staff>

我想在此XML中添加一个或多个员工。如何使用BaseX添加元素?

最佳答案

XQuery具有一个名为XQuery Update的更新工具official W3C recommendation,用于更改文档结构。

您可以像这样使用更新:

给定您已经创建了数据库雇员,并带有以下命令:
CREATE DB office /path/to/office.xml
现在,您可以使用XQuery Update工具并运行以下查询:

let $up := <Employee Name="Joe">
<Personal>
<SSN>666-66-1234</SSN>
</Personal>
<StaffInfo>
<Position>Doctor</Position>
<AccountableTo>Jeff</AccountableTo>
</StaffInfo>
</Employee>

return
insert node $up as last into doc('office')/Staff

这将在数​​据库中 $up的最后位置广告 staff引用的节点

BaseX Documentation Wiki包含有关更新的更多信息:

xmlmind.com提供了一个很好的教程 XQuery Update for the impatient

当然,您可以使用API​​发出这些查询,首先我建议您使用GUI,这样您就可以直接查看结果。

希望能有所帮助,随时询问更多信息;在这里或在官方 BaseX Mailing List上。

关于xquery - 使用Basex在XML中插入数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9407743/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com