Service Catalog Blueprint
This document provides a business-oriented blueprint of the advanced service-catalog scenario for Global Telecom Company.
It is intentionally implementation-focused:
- business portfolio intent (what can be sold and promised),
- decomposition intent (how service is technically realized),
- tSM entity model and governance patterns,
- TMF mapping reference for external API contracts.
This is a simplified, documentation-focused example. It does not represent full real-world network-inventory modeling, complete resource topology, or production-grade fulfillment/assurance integration details.
1. Business Context
Global Telecom Company wants to standardize business internet services across multiple access technologies (fiber, microwave, backup access), while keeping one stable commercial service definition.
Main business drivers:
- one reusable CFS definition for commercial governance and SLA policy,
- reusable RFS building blocks per technology domain,
- controlled add-on portfolio (IP, monitoring, SLA, statistics, CPE),
- explicit dependencies for order-to-fulfillment decomposition,
- clear ownership of category and specification definitions.
Expected outcomes:
- faster launch of new internet variants,
- less duplication of technical modeling,
- consistent catalog-to-inventory decomposition behavior,
- better collaboration between product, architecture, and operations teams.
2. Modeling Scope in tSM
This blueprint covers:
- one service catalog (
catalogType=SERVICE), - category split into CFS, RFS access, RFS transport, VAS, and CPE,
- CFS/RFS/VAS specifications for internet service,
- relationship-driven decomposition (cardinality, socket, add-with-parent),
- candidate and qualification placement.
Runtime continuation is documented in:
3. Catalog Foundation (tSM Entity: Catalog)
Catalog detail with a category configuration profile attached:

Catalog definition example:
{
"code": "EntityCatalog_SCSI_Service.Catalog",
"name": "Global Service Catalog",
"catalogType": "SERVICE",
"lifecycleStatus": "ACTIVE",
"entityCatalogCategorySpecId": "Service.Category",
"description": "Reference service catalog for CFS, RFS, VAS and CPE definitions.",
"validityFrom": "2024-11-26",
"dataTags": ["DEMO"],
"config": {
"eventBindings": [
{
"entity": "ServiceInstance",
"event": "beforeUpdate",
"script": "EntityInstanceConfiguration.Event.Before.ForceUpperCaseName"
}
]
}
}
4. Category Governance (tSM Entity: Category)
Category governance is handled through:
- Category Configuration Profile (
Catalog.entityCatalogCategorySpecId), - Specification Configuration Profile (
Category.entitySpecificationSpecId).
Meaning of category-level characteristic setup:
businessOwnersbecomes a structured attribute inCategory.chars,- the referenced form defines both the data model (JSON schema) and UI layout.
Category profile attached on catalog:

Form designer for category owners:

Category list in catalog UI:

Expanded tree with service specifications:

Category detail view (business owners visible in People section):

Category entity examples:
[
{
"code": "Core.Services",
"name": "Core Services",
"entityCatalog": "EntityCatalog_SCSI_Service.Catalog",
"entitySpecificationSpecId": "EntityCatalogSpecification.IP.Layer",
"parent": null,
"sortOrder": 30,
"validityFrom": "2024-11-26",
"chars": {
"businessOwners": {
"owner": "526e6fdd-b7cc-471b-a978-3f35ca548ed4",
"manager": "5407113a-05b4-4784-97e0-95158d212082",
"description": "Description"
}
}
},
{
"code": "Accesses",
"name": "Accesses",
"entityCatalog": "EntityCatalog_SCSI_Service.Catalog",
"entitySpecificationSpecId": "EntityCatalogSpecification.Access.Layer",
"parent": null,
"sortOrder": 10,
"validityFrom": "2024-11-26"
},
{
"code": "Transports",
"name": "Transports",
"entityCatalog": "EntityCatalog_SCSI_Service.Catalog",
"entitySpecificationSpecId": "EntityCatalogSpecification.Transport.Layer",
"parent": null,
"sortOrder": 20,
"validityFrom": "2024-11-26"
},
{
"code": "Value.Added.Services",
"name": "Value Added Services",
"entityCatalog": "EntityCatalog_SCSI_Service.Catalog",
"entitySpecificationSpecId": "EntityCatalogSpecification.VAS.Layer",
"parent": null,
"sortOrder": 40,
"validityFrom": "2024-11-26"
},
{
"code": "CPE.Services",
"name": "CPE Services",
"entityCatalog": "EntityCatalog_SCSI_Service.Catalog",
"entitySpecificationSpecId": "EntityCatalogSpecification.CPE.Layer",
"parent": null,
"sortOrder": 50,
"validityFrom": "2025-01-14"
}
]
5. Service Specification Design (tSM Entity: Specification)
The business split is:
- CFS:
Internet.Service, - RFS access/transport: technology realization services,
- VAS/CPE: optional composable service components.
Specification profile and form configuration:

Specification detail view:

Specification detail with project and SLA attributes:

Specification list grouped by categories:

CFS specification example:
{
"code": "Internet.Service",
"name": "Internet Service",
"category": "Core.Services",
"lifecycleStatus": "ACTIVE",
"instantiable": true,
"entityCatalogSpecificationType": "SERVICE",
"entityInstanceSpecId": "EntityInstanceConfiguration.Internet.Service",
"entityInstanceLocation1Required": "crmAddress",
"entityInstanceLocation2Required": "none",
"validityFrom": "2025-01-12",
"sortOrder": 90,
"chars": {
"project": "Project.Sphere",
"serviceLevelSpecification": "SLA.Gold",
"internetService": {
"internetBandwidth": "100",
"internetServiceSla": "99",
"internetServiceMaxSpeed": "1"
},
"technicalContact": {
"systemSolutionsAdministrator": "d961df5c-305a-49fb-ad7f-3708ebe97311",
"plannedOutage": "1f3426c8-d06e-4595-9ac4-844d584b47a8",
"siteContact": "623668f3-58fe-4f15-92e6-81b860610d4c"
}
}
}
RFS specification example:
{
"code": "Access.Optic.FTTS",
"name": "Access Optic FTTS",
"category": "Accesses",
"lifecycleStatus": "ACTIVE",
"instantiable": true,
"entityCatalogSpecificationType": "SERVICE",
"entityInstanceSpecId": "EntityInstanceConfiguration.Access.Optic.FTTS",
"validityFrom": "2024-11-26",
"chars": {
"connectivityType": "FIBER",
"supplier": "Internal",
"accessTechnology": "FTTS"
}
}
6. Service Decomposition (tSM Entity: Relationship)
Decomposition is governed by Relationship using cardinality and socket semantics.
From (Specification) | To (Specification) | Relationship type | Cardinality | Socket | Add with parent |
|---|---|---|---|---|---|
Internet.Service | Access.Optic.FTTS | DECOMPOSITION | 1..1 | access-main | true |
Internet.Service | Transport.Service | DECOMPOSITION | 1..1 | - | true |
Internet.Service | Public.IP.Service | VAS | 0..1 | ip-option | false |
Internet.Service | Monitoring.Service | VAS | 0..1 | monitoring-option | false |
Internet.Service | SLA.Service | VAS | 0..1 | sla-option | false |
Internet.Service | Operational.Statistics.Service | VAS | 0..1 | ops-option | false |
Internet.Service | CPE.as.part.of.service | HW | 0..1 | cpe-choice | true |
Relationship payload examples:
Network decomposition reference diagram used by architects:

The JSON below shows the same decomposition intent as explicit Relationship records.
[
{
"from": "UUID:Internet.Service",
"to": "UUID:Access.Optic.FTTS",
"entitySpecificationRelationshipType": "DECOMPOSITION",
"cardinalityFrom": 1,
"cardinalityTo": 1,
"addWithParent": true,
"socket": "access-main",
"validityFrom": "2024-11-26"
},
{
"from": "UUID:Internet.Service",
"to": "UUID:Public.IP.Service",
"entitySpecificationRelationshipType": "VAS",
"cardinalityFrom": 0,
"cardinalityTo": 1,
"addWithParent": false,
"socket": "ip-option",
"validityFrom": "2024-11-26"
}
]
7. Candidate Strategy, Qualification, and Product Mapping
Candidate strategy:
- default:
ServiceCandidateauto-created 1:1 withSpecification, - advanced: dedicated candidate model with M:N assignment and approval controls.
Qualification strategy:
- qualification consults catalog and inventory,
- workflow can include automated and manual tasks,
- uncertain availability can branch to full qualification flow.

Product mapping:
- primary pattern:
ProductSpecification isComposedOf ServiceSpecification, - simple mode: direct
serviceCode, - advanced mode: decision tables (location, SLA, access technology, capacity).
8. Runtime Preview
Catalog definitions drive runtime decomposition in inventory:

Runtime behavior, versioning, and commit/rollback are detailed in:
9. General TMF Concepts (Core-Level Only)
In core modeling flow, TMF is treated conceptually:
TMF633as service-catalog integration boundary,TMF638as service-inventory integration boundary,TMF641for service-order interactions.
Detailed payload-level mapping is documented in the next chapter.
10. TMF Mapping Reference (Payloads, Schemas, and Explanation)
10.1 TMF ServiceCatalog Payload
{
"@type": "TsmServiceCatalog",
"@baseType": "Catalog",
"@schemaLocation": "https://tsm-tmobile-ref.datalite.cloud/tmf-api/schema/Service/ServiceCatalog.schema.json",
"href": "https://tsm-tmobile-b2b.datalite.cloud/tsm-tmf/api/serviceCatalogManagement/v5/serviceCatalog/EntityCatalog_SCSI_Service.Catalog",
"id": "EntityCatalog_SCSI_Service.Catalog",
"category": [
{
"@type": "TsmServiceCategoryRef",
"id": "Core.Services",
"href": "https://tsm-tmobile-b2b.datalite.cloud/tsm-tmf/api/serviceCatalogManagement/v5/serviceCategory/Core.Services",
"name": "Core Services",
"@referredType": "Service.Category",
"version": "1.0"
},
{
"@type": "TsmServiceCategoryRef",
"id": "Value.Added.Services",
"href": "https://tsm-tmobile-b2b.datalite.cloud/tsm-tmf/api/serviceCatalogManagement/v5/serviceCategory/Value.Added.Services",
"name": "Value Added Services",
"@referredType": "Service.Category",
"version": "1.0"
},
{
"@type": "TsmServiceCategoryRef",
"id": "Accesses",
"href": "https://tsm-tmobile-b2b.datalite.cloud/tsm-tmf/api/serviceCatalogManagement/v5/serviceCategory/Accesses",
"name": "Accesses",
"@referredType": "Service.Category",
"version": "1.0"
},
{
"@type": "TsmServiceCategoryRef",
"id": "Transports",
"href": "https://tsm-tmobile-b2b.datalite.cloud/tsm-tmf/api/serviceCatalogManagement/v5/serviceCategory/Transports",
"name": "Transports",
"@referredType": "Service.Category",
"version": "1.0"
},
{
"@type": "TsmServiceCategoryRef",
"id": "CPE.Services",
"href": "https://tsm-tmobile-b2b.datalite.cloud/tsm-tmf/api/serviceCatalogManagement/v5/serviceCategory/CPE.Services",
"name": "CPE Services",
"@referredType": "Service.Category",
"version": "1.0"
}
],
"description": "<p>Example Service Catalog for T-Mobile presentation of Service Catalog / Service Inventory TMF compatible capabilities.</p>",
"lastUpdate": "2025-01-15T10:00:04.049+00:00",
"lifecycleStatus": "Active",
"relatedParty": [],
"validFor": {},
"version": "1.0",
"name": "SCSI Service Catalog "
}
10.2 TMF ServiceCategory Payload
{
"@type": "Service.Category",
"@baseType": "Category",
"@schemaLocation": "https://tsm-tmobile-b2b.datalite.cloud/tsm-tmf/api/schemas/serviceCategoryManagement/v5/tsm/Service.Category.schema.json",
"href": "https://tsm-tmobile-b2b.datalite.cloud/tsm-tmf/api/serviceCatalogManagement/v5/serviceCategory/Core.Services",
"id": "Core.Services",
"description": null,
"version": "1.0",
"validFor": {
"startDateTime": "2024-11-26T10:12:54.985+00:00"
},
"lifecycleStatus": "active",
"lastUpdate": "2025-01-15T13:21:03.837+00:00",
"parentId": null,
"isRoot": true,
"serviceCandidate": [
{
"@type": "TsmServiceCandidateRef",
"id": "Internet.Service",
"href": "https://tsm-tmobile-b2b.datalite.cloud/tsm-tmf/api/serviceCatalogManagement/v5/serviceCandidate/Internet.Service",
"name": "Internet Service",
"@referredType": "ServiceCandidate",
"version": "1.0"
}
],
"serviceSpecification": [
{
"@type": "TsmServiceSpecificationRef",
"id": "Internet.Service",
"href": "https://tsm-tmobile-b2b.datalite.cloud/tsm-tmf/api/serviceCatalogManagement/v5/serviceSpecification/Internet.Service",
"name": "Internet Service",
"@referredType": "ServiceSpecification",
"version": "1.0"
}
],
"category": [],
"businessOwners": {
"owner": "526e6fdd-b7cc-471b-a978-3f35ca548ed4",
"manager": "5407113a-05b4-4784-97e0-95158d212082",
"description": "Description"
}
}
10.3 TMF ServiceSpecification Payload
{
"@type": "EntityCatalogSpecification.IP.Layer",
"@baseType": "ServiceSpecification",
"@schemaLocation": "https://tsm-tmobile-b2b.datalite.cloud/tsm-tmf/api/schemas/serviceCatalogManagement/v5/tsm/EntityCatalogSpecification.IP.Layer.schema.json",
"href": "https://tsm-tmobile-b2b.datalite.cloud/tsm-tmf/api/serviceCatalogManagement/v5/serviceSpecification/Internet.Service",
"id": "Internet.Service",
"name": "Internet Service",
"description": "<p>Professional Internet service is provided as a fixed connection service to the worldwide Internet network with guaranteed parameters through the IP communication protocol. It is designed for connecting central offices or large branches or special devices with high requirements for availability and transmission speed. Provisioning of the Professional Internet service includes also field survey, design and installation works and providing equipment up to the handover interface.</p><p></p><p><dtl-tiptap-custom-attachment ownerId=\"23e91449-e3d9-4f48-8b2f-ade2c6ae93dd\" ownerType=\"CatalogSpecification\" attachmentId=\"eb4f885d-2c65-4f12-8891-18b1e5f0c703\"></dtl-tiptap-custom-attachment></p>",
"lastUpdate": "2025-01-29T09:47:46.795+00:00",
"lifecycleStatus": "ACTIVE",
"isBundle": false,
"validFor": {
"startDateTime": "2025-01-12T13:22:11.810+00:00"
},
"version": "1.0",
"attachment": [
{
"@type": "AttachmentRef",
"id": "28b0ecb4-d179-49bc-ba5e-2fce0b38c132",
"href": "https://tsm-tmobile-b2b.datalite.cloud/tsm-dms/api/v2/attachments/28b0ecb4-d179-49bc-ba5e-2fce0b38c132",
"name": "TMF630_REST_API_Design_Guidelines_Part1_v4.2.0.pdf",
"url": "https://tsm-tmobile-b2b.datalite.cloud/tsm-dms/api/v2/attachments/28b0ecb4-d179-49bc-ba5e-2fce0b38c132"
}
],
"specCharacteristic": [
{
"@type": "CharacteristicSpecification",
"id": "Chars.SCSI.Service.Internet.Service",
"name": "Chars.SCSI.Service. Internet.Service",
"valueType": "object",
"description": null,
"configurable": true,
"minCardinality": 1,
"maxCardinality": 1,
"isUnique": false,
"extensible": false,
"@valueSchemaLocation": "https://tsm-tmobile-b2b.datalite.cloud/tsm-tmf/api/schemas/characteristics/Chars.SCSI.Service.Internet.Service.schema.json"
},
{
"@type": "CharacteristicSpecification",
"id": "Chars.SCSI.ServiceInstance.TechnicalContact",
"name": "Chars.SCSI.ServiceInstance.TechnicalContact",
"valueType": "object",
"description": null,
"configurable": true,
"minCardinality": 1,
"maxCardinality": 1,
"isUnique": false,
"extensible": false,
"@valueSchemaLocation": "https://tsm-tmobile-b2b.datalite.cloud/tsm-tmf/api/schemas/characteristics/Chars.SCSI.ServiceInstance.TechnicalContact.schema.json"
}
],
"relatedParty": [],
"constraint": [],
"entitySpecRelationship": [
{
"name": "Decomposition.To",
"role": "RelatesTo",
"validFor": {},
"associationSpec": {
"@type": "TsmAssociationSpecificationRef",
"id": "Public.IP.Service",
"href": "https://tsm-tmobile-b2b.datalite.cloud/tsm-tmf/api/serviceCatalogManagement/v5/serviceSpecification/Public IP Service",
"name": "Public IP Service",
"@referredType": "ServiceSpecification"
},
"relationshipType": "Decomposition.To"
}
],
"serviceLevelSpecification": [
{
"@type": "ServiceLevelSpecificationRef",
"id": "SLA.Gold",
"href": "https://tsm-tmobile-b2b.datalite.cloud/tsm-tmf/api/serviceQualityManagement/v4/serviceLevelSpecification/SLA.Gold"
}
],
"project": "Project.Sphere"
}
10.4 TMF Schema Extensions Used by the Mapping
ServiceCategory schema extension:
{
"type": "object",
"allOf": [
{
"$ref": "https://tsm-tmobile-b2b.datalite.cloud/tsm-tmf/api/schemas/serviceCatalogManagement/v5/ServiceCategory"
},
{
"type": "object",
"properties": {
"businessOwners": {
"$ref": "https://tsm-tmobile-b2b.datalite.cloud/tsm-tmf/api/schemas/characteristics/Chars.SCSI.CategoryManager"
}
}
}
]
}
Chars.SCSI.CategoryManager schema:
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"owner": { "type": "string", "title": "Owner" },
"manager": { "type": "string", "title": "Manager" },
"description": { "type": "string", "title": "Description" }
}
}
ServiceSpecification extension schema:
{
"type": "object",
"allOf": [
{
"$ref": "https://tsm-tmobile-b2b.datalite.cloud/tsm-tmf/api/schemas/serviceCatalogManagement/v5/ServiceSpecification"
},
{
"type": "object",
"properties": {
"project": {
"$ref": "https://tsm-tmobile-b2b.datalite.cloud/tsm-tmf/api/schemas/characteristics/Chars.SCSI.Project"
}
}
}
]
}
Chars.SCSI.Project schema:
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "string",
"title": "Project"
}
Chars.SCSI.Service.Internet.Service schema:
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"inetrnetBandwidth": {
"type": "string",
"oneOf": [
{ "const": "10", "title": "10Mbps" },
{ "const": "20", "title": "20Mbps" },
{ "const": "30", "title": "30Mbps" },
{ "const": "100", "title": "100Mbps" }
],
"title": "Bandwidth"
},
"internetServiceSla": {
"type": "string",
"oneOf": [{ "const": "99", "title": "99.0%" }],
"title": "Default SLA"
},
"internetServiceMaxSpeed": {
"type": "string",
"oneOf": [{ "const": "1", "title": "Up to 1 Gbps" }],
"title": "Max Speed Support"
}
}
}
Chars.SCSI.ServiceInstance.TechnicalContact schema:
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"siteContact": { "type": "string", "title": "Site contact" },
"plannedOutage": { "type": "string", "title": "Contact for planned outage" },
"systemSolutionsAdministrator": {
"type": "string",
"title": "System solutions administrator"
}
}
}
10.5 Comprehensive Mapping Explanation
| TMF payload area | tSM source entity/field | Mapping logic | Notes |
|---|---|---|---|
ServiceCatalog.id/name/lifecycleStatus/validFor | Catalog.code/name/lifecycleStatus/validityFrom/validityTo | direct semantic projection | validFor is TMF time-period projection |
ServiceCatalog.category[] | Category by entityCatalog | reference projection | each row becomes ServiceCategoryRef |
ServiceCategory.businessOwners | Category.chars.businessOwners | characteristic extension projection | governed by Category Configuration Profile |
ServiceCategory.serviceSpecification[] | Specification by category | reference projection | includes candidate/spec references |
ServiceSpecification.specCharacteristic[] | profile-driven characteristic definitions | configuration-profile projection | from Specification Configuration Profile |
ServiceSpecification.entitySpecRelationship[] | Relationship records | relationship projection | may include additional extension attributes |
ServiceSpecification.serviceLevelSpecification[] | Specification.chars.serviceLevelSpecification | characteristic-to-reference projection | implementation specific mapping |
@type/@schemaLocation | selected profile and generated schema metadata | extension contract projection | preserves TMF extensibility pattern |
Additional mapping rules:
- tSM design entities are the primary source of truth.
- TMF payloads are API projections of that design-time truth.
- Characteristic forms define both UI and JSON schema contracts.
- Relationship cardinality/socket semantics stay authoritative in tSM and are projected to TMF contract shape.