Provided by: librulexdb-dev_3.8.6-1_amd64 bug

NAME

       rulexdb_subscribe_item - put new dictionary item into the rulex database

SYNOPSIS

       #include <rulexdb.h>

       int rulexdb_subscribe_item(RULEXDB *rulexdb, const char *key, const char *value, int item_type, int overwrite);

DESCRIPTION

       The  rulexdb_subscribe_item()  function  inserts  new  item  into  one  of the dictionary datasets in the
       database referenced by rulexdb argument.

       The argument key points to a text string containing the original word.

       The argument value points to the corresponding pronunciation string.

       The argument item_type specifies target dataset. It may accept one of the following values:

       RULEXDB_LEXBASE
              The item represents a lexical base, therefore should be inserted into the Implicit dictionary.

       RULEXDB_EXCEPTION
              Explicit item that should be inserted into the Explicit dictionary.

       RULEXDB_DEFAULT
              Target dictionary should be guessed according to specified key: if it represents any lexical base,
              then Implicit dictionary will be chosen, otherwise the Explicit dictionary will be  used.  If  key
              word  is  recognized  as a lexical base, but the record for this key already exist in the Implicit
              dictionary, then Explicit dictionary will be tried instead.

       The argument overwrite If true (non-zero) the new item will replace already existing one  with  the  same
       key if any. Otherwise the new item will not be stored.

RETURN VALUE

       The  rulexdb_subscribe_item()  function  returns  RULEXDB_SUCCESS  which  is zero when specified item was
       successfully subscribed, positive  value  RULEXDB_SPECIAL  when  specified  key  already  exists  in  the
       dictionary, or negative error code otherwise.

ERRORS

       RULEXDB_FAILURE
              Referenced  database  has  not  been  opened, internal data structures are corrupted or some other
              general failure has occurred.

       RULEXDB_EINVKEY
              Invalid key specified.

       RULEXDB_EINVREC
              Invalid pronunciation string specified.

       RULEXDB_EPARM
              The argument rulexdb or item_type has an invalid value.

       RULEXDB_EACCESS
              The database is not opened for updating.

SEE ALSO

       rulexdb_classify(3),    rulexdb_close(3),     rulexdb_dataset_name(3),     rulexdb_discard_dictionary(3),
       rulexdb_discard_ruleset(3),     rulexdb_fetch_rule(3),    rulexdb_lexbase(3),    rulexdb_load_ruleset(3),
       rulexdb_open(3),     rulexdb_remove_item(3),     rulexdb_remove_rule(3),     rulexdb_remove_this_item(3),
       rulexdb_retrieve_item(3), rulexdb_search(3), rulexdb_seq(3), rulexdb_subscribe_rule(3)

AUTHOR

       Igor B. Poretsky <poretsky@mlbox.ru>.

                                                February 19, 2012                      RULEXDB_SUBSCRIBE_ITEM(3)