XQuery/Inserting and Updating Attributes
Appearance
< XQuery
Motivation
[edit | edit source]You want to insert or update attributes in a document.
(Note: The XQuery Update syntax below is specific to eXist and is not necessarily identical to that in the W3C XQuery Update spec. Full documentation of eXist's XQuery Update syntax can be found at http://exist-db.org/exist/apps/doc/update_ext.xml)
Example Input Document
[edit | edit source]<root>
<message>Hello World</message>
</root>
Example of Attribute Insert
[edit | edit source]To insert a new attribute with the name of "foo" and a value of "bar" you an use the following example:
xquery version "1.0";
let $doc := doc('/db/test.xml')/root
let $update := update insert attribute foo {'bar'} into $doc
return
$doc
This will add a foo="bar" attribute to the root element
Result Document
[edit | edit source]<root foo="bar">
<message>Hello World</message>
</root>
Example of Attribute Update
[edit | edit source]let $doc := doc('/db/test/update-attribute/root.xml')/root
return update value $doc/@foo with 'new-value'
Result Document
[edit | edit source]<root foo="new-value">
<message>Hello World</message>
</root>