Методы и алгоритмы трансляции естественно-языковых запросов к базе данных в SQL-запросы. Найханова Л.В - 62 стр.

UptoLike

62
)),,...,(),,...,((
11
r
tgkns
tyytxxtP
и подобия
),,(
r
ans
tyxP
;
- четвертая группа знаний включает в себя знания, составляющие базовую модель
и не относящиеся к проблемной среде. К этой группе знаний относятся предикаты
),,(
r
ans
tyxP
, задающие отношение подобия между понятиями-синонимами, которые не
являются терминами логической модели данных.
Предикаты проблемной среды приведены в Приложении Г.
3.2. Базовые механизмы проблемного анализа
Таким образом, представленное формальное описание лингвистического обеспечения
определяет множество базовых объектов формальной системы транслятора, которые
впоследствии составят множество Г при доказательстве различных утверждений для
построения SQL – запроса. Анализ графа зависимостей G позволит построить граф
G
~
гомеоморфного исходному, вершины которого будут содержать термины физической
модели данных. Построение гомеоморфного графа зависимостей будем выполнять в две
стадии. На первой стадии построим граф
G
~
, выполнив анализ каждой вершины gG и
определив её принадлежность терминам логической модели данных
l
t Ξ
. Термины t
запишем в вершины
Gg
~
~
и сформируем для вершин вектор
η
. На второй стадии
преобразуем граф
G
~
в граф
G
~
путем исключения дублирующихся вершин и заменой
терминов логической модели данных
l
t Ξ
на термины физической модели
f
t Ξ
.
3.2.1. Метод построения преобразования
3
Ψ
Построим граф G
~
, гомеоморфный графу G, затем преобразуем его в граф G
~
.
Для построения графа
G
~
необходимо найти транзитивное замыкание преобразований
вершин
gg
→
~
*
, где gG, Ξ
,
~
~
Gg ,
fl
Ξ
Ξ
=
Ξ
, G
~
- граф, гомеоморфный исходному G.
Если транзитивное замыкание не найдено, то это соответствует ситуации, которая означает,
что вершина несет в себе вспомогательную информацию для формирования SQL-запроса.
Длина транзитивного замыкания может быть равна или больше единицы. Первый
случай соответствует ситуации, в которой существует прямое соответствие между
вершиной g и термином
Ξ
g
~
. Во втором случае возможны ситуации, когда запросы могут
содержать не прямое соответствие с терминами логической модели, а косвенное. При
косвенном соответствии они могут выражаться через синонимы или через другие понятия
проблемной среды, описываемые множеством Ξ
s
.
В процессе первичного анализа графа зависимостей построим вектор
η
для каждой
вершины графа, который будет содержать необходимые для трансляции свойства вершин.
Определим вектор
η
следующим кортежем:
η
=<z
1
, z
2
, z
3
>,
где z
1
- признак, определяющий принадлежность множеству терминов логической
модели данных Ξ
l
;
z
2
- тип вершины g
~
: 1 – атрибут логической модели данных, 2 - сущность логической
модели данных, 3–операнд оператора SQL, 4- операция оператора SQL, 5 - вычислительная
процедура, 6 - значение атрибута базы данных;
z
3
- тип признака понятия для атрибута логической модели данных (d-
                                                                             r
Ps (t ( x1 ,..., x n ), t ( y1 ,..., y k ), t tgr ) и подобия
                                                                Ps ( x, y, t an );

       -
       четвертая группа знаний включает в себя знания, составляющие базовую модель
и не относящиеся к проблемной среде. К этой группе знаний относятся предикаты
             r
Ps ( x, y, t an ) , задающие отношение подобия между понятиями-синонимами, которые не
являются терминами логической модели данных.
        Предикаты проблемной среды приведены в Приложении Г.
3.2.       Базовые механизмы проблемного анализа
     Таким образом, представленное формальное описание лингвистического обеспечения
определяет множество базовых объектов формальной системы транслятора, которые
впоследствии составят множество Г при доказательстве различных утверждений для
                                                                                         ~
построения SQL – запроса. Анализ графа зависимостей G позволит построить граф G
гомеоморфного исходному, вершины которого будут содержать термины физической
модели данных. Построение гомеоморфного графа зависимостей будем выполнять в две
                                                                     ~
стадии. На первой стадии построим граф G ′ , выполнив анализ каждой вершины g∈G и
                                                                   l
определив её принадлежность терминам логической модели данных t ∈ Ξ . Термины t
                  ~                      ~
запишем в вершины g ′ ∈ G ′ и сформируем для вершин вектор η. На второй стадии
                              ~                 ~
преобразуем граф G ′ в граф G путем исключения дублирующихся вершин и заменой
                                       l                                  f
терминов логической модели данных t ∈ Ξ на термины физической модели t ∈ Ξ .

3.2.1. Метод построения преобразования Ψ3
                                  ~                                                  ~
       Построим граф G ′ , гомеоморфный графу G, затем преобразуем его в граф G .
                              ~
       Для построения графа G ′ необходимо найти транзитивное замыкание преобразований
                                  ~                   ~
             g~′ , где g∈G, g~′ ∈ G′, Ξ , Ξ = Ξ ∪ Ξ , G ′ - граф, гомеоморфный исходному G.
           *                                   l   f
вершин g →
Если транзитивное замыкание не найдено, то это соответствует ситуации, которая означает,
что вершина несет в себе вспомогательную информацию для формирования SQL-запроса.
     Длина транзитивного замыкания может быть равна или больше единицы. Первый
случай соответствует ситуации, в которой существует прямое соответствие между
вершиной g и термином g~ ′ ∈ Ξ . Во втором случае возможны ситуации, когда запросы могут
содержать не прямое соответствие с терминами логической модели, а косвенное. При
косвенном соответствии они могут выражаться через синонимы или через другие понятия
проблемной среды, описываемые множеством Ξs.
     В процессе первичного анализа графа зависимостей построим вектор η для каждой
вершины графа, который будет содержать необходимые для трансляции свойства вершин.
Определим вектор η следующим кортежем: η=,
     где z1 - признак, определяющий принадлежность множеству терминов логической
модели данных Ξl;
     z2 - тип вершины g~′ : 1 – атрибут логической модели данных, 2 - сущность логической
модели данных, 3–операнд оператора SQL, 4- операция оператора SQL, 5 - вычислительная
процедура, 6 - значение атрибута базы данных;
     z3 - тип признака понятия для атрибута логической модели данных (d-
                                                                      62