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.