Provided by: wordnet-dev_3.0-33_amd64 bug

NAME

       morphinit, re_morphinit, morphstr, morphword - WordNet morphological processor functions

SYNOPSIS

       #include "wn.h"

       int morphinit(void);

       int re_morphinit(void);

       char *morphstr(char *origstr, int pos);

       char *morphword(char *word, int pos);

DESCRIPTION

       The WordNet morphological processor, Morphy, is accessed through these functions:

       morphinit()  is  used  to  open the exception list files.  It returns 0 if successful, -1 otherwise.  The
       exception list files must be opened before morphstr() or morphword( are called.

       re_morphinit() is used to close the exception list files and reopen them, and  is  used  exclusively  for
       WordNet development.  Return codes are as described above.

       morphstr()  is the basic user interface to Morphy.  It tries to find the base form (lemma) of the word or
       collocation origstr in the specified pos.  The first call (with origstr specified) returns a  pointer  to
       the  first  base form found.  Subsequent calls requesting base forms of the same string must be made with
       the first argument of NULL.  When no more base forms for origstr can be found, NULL  is  returned.   Note
       that  morphstr()  returns a pointer to a static character buffer.  A subsequent call to morphstr() with a
       new string (instead of NULL) will overwrite the string pointed to by a previous call.  Users should  copy
       the  returned  string into a local buffer, or use the C library function strdup to duplicate the returned
       string into a malloc'd buffer.

       morphword() tries to find the base form of word in  the  specified  pos.   This  function  is  called  by
       morphstr()  for  each  individual  word  in  a collocation.  Note that morphword() returns a pointer to a
       static character buffer.  A subsequent call to morphword() will overwrite the  string  pointed  to  by  a
       previous  call.  Users should copy the returned string into a local buffer, or use the C library function
       strdup to duplicate the returned string into a malloc'd buffer.

NOTES

       morphinit() is called by wninit()  and  is  not  intended  to  be  called  directly  by  an  application.
       Applications wishing to use WordNet and/or the morphological functions must call wninit() at the start of
       the program.  See wnutil(3WN) for more information.

       origstr may be either a word or  a  collocation  formed  by  joining  individual  words  with  underscore
       characters (_).

       Usually only morphstr() is called from applications, as it works on both words and collocations.

       pos must be one of the following:

              1    NOUN
              2    VERB
              3    ADJECTIVE
              4    ADVERB
              5    ADJECTIVE_SATELLITE

       If ADJECTIVE_SATELLITE is passed, it is treated by morphstr() as ADJECTIVE.

SEE ALSO

       wnintro(3WN), wnsearch(3WN), wndb(5WN), morphy(7WN).

WARNINGS

       Passing an invalid part of speech will result in a core dump.

       The WordNet database files must be open to use morphstr() or morphword().

BUGS

       Morphy  will  allow  non-words to be converted to words, if they follow one of the rules described above.
       For example, it will happily convert plantes to plants.