private XmlObject EnsureOneAndReturnLast()
        {
            if (XmlRecordList.Count <= 0)
            {
                XmlRecordList.Add(new XmlObject(Name()));
            }

            return(XmlRecordList[Count() - 1]);
        }
        /// <summary>
        /// 轉換為 Duplicate 模式。
        /// </summary>
        private void ToDuplicateMode()
        {
            if (!UniqueMode)
            {
                return;
            }

            UniqueMode = false;
            XmlObject newobj = new XmlObject(Name());

            newobj._string_value          = _string_value;
            newobj._children              = _children;
            newobj._xml_record_dictionary = _xml_record_dictionary;

            XmlRecordList.Add(newobj);
        }