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

UptoLike

Приложение Б. Правила синтаксического анализа
Система продукций синтаксического анализа включает в себя множество продукций: P
s
=
{pr
i
s
|
59,1=i
}, где pr
i
s
=<q
i
s
,r
i
s
>, которые объединены по категориям правил, приведенных ниже.
Первая подсистема правил
1. Правило построения группы ПС (предлог+существительное). Возможные падежи
существительных имеют непустое пересечение с множеством падежей, которыми управляет
предлог. Предлог может стоять перед самим существительным или перед прилагательным
(прилагательными), после которых следует согласуемое существительное, например, на совещании,
в международной научной конференции. В результате формируется группа ПС, предлог удаляется
из исходного множества лексем. Данное правило позволит удалить избыточную морфологическую
информацию о лексеме, основываясь на свойстве примыкания падежей с предлогами.
Тогда правило можно представить в виде ситуации: пара лексем х
i
и х
j
образует
синтаксическую группу ПС тогда и только тогда, когда имеет место закономерность, описываемая
конъюнкцией следующих фактов:
1) х
i
имеет характеристику v
i1
V
i
со значением «предлог» - (х
i
:X) Р(x
i
, t(v
i1
, предлог));
2) х
j
имеет характеристику v
j1
со значением «существительное» - (x
j
:X) Р(x
j
, t(v
j1
,
существительное));
3) х
j
имеет характеристику v
j5
со значением сорта «падеж» - (x
j
:X) Р(x
j
, t(v
j5
, v
j5
));
4) лексема х
i
принадлежит сорту b
1
B - P
f
(t
in
(х
i
), y
1
, f
1
), где f
1
ссылка на процедуру F
1
определения названия категории предлога х
i
, а переменная y
1
может принимать значения:
«родительный», «дательный», «винительный», «творительный» или «предложный»;
5) у
1
равен v
j5
- Р
Е
(у
1
, v
j5
);
6) лексема х
i
стоит раньше х
j
лексемы - P
f
(t
in
(i,j), y
2
, f
2
), где f
2
ссылка на процедуру F
2
проверки условия i>j, а переменная y
2
может принимать значение: «раньше» или «позже»;
7) у
2
имеет значение «раньше» - Р
Е
(у
2
, раньше).
Предикат (
х
i
:X) (x
j
:X) Р
1
(ПС, t(х
i
, x
j
)) соответствует утверждению, что существуют лексемы
х
i
и x
j
, которые образуют синтаксическую группу с именем ПС, а областью значений переменных х
i
,
x
j
является множество Х лексем запроса g (х
i
, x
j
Х).
Необходимо также отметить, что факты 2) и 3) можно описать в одном предикате, т.к.
рассматривается одна и та же лексема x
j
, следовательно, имеет место параметрический предикат
Р
par
(x
j
, t(v
j1
, существительное), t(v
j5
, v
j5
)).
В этом случае продукция записывается в виде: pr
1
s
=<q
1
s
, r
1
s
>, где
q
1
s
= (х
i
:X) Р(x
i
, t(v
i1
, предлог) (x
j
:X) Р
par
(x
j
, t(v
j1
, существительное), t(v
j5
, v
j5
)) P
f
(t
in
(х
i
), y
1
,
f
1
) Р
Е
(у
1
, v
j5
) P
f
(t
in
(i, j), y
2
, f
2
) Р
Е
(у
2
, раньше) (х
i
:X) (x
j
:X) Р
1
(ПС, t(х
i
, x
j
));
r
1
s
= add [P
3
(ПС, t(x
i
, x
j
))]; elim[(X, {x
i
})].
2. Правило построения группы ФИО (фамилия+имя+отчество). Правило ищет два или три
контактно стоящих слова х
i
, х
i+1
и х
i+2
, которые представляют собой имена собственные ИС.
Правило собирает группу ФИО по схемам ИС
1
-ИС
2
-ИС
3
или ИС
1
-ИС
2
, например, Иванов Петр
95
                 Приложение Б. Правила синтаксического анализа

       Система продукций синтаксического анализа включает в себя множество продукций: Ps =
{pris| i = 1,59 }, где pris=, которые объединены по категориям правил, приведенных ниже.
       Первая подсистема правил
       1. Правило построения группы ПС (предлог+существительное). Возможные падежи
существительных имеют непустое пересечение с множеством падежей, которыми управляет
предлог. Предлог может стоять перед самим существительным или перед прилагательным
(прилагательными), после которых следует согласуемое существительное, например, на совещании,
в международной научной конференции. В результате формируется группа ПС, предлог удаляется
из исходного множества лексем. Данное правило позволит удалить избыточную морфологическую
информацию о лексеме, основываясь на свойстве примыкания падежей с предлогами.
       Тогда правило можно представить в виде ситуации: пара лексем хi и хj образует
синтаксическую группу ПС тогда и только тогда, когда имеет место закономерность, описываемая
конъюнкцией следующих фактов:
       1) хi имеет характеристику vi1∈Vi со значением «предлог» - (∃хi:X) Р(xi, t(vi1, предлог));
       2) хj имеет характеристику vj1 со значением «существительное» - (∃xj:X) Р(xj, t(vj1,
существительное));
       3) хj имеет характеристику vj5 со значением сорта «падеж» - (∃xj:X) Р(xj, t(vj5, vj5));
       4) лексема хi принадлежит сорту b1∈B - Pf(tin(хi), y1, f1), где f1 – ссылка на процедуру F1
определения названия категории предлога хi, а переменная y1 может принимать значения:
«родительный», «дательный», «винительный», «творительный» или «предложный»;
       5) у1 равен vj5 - РЕ(у1, vj5);
       6) лексема хi стоит раньше хj лексемы - Pf(tin(i,j), y2, f2), где f2 – ссылка на процедуру F2
проверки условия i>j, а переменная y2 может принимать значение: «раньше» или «позже»;
       7) у2 имеет значение «раньше» - РЕ(у2, раньше).
       Предикат (∃хi:X) (∃xj:X) Р1(ПС, t(хi, xj)) соответствует утверждению, что существуют лексемы
хi и xj, которые образуют синтаксическую группу с именем ПС, а областью значений переменных хi,
xj является множество Х лексем запроса g (хi, xj∈Х).
       Необходимо также отметить, что факты 2) и 3) можно описать в одном предикате, т.к.
рассматривается одна и та же лексема xj, следовательно, имеет место параметрический предикат
Рpar(xj, t(vj1, существительное), t(vj5, vj5)).
       В этом случае продукция записывается в виде: pr1s =, где
       q1s = (∃хi:X) Р(xi, t(vi1, предлог) ∧ (∃xj:X) Рpar(xj, t(vj1, существительное), t(vj5, vj5)) ∧ Pf(tin(хi), y1,
f1) ∧ РЕ(у1, vj5) ∧ Pf(tin(i, j), y2, f2) ∧ РЕ(у2, раньше) ↔ (∃хi:X) (∃xj:X) Р1(ПС, t(хi, xj));
       r1s = add [P3(ПС, t(xi, xj))]; elim[(X, {xi})].
       2. Правило построения группы ФИО (фамилия+имя+отчество). Правило ищет два или три
контактно стоящих слова хi, хi+1 и хi+2, которые представляют собой имена собственные ИС.
Правило собирает группу ФИО по схемам ИС1-ИС2-ИС3 или ИС1-ИС2, например, Иванов Петр


                                                        95