Volt(220) Вот я и предлагаю разработать средства который позволят работать с XML на том же уровне, но без промежуточных вычислений.
Вообще есть осознание того о чем спрашивается? Что значит классы в зависимости от данных? Класс не может зависеть от данных, он может зависеть от структуры данных. Класс это определенная структура. Ветка или Нода это тоже определенная структура. Если ноды одинаковые по структуре, то они десериализуются в разные объекты одного и того же класса. На каком уровне? на уровне сервера БД? Написать что ли свой аналог Oracle? Или что? И без каких таких промежуточных вычислений?
Потому что у них слишком узкий круг задач, которые они решают эффективно. А в этом круге задач обычно есть деньги, позволяющие купить соотвествующий модуль к уже используемой реляционной БД или продукту. Они банально мало кому нужны, в большинстве случаев, они потребляют гораздо больше ресурсов, плохо интегрируются с существующими решениями, имеют низкую маштабируемость... Да и в целом, затраты на проектировку/разработку ПО под них гораздо выше, чем стоимость увеличения железных мощностей для того что бы компенсировать потери на работу программного ОРМ. Хотя я знаю как минимум одно решение нереляционных БД, правда не на нативном XML, а на базе OLAP - оно люто популярно и доходно, и развивается. Это IBM OLAP который лежит в основе Lotus продуктов и IBM DB2 OLAP. Они уже давно в секторе нереляционных БД - стандарт де-факто.