теоретически обоснованных языков запросов можно
Видимо, к этому же направлению строго
теоретически обоснованных языков запросов можно отнести и
работу Леллани и Спиратоса , основанную на алгебраической
теории категорий.
Наконец, третий подход основывается на применении дедуктивного
подхода. В основном это отражает стремление разработчиков к
сближению направлений дедуктивных и объектно-ориентированных
БД. Примером простого дедуктивного объектно-ориентированного
языка запросов может служить .
Независимо от применяемого для разработки языка запросов
подхода перед разработчиками встает одна концептуальная
проблема, решение которой не укладывается в традиционное русло
объектно-ориентированного подхода. Понятно, что основой для
формулирования запроса должен служить класс, представляющий в
ООБД множество однотипных объектов. Но что может представлять
собой результат запроса? Набор основных понятий
объектно-ориентированного подхода не содержит подходящего к
данному случаю понятия. Обычно из положения выходят, расширяя
базовый набор концепций концепцией множества объектов и
полагая, что результатом запроса является некоторое
подмножество объектов-экземпляров класса. Это довольно
ограничительный подход, поскольку автоматически исключает
возможность наличия в языке запросов средств, аналогичных
реляционному оператору соединения. В конце этого раздела мы
коротко изложим собственные (в достаточной степени
предварительные) соображения по этому поводу, но сначала
кратко рассмотрим особенности нескольких конкретных
декларативных языков запросов к ООБД.
В языке запросов объектно-ориентированной СУБД ORION
полностью поддерживается принцип инкапсуляции объектов. В
реализованном варианте языка запросы могут основываться только
на одном классе (хотя в описывается подход к определению
запроса на нескольких классах в стиле расширения семантики
реляционного оператора соединения). Синтаксис языка
ориентирован на SQL. Очень развит набор допустимых предикатов
селекции. В частности, для атрибута, доменом которого является
Содержание Назад Вперед