Как создать XSD из XML
Итак, у меня есть XML-файл, который я хочу массово загрузить в базу данных.
Чтобы создать базу данных, было бы неплохо сначала извлечь из нее XSD.
Но размер файла составляет 80 ГБ, поэтому он не откроется в visual studio.
Это также довольно продвинутая структура, и мои примеры показывают, что может быть довольно легко пропустить некоторые причуды, если я не проверю весь файл.
Об использовании онлайн-конвертера не может быть и речи из-за размера файла. И я хотел бы избежать оплаты за инструмент, так как это, вероятно, одноразовый вариант.
Мне нужны кое-какие идеи, пожалуйста.
Что я уже пробовал:
Ну, я попробовал поискать идеи в google
F-ES Sitecore
Просто изучите xsd и сделайте это сами.
Jörgen Andersson
Это запасной план
Dave Kreskowiak
Вот что я в итоге сделал. Вы можете использовать инструмент XSD в качестве старта, если он работает для вас, но вам придется пройти через полученный XSD и исправить ошибки, которые он сделал, исходя из предположений, которые он сделал о вашем XML.
В моем случае мой XML был моим собственным творением и развивался, и я разрабатывал этот формат. Я просто отказался от инструмента, сгенерированного XSD, и начал его с нуля. Я закончил с дизайном модуля XSD, который я могу изменять по мере развития XML.
Jörgen Andersson
Проблема только в том, что я сам не создавал XML-файл.
Моя первая цель-найти все классы и поля.
Если я смогу использовать инструмент, я сэкономлю много времени.
Maciej Los
Йорген, ты пробовал использовать Инструмент определения XML-схемы (Xsd.exe) | Microsoft Docs[^]?
Кстати: есть ли какая-нибудь документация к этому XML?
В случае, если документация не существует, попробуйте использовать Класс XmlReader (System.Xml) | Microsoft Docs[^] в асинхронном режиме, чтобы прочитать содержимое xml-файла или попытаться загрузить этот xml-файл в набор данных.
phil.o
Я бы также предложил инструмент xsd. Может быть, вы могли бы сделать это решением?
Maciej Los
Спасибо! Сделано.
CHill60
Я тоже шел на это - я согласен с Филом.о - хорошее решение
Maciej Los
Спасибо! Сделано.
Jörgen Andersson
я попробую это сделать
Jörgen Andersson
Загрузка файла в набор данных также приводит к нехватке памяти.