Query Manager and OQL


La Global Query che giunge al QM può essere espressa utilizzando la sintassi completa di OQL. Per prima cosa il QM la deve decomporre in Basic Queries. Una Basic Query è una query contenente tutte le richieste rivolte ad una singola classe globale.
Le Basic Queries sono espresse mediante un sottoinsieme del linguaggio OQL (detto OQLi3), in particolare in esse non sono ammessi:

Successivamente il QM traduce ogni Basic Query in Local Queries da inviare ai Wrappers. Il linguaggio OQL verso i Wrappers è quindi da intendersi anch'esso come un sottoinsieme dell'OQL, quasi lo stesso utilizzato per le Basic Queries. Mentre, difatti, una Basic Query è posta su di una classe globale, una Local Query è può essere posta su più classi locali, quindi l'OQL verso i Wrappers può essere visto come l'OQLi3 con in più la possibilità di effettuare joins espliciti tra classi (locali). La descrizione BNF di OQLi3 può essere trovata nell'appendice E della tesi di Zaccaria.


The Query Manager Home Page

The MOMIS Home Page