MATLAB: How to append a node to an ‘.xml’ structure within a function

append nodeappendchildcreateelementfunctionobjectxml

I am trying to send an xml structure to a function, append a new node, and return the modified structure. This is because the child structure being appended will be very common to many '.xml' files and I don't want to re-write the same code every time.
If I am not in a function the following works:
docNode = com.mathworks.xml.XMLUtils.createDocument('ugcs-Transfer');
parent_node = docNode.createElement('parent')
docNode.appendChild(parent_node)
child_node = docNode.createElement('child');
parent_node.appendChild(child_node);
If I try to pass it to a function like this:
docNode = com.mathworks.xml.XMLUtils.createDocument('ugcs-Transfer');
parent_node = docNode.createElement('parent')
docNode.appendChild(parent_node)
docNode = myFunction(docNode)
This function will not append the child to the parent node:
Z = my_function(docNode)
child_node = docNode.createElement('child');
parent_node.appendChild(child_node); % This line produces an error: Undefined variable "parent_node" or ...
% class "parent_node.appendChild".
Z = docNode
end
The desired end state would be:
%<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
% <parent>
% <child>
Any help would be appreciated,
Paul

Best Answer

I got the answer for this from a colleague.
The line of code I needed was:
parent_node=docNode1.getElementsByTagName('Parent').item(0)