API лексикона: определение морфологического признака для словарной статьи

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 );

// ...

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

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

English version of this page

API layer C++ source code: grammar_engine_api.cpp

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

  © Козиев Илья 2019
изменено 06-Mar-12