Получение грамматических форм слова

C/C++:

HGREN_STR sol_GenerateWordforms( HGREN hEngine, int EntryID, int npairs, const int * pairs )

C#:

System.Collections.ArrayList sol_GenerateWordformsFX( IntPtr hEngine, int EntryID, System.Collections.ArrayList CoordIDs, System.Collections.ArrayList StateIDs )

Аргументы:

hEngine - дескриптор экземпляра грамматического словаря.

EntryID - первичный ключ словарной статьи.

npairs - количество пар целых чисел, переданных как аргумент pairs.

pairs - указатель на вектор целых чисел, состоящий из пар (CoordID, StateID).

Вариант для .NET позволяет удобно задавать аргументы-списки и получать список строк в виде привычных объектов, а не низкоуровневых типов.

Возвращает:

Дескриптор для вектора строк, соответствующих найденным грамматическим формам слова.

Примечания

Вектор пар значений (CoordID,StateID) определяет, какие именно грамматические формы нас интересуют. Первое значение в паре - это первичный ключ грамматической категории. К примеру, падеж CASE_ru, или род GENDER_ru, глагольное время TENSE_ru. Для указания на грамматическую категорию можно использовать либо символические константы, либо выполнить поиск с помощью функции sol_FindEnum. Второй элемент пары - это ID состояния категории, например винительный для падежа или прошедшее для времени. Найти первичный ключ состояния можно либо функцией sol_FindEnumState, либо использовать символическую константу типа LOCATIVE_CASE_ru.

Заданному набору грамматических признаков может соответствовать несколько альтернативных грамматических форм. Например, для некоторых русских существительных существуют поэтические формы творительного падежа с прохладою, не отличимые от обычного творительного падежа с прохладой грамматически. Программа Грамматический Словарь Русского Языка и веб-страница Лексикон позволяют проверить наличие таких грамматических форм. Поэтому данная функция возвращает дескриптор списка строк, иногда содержащий 2 или более элементов. Для работы с этим вектором следует использовать процедуры sol_CountString, sol_GetString, sol_GetStrings. После окончания работы с ним следует вызвать процедуру sol_DeleteString для освобождения занимаемой памяти.

Альтернативный путь получения грамматических форм для существительных, прилагательных, причастий и глаголов - это алгоритмы склонения и спряжения.

Примеры

C++: получение форм творительного падежа для русского существительного

#include "solarix_grammar_engine.h"
...
HGREN hEngine = sol_CreateGrammarEngineW(L"..\\..\\bin-windows\\dictionary.xml");
...
int entry_id = sol_FindEntry( hEngine, L"ПРОХЛАДА", NOUN_ru, RUSSIAN_LANGUAGE );
const int pairs[4] = { NUMBER_ru, SINGULAR_NUMBER_ru, CASE_ru, INSTRUMENTAL_CASE_ru };
HGREN_STR hStr = sol_GenerateWordforms( hEngine, entry_id, 2, pairs );

int nstr = sol_CountStrings( hStr );
for( int i=0; i<nstr; i++ )
 {
  wchar_t word[MAX_WORDLEN];
  sol_GetString( hStr, str_list, i, word );
  ...
 }

sol_DeleteStrings( hStr );
// ...

Навигация по API грамматического словаря

Приобретение SDK грамматического словаря

API layer C++ source code: grammar_engine_api.cpp

Вернуться к списку функций API

  © Elijah Koziev 2010
прикладные проекты на основе грамматического словаря API грамматической машины компоненты для доступа к грамматическому словарю условия получения SDK токенизатор и сегментатор морфологический анализ и синтез лемматизатор база N-грамм синтаксический анализатор словоформы морфология и синтаксис русского языка падеж число род совершенный и несовершенный вид экспорт в SQL формат экспорт в XML формат скрипт SQL словаря структура SQL словаря структура XML словаря компоненты для доступа к грамматическому словарю ORM Persistent Dictionary Library лемматизация стемминг примеры использования грамматического словаря склонение существительных в русском языке склонение русских прилагательных спряжение глаголов в русском языке поиск текста с учетом морфологии OCR подсистема расширенные регулярные выражения генератор текста генератор случайного текста и имитатор рандомизатор синонимизатор перефразировщик Статистика буквенных паттернов

Грамматический словарь русского языка



Грамматический словарь
склонение и спряжение глаголов, существительных, прилагательных

В состав входит русский и английский словарь.

платформа:  Windows 2000 ... Windows 7
требования: 512 Mb свободной памяти, 300 Мб на диске
размер:         34 Мб

  скачать грамматический словарь купить грамматический словарь SDK грамматического словаря
грамматический словарь русского языка



SDK Грамматического словаря



SDK Грамматического Словаря
склонение и спряжение глаголов, существительных, прилагательных

В состав входит русский и английский словарь.

платформа:  Windows 2000 ... Windows 7
размер:         13 Мб

SQL словарь (демо):
sqlite mysql oracle firebird mssql

скачать демо-версию SDK купить SDK API грамматического словаря



Поисковая система



Integra
настольная и сетевая поисковая система 

платформа:  Windows XP ... Windows 7
требования: 512 Mb свободной памяти
размер:         21 Мб

Дополнительные компоненты:
MySQL поисковый сервер 13.5 Мб
Integra.Premium MySQL 3.9 Мб

скачать поисковую систему SDK поисковой системыописание поисковой системы



SDK Поисковой системы



SDK Поискового движка
API для настольной и сетевой поисковая система 

платформа:  Windows XP ... Windows 7
размер:         17 Мб

Дополнительные компоненты:

MySQL поисковый сервер 13.5 Мб
Integra.Premium MySQL 3.9 Мб

скачать SDK SDK поисковой системы



Экранный переводчик



Translator
экранный переводчик

платформа:  Windows XP ... Windows 7
требования: 256 Mb свободной памяти
размер:         4.4 Мб

Дополнительные компоненты:
расширенный англо-русский словарь 6.4 Мб


скачать экранный переводчикописание экранного переводчика



изменено 23-Aug-11