int sol_FindEntryCoordPair( HGREN hEngine, int EntryID, int CategoryID, int StateID )
Аргументы:
hEngine - дескриптор созданного вызовом sol_CreateGrammarEngine экземпляра грамматического словаря.
EntryID - ключ словарной статьи.
CategoryID - ID морфологической категории.
StateID - ID состояния морфологической категории.
Возвращает:
1 есть состояние морфологической категории найдено, 0 в противном случае.
Для получения ID интересующей грамматической категории по ее имени можно воспользоваться функцией sol_FindEnum, либо указать символическую константу из файла _sg_api.*. Например, константа CASE_ru соответствует ID падежа.
Каждый морфологический признак включает несколько категорий. Например, для русский падеж может принимать одно из значений именительный, родительный, творительный, винительный, дательный, предложный, вокатив, локатив и партитив. Интересующая категория указывается с помощью аргумента StateID. Найти ID состояния можно с помощью функции sol_FindEnumState или воспользоваться символической константой.
Для поиска ID словарной статьи можно использовать, к примеру, функцию sol_FindEntry.
При работе с SQL словарем аналогичная информация содержится в таблице SG_ENTRY_COORD.
Пример на 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 );
int collater_accusativ = sol_FindEntryCoordPair( hEngine, entry_id, CASE_ru, ACCUSATIVE_CASE_ru );
// ...
Приобретение SDK грамматического словаря
API layer C++ source code: grammar_engine_api.cpp
Вернуться к списку функций API
© Elijah Koziev 2010
Поисковая система
SDK Поисковой системы
Экранный переводчик
|
|
изменено 23-Aug-11 | ||||||||||||||||||||||||||||||||||||||