The GDMO language specifies managed objects and other
related management information. This management information is specified
by templates. The template is an archetype for each type of management
information. Each template defines a new management information
specification.
Each part of the template is identified by keywords either preceded or
followed by the new definition. A template is typically identified by a
name that is used to identify the definition in the specifications (that
is used by human beings) and in most cases has a registered value that is
used to identify the definition in the protocol (that is used by the
computer systems).
A managed object class template specifies the characteristics of that class.
The managed object is specified as a set of packages. Each of the packages
is a collection of attributes,
notifications, actions and the related behaviour. Packages can
be mandatory or conditional.
Attributes are visible to the manager system
and are used to represent states, counts, names, etc. Attributes are read
by GET Operations and written using SET
Operations.
Notifications enable
the agent system to inform the manager system about some change to managed
object and represent alarms, state changes, security violations and other
changes that need to be reported. Notifications can be logged or set
as EVENT REPORT Operation from the
agent system to the manager system.
Actions enable the manager to produce an
affect on the whole managed object, rather than on a single attribute, for
example reset, clear, etc. Actions are implemented over the CMIP by an ACTION
Operation.
Managed object classes can be derived from other managed object
classes. All the characteristics of the managed object class from which
the new class is derived are taken up by the new managed object class.
Characteristics are grouped together into packages. Packages are the
preferred unit of the specification of optional characteristics in managed object class specifications. Typically
a managed object class will constructed from a number of package
definitions.
Each of the attributes, notifications, and actions are also specified as
templates, so that they can be re-used in other packages.