/// <summary>
        /// Creates tabs from top level of xml
        /// </summary>
        /// <param name="tabsXml"></param>
        /// <returns></returns>
        private IEnumerable<Tab> GetTabsTopLevel()
        {
            var tabsXml = _Schema.Descendants("structure").Single().Elements("tabs").Single().Elements("tab");

            var tabs = new List<Tab>();
            foreach (var xElement in tabsXml)
            {
                var t = new Tab
                {
                    //Id = HiveId.ConvertIntToGuid(++_tabIdCounter),
                    Id = new HiveId(Guid.NewGuid()),
                    Alias = xElement.Attribute("Alias").Value,
                    Name = xElement.Attribute("Name").Value,
                    SortOrder = int.Parse(xElement.Attribute("SortOrder").Value)
                };
                tabs.Add(t);

            }

            //add the general tab
            var general = new Tab
            {
                //Id = HiveId.ConvertIntToGuid(++_tabIdCounter),
                Id = new HiveId(Guid.NewGuid()),
                Alias = FixedGroupDefinitions.GeneralGroup.Alias,
                Name = FixedGroupDefinitions.GeneralGroup.Name,
                SortOrder = FixedGroupDefinitions.GeneralGroup.Ordinal
            };
            tabs.Add(general);

            return tabs.ToArray();
        }
        /// <summary>
        /// Gets tabs from xml
        /// </summary>
        /// <param name="docTypeXml"></param>
        /// <returns></returns>
        private HashSet<Tab> GetTabs(XElement docTypeXml)
        {
            var tabsXml = docTypeXml.Descendants("tab");

            var tabs = new HashSet<Tab>();
            foreach (var xElement in tabsXml)
            {
                var alias = xElement.Attribute("Alias").Value;
                var name = xElement.Attribute("Name").Value;
                var sortOrder = xElement.Attribute("SortOrder").Value;
                var tab = new Tab()
                {
                    Alias = alias,
                    Name = name,
                    SortOrder = int.Parse(sortOrder)
                };
                tabs.Add(tab);
            }
            return tabs;
        }