Inventory template naming patterns
Summarize
Summary of Inventory template naming patterns
Inventory template naming patterns in ServiceNow are JavaScript expressions that define how configuration items (CIs) are named when created from inventory templates. This feature helps telecom operators enforce vendor-specific naming conventions for network interfaces and slots, ensuring consistent and accurate naming. Proper naming is critical for operational workflows such as alarm correlation, fault management, and device configuration.
Show less
Where naming patterns apply
Naming patterns can be defined at two levels:
- Equipment model level: Models carry default naming patterns for slots and interfaces, serving as the baseline for templates based on that model.
- Related template level: Each related template (slot, sub-slot, interface) can override the model’s default pattern with its own naming pattern. If no pattern is defined, the system defaults to the inventory model name for the CI.
How naming patterns work
Naming patterns are JavaScript expressions that generate string names by combining literals, variables, string methods, and conditional logic. Variables reference the related template's context and unresolved variables display as “?” in the Inventory Template Overview for easy identification of issues before CI creation.
When naming patterns are evaluated
- Template definition time: Patterns are evaluated and previewed in the Inventory Template Overview tab, showing resolved CI names without creating any CIs. This enables verification and early error detection.
- CI creation time: The resolved names from design time are applied to new CIs when the inventory template is instantiated in the CMDB.
If naming patterns change after CIs exist, administrators must update both the CI records and templates to maintain consistency.
Key features for ServiceNow customers
- The Inventory Template Overview tab provides a hierarchical tree view to verify naming and detect validation errors before deployment.
- Name pattern validation runs at save time and when loading the overview to prevent and catch errors.
- Custom name validation extension points allow administrators to enforce organization-specific naming conventions beyond default checks.
Practical benefits
By using inventory template naming patterns, ServiceNow customers can ensure consistent, vendor-compliant CI naming across their network inventory. This improves operational accuracy, simplifies fault and alarm management, and streamlines device configuration processes. Early validation and previewing reduce errors and rework after CI creation, thereby enhancing data quality in the CMDB.
A naming pattern is a JavaScript expression that defines how a configuration item (CI) is named when it is created from an inventory template.
The naming patterns feature generates vendor-conforming names for network interfaces and slots within inventory templates. Telecom operators can define naming conventions that align with vendor-specific formats to maintain consistency across the network inventory. Accurate names for physical and logical network resources are essential for operational workflows, such as alarm correlation, fault management, and device configuration.
Where naming patterns apply
A naming pattern can be defined in two places:
- On an equipment model. A model carries default naming patterns for the slots and interfaces it contains. The model pattern acts as the default for every template created based on that model.
- On a related template within an inventory template. Each related template — a slot, sub-slot, or interface — carries its own naming pattern. The pattern starts as a copy of the model default and can be edited to override it for each template.
A related template that does not define a naming pattern, such as a card or module template, defaults to the inventory model name at instantiation. In the Inventory Template Overview tab, this fallback name appears as the tree node label. The label matches the name the CI carries after it is created.
What a naming pattern looks like
A naming pattern is a JavaScript expression that returns a string. The expression can reference variables that the system resolves at evaluation time, combine literal text with those variables, apply string methods, and use conditional logic.
A simple pattern concatenates a literal and a variable:
"Slot -"+position
For a related template at position 1, this pattern resolves to Slot -1.
A more complex pattern can use string methods and a ternary conditional:
parent_slot_name.replace("Slot-","Slot/").replace("Slot/","Ge")+" (\" + (position <2 ? \"Tx\" : \"Rx\") + \")\"
For an interface at position 1 whose parent slot is named Slot-6/1, this pattern resolves to Ge6/1 (Tx).
Variables that the pattern references are read from the related template's context. Variables that cannot be resolved at design time are substituted with ? in the Inventory Template Overview tree. For example, a
top-level slot has no parent_slot_name. The tree displays ? so you can identify the gap before using the template to create CIs.
When naming patterns are evaluated
Naming patterns are evaluated at two distinct times:
-
At template definition time, when you open the Inventory Template Overview tab on an inventory template. The Overview evaluates every pattern in the template's hierarchy and displays the resolved name as each tree node's label. No CIs are created at template definition time. The Overview tab provides a preview.
-
When an inventory template is used to create CIs in the CMDB, the names that were resolved at design time are applied to the new CIs. If a naming pattern changes after CIs exist, an administrator must update the name on both the CI record and the template.
The Inventory Template Overview tab enables you to verify naming end to end at design time, before any CIs are created. Without this verification, errors in patterns surface only after CIs exist in the CMDB.