我有一个 file.xml 存储协议,其结构如下:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<economato>
<protocollo>
<numero>1</numero>
<data>2014-12-15</data>
<oggetto>Trasmissione prospetti di rendiconto chiusura esercizio 2012 - beni mobili proprietà dello stato</oggetto>
<destinatario>Ragioneria Provinciale Como</destinatario>
<operatore>MAESTRI</operatore>
<valido>true</valido>
</protocollo>
...
</economato>
我需要更改/更新标签“valido”的值,例如从协议号 1 的“真”到“假”,我希望将此更新写入文件中。当我使用 BaseX 时,按照我尝试编写此查询的文档:
xquery let $update := doc('C:\Users\Lorenzo Enzino Vinci\Desktop\ECONOMATO\databases\2014.xml')//economato/protocollo[numero = 1] return replace value of node $update/valido with 'false' into doc('C:\Users\Lorenzo Enzino Vinci\Desktop\ECONOMATO\databases\2014.xml')//economato
但我得到一个错误
[XPST0003] Unexpected end of query: 'into doc('C:\Users\Lorenzo Enzino Vinci\Desktop\ECONOMATO\databases\2014.xml')//economato'
所以我的查询是错误的,但我不知道在哪里。你能帮助我吗?