XML dokumentumok módosítása

Az XQuery-ben nem csak lekérdezéseket készíthetünk, hanem már beszúrhatunk, törölhetünk, átnevezhetünk csomópontokat. Az „insert” utasítással egy csomópontot szúrhatunk be, egy másik csomópontba. A szintaktikája a következő:

insert CSOMÓPONT into [ as [ first | last ] ] CÉLCSOMÓPONT
insert CSOMÓPONT [ after | before ] CÉLCSOMÓPONT

Utolsóként beszúrunk egy személyt a többek közé.

insert <person id="P3"><information/></person> as last into /persons

A „replace” utasítással egy csomópontot egy másikra cserélhetünk vagy az értékét módosíthatjuk. Szintaktikája az alábbi:

replace node CSOMÓPONT with ÚJCSOMÓPONT         :az egész csomópontot kicseréli
replace value of node CSOMÓPONT with ÚJÉRTÉK    : csak értéket cserél

Az alábbi példában kicseréljük a P1 azonosítóval ellátott személyt egy P2 azonosítóval ellátott személyre:

replace node /persons/person[@id="P1"] with <person id="P2"></person>

A P1 azonosítóval rendelkező ember nevét megváltoztatjuk:

replace value of node /persons/person[@id="P1"]/information/personalInformation/name with "Ödön"

A „delete” utasítással csomópontokat törölhetünk, amennyiben a megadott feltételek illeszkednek rá:

delete CSOMÓPONT

Töröljük ki, azokat a személyeket akiknek nincsen TAJ szám megadva:

delete /persons/person[not(information/medicalInformation/TAJ)]