// Print a parse tree node.
        private void PrintNode(ICodeNodeImplementation node)
        {
            Append(indentation);
            Append("<" + node.ToString());
            PrintAttributes(node);
            PrintTypeSpecification(node);

            List <ICodeNode> childNodes = node.GetChildren();

            // Print the node's children followed by the closing tag.
            if ((childNodes != null) && (childNodes.Count() > 0))
            {
                Append(">");
                PrintLine();

                PrintChildNodes(childNodes);
                Append(indentation);
                Append("</" + node.ToString() + ">");
            }
            else
            {
                Append(" />");  // No children: Close off the tag
            }
            PrintLine();
        }
        // Print a parse tree node.
        private void PrintNode(ICodeNodeImplementation node)
        {
            Append(indentation);
            Append("<" + node.ToString());
            PrintAttributes(node);
            PrintTypeSpecification(node);

            List<ICodeNode> childNodes = node.GetChildren();

            // Print the node's children followed by the closing tag.
            if ((childNodes != null) && (childNodes.Count() > 0))
            {
                Append(">");
                PrintLine();

                PrintChildNodes(childNodes);
                Append(indentation);
                Append("</" + node.ToString() + ">");
            }
            else
                Append(" />");  // No children: Close off the tag

            PrintLine();
        }