Skip to main content
Version: 2.4

Data Model Extension

The Data Model Extension section covers the configuration entities that let you extend the tSM data model with dynamic attributes and introduce entirely new record families:

EntityPurpose
FormJSON Schema that defines the shape and validation rules of a data structure.
CharacteristicsA named dynamic attribute backed by a Form — the unit of extension for any entity.
Entity SpecificationA Configuration Profile that groups Characteristics into a coherent set applied to an entity subtype.
Custom EntitiesNew record families that behave like native tSM entities, built on top of EntityType + Entity Specification + Characteristics.

The first three entities implement the TM Forum Characteristics Pattern — a standard approach for extending entities with dynamic attributes without modifying core tables. Custom Entities take this further by letting you define entirely new entity classes with their own API, UI, and supporting entities.

For the architectural overview, see Entities & Characteristics.

How the pieces fit together

Form  ──defines schema for──▶  Characteristics  ──grouped by──▶  Entity Specification

applies to

Entity instance
(Customer, Ticket, Order …)

or a Custom Entity instance
(Cable, SLA Contract, Asset …)
  1. A Form is created in the Form Designer — it contains a JSON Schema, optional example value, and rendering hints.
  2. A Characteristics record wraps a Form, gives it a stable attributeName, and adds metadata (privileges, ElasticSearch indexing, display order).
  3. An Entity Specification (also called Configuration Profile in the UI) bundles one or more Characteristics together and is assigned to an EntityType subtype (e.g., Retail Customer, SDWAN Order).
  4. A Custom Entity registers a new EntityType with its own API routing, UI widgets, and type catalog — each type backed by an Entity Specification.

When an entity instance is created with a given Entity Specification, the platform renders and stores the dynamic attributes defined by the associated Characteristics.


Relation to other configuration entities

  • ConfigType — all configuration entities carry a configType field that groups them into a business package.
  • EntityType — Entity Specification links to an EntityType to declare which "class" of records it applies to.
  • Form Designer — the visual tool for authoring the JSON Schema that underpins a Form entity.
  • Supporting Entities — Custom Entities can own attachments, comments, worklogs, etc. via the standard ownership model.