Skip to main content
Version: 2.4

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.
Simplification Scope

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:

  1. faster launch of new internet variants,
  2. less duplication of technical modeling,
  3. consistent catalog-to-inventory decomposition behavior,
  4. 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:

Service catalog detail

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:

  • businessOwners becomes a structured attribute in Category.chars,
  • the referenced form defines both the data model (JSON schema) and UI layout.

Category profile attached on catalog:

Category profile on catalog

Form designer for category owners:

Category business owners characteristic

Category list in catalog UI:

Category list

Expanded tree with service specifications:

Category tree with service specifications

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

Category detail example

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 profile

Specification detail view:

Specification detail

Specification detail with project and SLA attributes:

Specification detail with project/sla

Specification list grouped by categories:

Specification list by category

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 typeCardinalitySocketAdd with parent
Internet.ServiceAccess.Optic.FTTSDECOMPOSITION1..1access-maintrue
Internet.ServiceTransport.ServiceDECOMPOSITION1..1-true
Internet.ServicePublic.IP.ServiceVAS0..1ip-optionfalse
Internet.ServiceMonitoring.ServiceVAS0..1monitoring-optionfalse
Internet.ServiceSLA.ServiceVAS0..1sla-optionfalse
Internet.ServiceOperational.Statistics.ServiceVAS0..1ops-optionfalse
Internet.ServiceCPE.as.part.of.serviceHW0..1cpe-choicetrue

Relationship payload examples:

Network decomposition reference diagram used by architects:

Network architecture reference

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: ServiceCandidate auto-created 1:1 with Specification,
  • 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.

Qualification workflow example

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:

Service instance with decomposition

Runtime behavior, versioning, and commit/rollback are detailed in:

9. General TMF Concepts (Core-Level Only)

In core modeling flow, TMF is treated conceptually:

  • TMF633 as service-catalog integration boundary,
  • TMF638 as service-inventory integration boundary,
  • TMF641 for 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 areatSM source entity/fieldMapping logicNotes
ServiceCatalog.id/name/lifecycleStatus/validForCatalog.code/name/lifecycleStatus/validityFrom/validityTodirect semantic projectionvalidFor is TMF time-period projection
ServiceCatalog.category[]Category by entityCatalogreference projectioneach row becomes ServiceCategoryRef
ServiceCategory.businessOwnersCategory.chars.businessOwnerscharacteristic extension projectiongoverned by Category Configuration Profile
ServiceCategory.serviceSpecification[]Specification by categoryreference projectionincludes candidate/spec references
ServiceSpecification.specCharacteristic[]profile-driven characteristic definitionsconfiguration-profile projectionfrom Specification Configuration Profile
ServiceSpecification.entitySpecRelationship[]Relationship recordsrelationship projectionmay include additional extension attributes
ServiceSpecification.serviceLevelSpecification[]Specification.chars.serviceLevelSpecificationcharacteristic-to-reference projectionimplementation specific mapping
@type/@schemaLocationselected profile and generated schema metadataextension contract projectionpreserves TMF extensibility pattern

Additional mapping rules:

  1. tSM design entities are the primary source of truth.
  2. TMF payloads are API projections of that design-time truth.
  3. Characteristic forms define both UI and JSON schema contracts.
  4. Relationship cardinality/socket semantics stay authoritative in tSM and are projected to TMF contract shape.