The classes ODDispatchModule, ODExtension, ODFocusModule, and ODPart
are missing the descriptions of the constructor method, somInit, and
the destructor method, somUninit. These methods are described here.

somInit
-------
The somInit method should construct an object.

     void somInit(in <ObjectType> somSelf);

     somSelf     A reference to the object.

DISCUSSION

     Your part calls this method to associate the proper constants 
     (zero or null) with the appropriate fields. This constructor 
     method cannot fail.

somUninit
---------
The somUninit method should destruct an object.

     void somUninit(in <ObjectType> somSelf);

     somSelf     A reference to the object.

DISCUSSION

     Your part calls this method to associate the proper constants 
     (zero or null) with the appropriate fields. This destructor 
     method cannot fail.

In addition, ODPart is also missing the descriptions of the
initialization methods, InitPart and InitPartFromStorage.

InitPart
-------
The InitPart method is called to allow your part to initialize itself

     void InitPart (in ODStorageUnit storageUnit, 
                    in ODPartWrapper partWrapper);

     storageUnit      A reference to the empty storage unit to be 
                      used by this part for its primary persistent 
                      store.

     partWrapper      The partWrapper object for this part.  The part 
                      should store this pointer to its partWrapper 
                      object which it should then pass out to any api
                      calls which require that it pass in a pointer to
                      a part representing itself.  The part should 
                      NEVER pass out a pointer to somSelf.

DISCUSSION

Derived class must call ODPersistentObject::InitPersistentObject
(storageUnit) before derived class behavior. This method is called by
the draft object the first time this part is instantiated from
persistent storage. This method is called after the draft object's
CreatePart method has been called.

Derived class must override. Derived class cannot call base class
behavior.
    
InitPartFromStorage
------------------
The InitPartFromStorage method is called to allow your part to
initialize itself from stored data.

     void InitPartFromStorage (in ODStorageUnit storageUnit, 
                               in ODPartWrapper partWrapper);

     storageUnit     A reference to the specified storage unit which 
                     this part should read its persistent state from.

     partWrapper     The partWrapper object for this part.  The part 
                     should store this pointer to its partWrapper
                     object which it should then pass out to any api
                     calls which require that it pass in a pointer to
                     a part representing itself.  The part should 
                     NEVER pass out a pointer to somSelf.

DISCUSSION

Derived class must call
ODPersistentObject::InitPersistentObjectFromStorage (storageUnit)
before derived class behavior. This method is called by the draft
object on all subsequent occasions that this part is requested from
persistent storage. This method differs from the InitPart method in
that it is called after the draft object's GetPart method has been
called.

Derived class must override. Derived class cannot call base class
behavior.

