Most CAPI classes inherit from capi-object, which has a plist and a name . The subclasses of capi-object are:
The class of all elements that corresponding to an underlying window system element. element defines geometry functionality including geometry hints (see Specifying geometry hints), and a few other basic properties. Note however that not all subclasses of element correspond to an underlying element: some of them are a composition of several elements, and some of them are layout elements.
Subclasses of element are menu for menus (chapter 8), and simple-pane for all other display elements. The subclasses contain layout (Laying Out CAPI Panes), which is used to arrange CAPI elements, and interface (Defining Interface Classes - top level windows), which represents a window, and classes that correspond to specific display elements like button (Button elements).
A mixin class for active elements that need to respond to user input, defining various callbacks (Callbacks). item, collection and menu-object (parent of menu and menu-component) inherit from callbacks.
A mixin class for elements that have a single piece of text like menu-item and button. It can also be used as a way of making individual items in collections/choices (Choices - panes with items) have their own callbacks and properties. item inherits from callbacks.
The superclass of pinboard objects, are lightweight graphical objects which are displayed inside pinboard-layout (Creating graphical objects).
collection and subclass choice
Choice is the mixin class for all elements that have items (Choices - panes with items). collection (and hence choice) inherits from callbacks. The subclasses of choice that can be displayed inherit from simple-pane too.
CAPI User Guide and Reference Manual (Macintosh version) - 3 Aug 2017