Создайте базу данных SQLite на основе набора данных XSD

Кто-нибудь знает, есть ли способ создать базу данных SQLite на основе XSD DataSet ? Раньше я просто использовал базовый менеджер SQLite, но я хочу, .NET если возможно, немного объединить вещи с моей разработкой.

Ответов (3)

Решение

Я подозреваю, что в общем случае это сложно; XML-схема позволяет создавать довольно причудливые конструкции типов. Я не уверен, как бы вы сделали группы подстановки или, например, расширения ограничений типов.

Однако должна быть возможность довольно быстро собрать что-то вместе (особенно сопоставление из классов в System.Xml.Schema), которое работает для 90% схем (т. Е. Элементов последовательности и выбора с несколькими простыми типами данных).

Я уверен, что вы могли бы написать небольшое приложение, которое принимает файл XSD и преобразует его в сценарий SQL. Я никогда не видел кода для этого, но это не значит, что его не существует.

Возможно, вы могли бы использовать преобразование XSL для преобразования XSD в определения таблиц SQL. Точно так же я не могу найти никаких предыдущих примеров этого, но я думал, что это возможно.

Я предполагаю, что общий XSLT для XSD-> SQL, однажды написанный, может быть применен к любому такому сценарию (и также будет кроссплатформенным). Возможно, кто-то делал это раньше ...