int sol_GetEntryCoordState( HGREN hEngine, int EntryID, int CategoryID )
Аргументы:
hEngine - дескриптор созданного вызовом sol_CreateGrammarEngine экземпляра грамматического словаря.
EntryID - ключ словарной статьи.
CategoryID - ID морфологической категории.
Возвращает:
ID грамматического признака.
Для получения ID интересующей грамматической категории по ее имени можно воспользоваться функцией sol_FindEnum, либо указать символическую константу из файла _sg_api.*. Например, константа GENDER_ru соответствует ID грамматического рода.
Для поиска ID словарной статьи можно использовать, к примеру, функцию sol_FindEntry.
Для получения текстового представления грамматического признака, ID которого возвращает эта функция, можно использовать функцию sol_GetCoordStateName.
При работе с 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 gender = sol_GetEntryCoordState( hEngine, entry_id, GENDER_ru );
// ...
Пример на C# - определение вида глагола:
IntPtr gren = SolarixGrammarEngineNET.GrammarEngine.sol_CreateGrammarEngineW("..\\..\\bin-windows\\dictionary.xml");
// ...
int entry_id = SolarixGrammarEngineNET.GrammarEngine.sol_FindEntry( hEngine, "ДЕЛАТЬ", -1, -1 );
int aspect = SolarixGrammarEngineNET.GrammarEngine.sol_GetEntryCoordState( hEngine, entry_id, ASPECT_ru );
// ...
Приобретение SDK грамматического словаря
API layer C++ source code: grammar_engine_api.cpp
Вернуться к списку функций API
© Козиев Илья 2019
![]() |
|
изменено 06-Mar-12 |