Configuration Profiles & Characteristics
Configuration Profiles in tSM provide a powerful way to extend the data model of core entities (like Tickets, Customers, Orders) without changing the base schema. They define both the available dynamic fields (called characteristics) and the forms used to display/edit those fields in the UI.
What is a Configuration Profile?
A Configuration Profile (technically based on the TM Forum's EntitySpecification
) is a metadata object linked to a specific entity instance via its entitySpecId
. It defines:
- Which Characteristics should be available to the entity
- Which Forms (selectors) are registered for displaying the entity
For example, a Ticket entity with entitySpecId = "tsm-ticket-basic"
might use:
- 8 Characteristics: priority, slaWindow, causeCode...
- 2 Forms:
tsm-ticket-detail
,tsm-ticket-new
What is a Characteristic?
A Characteristic is a dynamic field bound to an entity instance and defined in the Configuration Profile. In the data model, these values live inside the chars
map:
"chars": {
"slaWindow": "4h",
"priority": "High",
"incidentType": "Hardware"
}
Each characteristic has metadata including:
Property | Description |
---|---|
Subtitle | Display label in the UI |
JSON attribute name | Key in the chars object |
Read/Edit permissions | Restricts visibility/editing |
Bound Form | Defines which form renders the field |
Display Order (legacy) | Legacy sorting preference |
Readonly (legacy) | Deprecated flag used in older forms |
These characteristics show up as fields in the Form Designer palette, organized by form section.
Visual Reference
- A profile bundles characteristics together logically (per product, use-case, or vertical)
- The same entity type (e.g. Ticket) may have multiple profiles with distinct layouts and fields
- This allows extreme configurability without schema-level changes
Forms in Profiles
Each profile references one or more Form Selectors:
- Form selectors like
tsm-customer-detail
are used by the UI to locate which JSON Schema to render - Each selector links to a registered configuration in the system
- Different selectors can be used for different lifecycle states or roles (e.g. read-only, new, SLA editor)
Summary
Concept | Role in tSM |
---|---|
Configuration Profile | Container for characteristics + form mappings |
Characteristic | Dynamic field shown in the form via chars |
Form Selector | UI representation (form layout, logic, schema) |
entitySpecId | ID that links entity → profile |
Configuration Profiles allow for flexible, reusable form and field definitions across various domains — enabling powerful modeling with zero backend code changes.