Cómo cambiar el nombre de un nodo Oracle XMLTYPE
Tengo un XMLType en PL / SQL y necesito cambiar el nombre de algunos de los nodos y algunos de los valores. Por ejemplo
<root>
<fields>
<a>foo</a>
<b>bar</b>
</fields>
</root>
Quiero convertir lo anterior en esto:
<root>
<fields>
<a>foo</a>
<c>baz</c>
</fields>
</root>
Sé que puedo actualizar el valor de esta manera:
SELECT UpdateXML(my_xml, '/root/fields/b/text()', 'baz')
INTO my_xml_updated
FROM DUAL;
El resultado es
<root>
<fields>
<a>foo</a>
<b>baz</b>
</fields>
</root>
Pero, ¿cómo puedo actualizar el nombre del nodo desde<b>
a<c>
(sin afectar el contenido del nodo)?