I have an XML file that I'd like to flatten.
input.xml:
<?xml version="1.0" encoding="UTF-8"?>
<items>
<item id="item1">
<oldproperty oldname="mykey" oldvalue="keyname1"/>
<oldproperty oldname="myval" oldvalue="value1"/>
</item>
<item id="item2">
<oldproperty oldname="mykey" oldvalue="keyname2"/>
<oldproperty oldname="myval" oldvalue="value2"/>
</item>
<item id="item3">
<oldproperty oldname="mykey" oldvalue="keyname3"/>
<oldproperty oldname="myval" oldvalue="value3"/>
</item>
</items>
Desired output:
<?xml version="1.0" encoding="UTF-8"?>
<items>
<item id="item1" newkey="keyname1" newvalue="value1"/>
<item id="item2" newkey="keyname2" newvalue="value2"/>
<item id="item3" newkey="keyname3" newvalue="value3"/>
</items>
QUESTION: How can I do that with xmlstarlet
?