Classes describe the objects that are modeled for use in a Domain Manager. For example, Router is the name of a class, and all routers that are managed by a domain are represented as Router objects in the domain. Every object in a class shares the same set of attributes, although the values of the attributes differ. Hence, every router has an IP address, an attribute, but the actual addresses are different. PowerSupply is also a class, but power supplies do not have IP addresses. However, the event, power outage, is relevant to the PowerSupply class but not to routers. Therefore, a model class is a grouping of all objects that are similar in nature but not in detail.
Every model class has a number of properties, events and operations defined for them. The API provides functions for obtaining details of these definitions.