Вы явно называете корневой элемент «Репозиторий», поэтому он отображается таким образом. Попробуйте опустить это утверждение:)
Я думаю, что вы хотите, чтобы Human имел этот элемент Repository. Для этого вам нужно будет сделать еще один корневой элемент под репозиторием, а затем сериализовать ваш объект в него. Следует отметить, что XmlSerializer обычно используется для записи объектов в XML-файлы, а не для создания целых XML-файлов. У меня есть пример того, что может сработать для вас ниже:
System.Xml.XmlTextWriter writer = new System.Xml.XmlTextWriter(FilePath, null);
writer.WriteStartDocument();
writer.Formatting = Formatting.Indented;
writer.WriteStartElement("Repository");
Human h = new Human(id, Name, isEducated);
XmlRootAttribute root = new XmlRootAttribute();
root.ElementName = "Human";
XmlSerializer xs = new XmlSerializer(typeof(Human), root);
xs.Serialize(writer, h);
writer.WriteEndElement();
writer.Close();
Что-то в этом роде ... Я очень сонный: /