Я работал над проектом Java, который имел некоторые требования, и мы обнаружили, что HyperJAXB хорошо подходит. Он использует JAXB для перехода от схемы XML к объектам Java, а затем использует Hibernate для сохранения объектов Java. Последняя версия работает со всем, что поддерживает EJB3 / JPA.
Обычно это происходит без создания файла схемы базы данных, но вы можете заставить Hibernate выплюнуть его, если вам это нужно. Поскольку схема создается автоматически, она может выглядеть немного безобразно, пока вы не поймете, почему она работает так, как она делается.
Если вы не используете Java, но хотите использовать что-то похожее на HQL (Hibernate Query Language) для доступа к базе данных, вы можете использовать ее для преобразования XSD в DDL, поскольку сгенерированная схема создается с помощью Операции в стиле HQL. Если это не звучит достаточно уродливо, вы можете включить ведение журнала гибернации и посмотреть, какой SQL он генерирует для различных запросов HQL, и использовать его, чтобы убедиться, что вы получаете правильные шаблоны доступа.
Так что, в принципе, это не подходит ни для чего, кроме Java:)