private static void MergeStructure(XmlNode sectionNode, SectionType sectionType)
        {
            MetadataDocumentManagement metaDataDocMgt = MetadataDocumentManagement.Instance;

            if (sectionType == SectionType.Actions)
            {
                foreach (XmlNode childNode in sectionNode.ChildNodes)
                {
                    /* TODO  !!! TEMPORARY !!!  we should change TransformPages.xml instead! */
                    XmlNode destinationNode = metaDataDocMgt.XmlCurrentFormNode.SelectSingleNode("./a:Actions/a:" + childNode.Name, metaDataDocMgt.XmlNamespaceMgt);
                    if (destinationNode == null)
                    {
                        XmlNode actionsNode = metaDataDocMgt.XmlCurrentFormNode.SelectSingleNode("./a:Actions", metaDataDocMgt.XmlNamespaceMgt);
                        XmlUtility.InsertNodeWithPropertyChild(actionsNode, childNode.Name, metaDataDocMgt.CalcId(null, null, childNode.Name) /*metaDataDocMgt.GetNewId */);
                        destinationNode = metaDataDocMgt.XmlCurrentFormNode.SelectSingleNode("./a:Actions/a:" + childNode.Name, metaDataDocMgt.XmlNamespaceMgt);
                    }

                    MergeComplexStructure(childNode, destinationNode);
                }
            }

            if (sectionType == SectionType.Controls)
            {
                foreach (XmlNode childNode in sectionNode.ChildNodes)
                {
                    XmlNode destinationNode = metaDataDocMgt.XmlCurrentFormNode.SelectSingleNode("./a:Controls/a:" + childNode.Name, metaDataDocMgt.XmlNamespaceMgt);
                    if (destinationNode == null)
                    {
                        XmlNode controlsNode = metaDataDocMgt.XmlCurrentFormNode.SelectSingleNode("./a:Controls", metaDataDocMgt.XmlNamespaceMgt);
                        XmlUtility.InsertNodeWithPropertyChild(controlsNode, childNode.Name, metaDataDocMgt.CalcId(null, null, childNode.Name) /* metaDataDocMgt.GetNewId */);
                        destinationNode = metaDataDocMgt.XmlCurrentFormNode.SelectSingleNode("./a:Controls/a:" + childNode.Name, metaDataDocMgt.XmlNamespaceMgt);
                    }

                    MergeComplexStructure(childNode, destinationNode);
                }
            }
        }