Configuration · Topic 1 of 2

CI Class Manager and the Class Hierarchy

CI Class Manager for the CIS-DF exam: CMDB tables and classes, attributes, inheritance, extending a class, and the class-level rule and health settings.

  • 5 min
In a nutshell
  • CI classes are tables that extend cmdb_ci; the hierarchy defines inheritance.
  • Child classes inherit attributes, and also identification and reconciliation rules unless their own rules are defined.
  • CI Class Manager is the single place to view a class's attributes, identification and reconciliation rules, dependent and suggested relationships, health settings and CI list.

What it is

Every configuration item (CI) lives in a table that extends the base Configuration Item table, cmdb_ci. Each of those tables is a class, and together they form the class hierarchy: Hardware, then Computer, then Server, then Linux Server, and so on.

CI Class Manager is the central place to explore and change that hierarchy. You open it from Configuration > CI Class Manager, pick a class, and see its table definition, attributes, rules, relationships, health settings and the CIs in it. You can also extend a class there to create a child class.

cmdb cibase classHardwareComputerServerLinux Serverinherits every parent attribute

How it works

Tables, classes and inheritance

A child class inherits all attributes of its parents. A Linux Server record has the fields of Server, Computer, Hardware and the base CI table, plus any fields defined on Linux Server itself.

Rules inherit the same way. A new class takes its identification and reconciliation rules from its parent unless rules are defined on the child. This is why a class you extend is identified correctly from day one, and why a change to a parent rule reaches every child below it.

What each class shows in CI Class Manager

SectionWhat you do there
Basic InfoView display name, table name, description and icon; table name cannot be edited
AttributesView the columns, edit them and add new ones
Identification and ReconciliationIdentification and inclusion rules, reconciliation rules, data refresh rules
Dependent RelationshipsHosting and containment relationships the class needs to be identified
Suggested RelationshipsRelationship types that make sense for the class
HealthClass-level CMDB Health settings, scorecards and KPIs
CI ListThe CIs in the class

Reading these sections generally needs the itil role. Changing class definitions needs itil_admin, and editing attributes needs personalize_dictionary.

Attributes

Attributes are the columns of the class table. An attribute defined on a parent class appears on every child, so add an attribute at the lowest class that actually needs it. An attribute on cmdb_ci shows up on every CI in the CMDB.

An attribute can also be flagged as a CI identifier in its definition. Identifier attributes are the ones you use as criterion attributes in the class's identification rule.

When to extend a class

Use an existing out-of-box class whenever one fits the thing you are modeling. Out-of-box classes already have identification rules, suggested relationships, health settings and support from Discovery, Service Mapping and Service Graph Connectors.

Extend a class only when a real kind of CI has no class and needs its own attributes or rules. Extend from the closest parent so the new class inherits the most useful attributes and rules. A custom table that does not extend cmdb_ci is not a CI class at all, so the IRE, CMDB Health and CMDB tools will not treat it as CMDB data.

New CI typeExisting class fitsuse itDoneNew CI typeNo class fitsExtend closest parentin CI Class ManagerChild inheritsattributes and rules

How the exam asks about this

  • "A team needs to see every attribute, rule and health setting for the Windows Server class in one place." Open the class in CI Class Manager.
  • "A new device type has no matching class and needs two extra fields." Extend the closest parent class in CI Class Manager and add the attributes to the new child class.
  • "An administrator wants a field to be used when matching incoming data to existing CIs." Mark the attribute as a CI identifier and use it in the class's identification rule.

What to remember for the exam

  • CI classes are tables that extend cmdb_ci; the hierarchy defines inheritance.
  • Child classes inherit attributes, and also identification and reconciliation rules unless their own rules are defined.
  • CI Class Manager is the single place to view a class's attributes, identification and reconciliation rules, dependent and suggested relationships, health settings and CI list.
  • Prefer out-of-box classes; extend the closest parent only when nothing fits.
  • Add an attribute at the lowest class that needs it, not on the base class.
  • The table name of a class cannot be changed in Basic Info.
Watch out

A custom table that does not extend the CI hierarchy is outside the CMDB. It gets no identification, no reconciliation and no health scoring, even if it holds server data.

Common mistakes

Creating a class for every variation. A different vendor, location or owner is an attribute value, not a new class. Too many custom classes spread data thin and add upgrade work.

Adding attributes too high in the tree. A field added to cmdb_ci appears on every CI, including classes where it means nothing. That clutters forms and drags down completeness scores.

Forgetting that rules are inherited. Editing the identification rule of a parent class changes how every child without its own rule is matched. Check which classes inherit the rule before changing it.

Check yourself

  • Where do you see a class's attributes, identification rule, suggested relationships and health settings together?

    In CI Class Manager, by selecting the class in the hierarchy. Each of those is a section of the class view.

  • What does a newly extended class use for identification if no rule is defined on it?

    It inherits the identification and reconciliation rules of its parent class.

  • When is extending a class the right choice?

    When no existing class fits the kind of CI and it needs its own attributes or rules. Extend from the closest parent so it inherits as much as possible.

Topic 1 of 2 in Configuration

Test yourself on Configuration

The full ServiceNow CIS-DF question bank has 769 questions, with timed practice exams and an explanation for every answer.

This study guide is independent and is not affiliated with, endorsed by, or sponsored by ServiceNow. Vendor names, certification names and exam codes are trademarks of their respective owners and are used for identification only.