Visualizing Catalog Relationships
Seeing the Big Picture
One of the biggest challenges in understanding BSS/OSS catalog architecture is seeing how all the layers connect. Individual concepts make sense in isolation, but the real insight comes when you see the full chain from Product Offering down to Resource — and understand how data flows across it.
This section provides a comprehensive visual reference showing how entities across all catalog layers relate to each other. Use this as a reference map when designing catalogs or diagnosing integration issues.
Catalog relationship types -- how entities connect across product, service, and resource layers
Layer-by-Layer Walkthrough
Following the Chain Top to Bottom
Product Offering Layer
BSS — Product CatalogThe customer-visible catalog. Product Offerings define what is sold, at what price, through which channels. Offerings reference Product Specifications (for structure) and can bundle other offerings. This is the BSS domain.
Product Specification Layer
BSS — Product CatalogThe structural definition layer. Specifications define characteristics, composition rules, and crucially: which CFS types are needed to deliver this product. This is the bridge between BSS and OSS.
CFS Layer (Customer-Facing Service)
OSS — Service CatalogThe service outcome layer. CFS specifications define what the customer experiences, independent of technology. They link downward to RFS specifications through decomposition rules. This is the OSS service domain.
RFS Layer (Resource-Facing Service)
OSS — Service CatalogThe technology implementation layer. RFS specifications define how a service is technically delivered. They link downward to Resource specifications. Multiple RFS sets can implement the same CFS (technology variants).
Resource Layer
OSS — Resource CatalogThe physical/logical reality layer. Resource specifications define what must be allocated and configured on the network. This is the bottom of the catalog chain, directly touching network infrastructure.
Cross-Layer Relationships
Key Cross-Layer Relationships
| From | To | Relationship Type | Cardinality |
|---|---|---|---|
| Product Offering | Product Specification | Is described by | Many PO → 1 PS (typical) |
| Product Offering | Product Offering | Bundles | Many → Many (in bundles) |
| Product Specification | Product Specification | Composes / Depends on | Many → Many |
| Product Specification | CFS Specification | Is realised by | 1 PS → Many CFS |
| CFS Specification | RFS Specification | Decomposes into | 1 CFS → Many RFS |
| RFS Specification | Resource Specification | Requires | 1 RFS → Many Resource |
Reading the Diagram
Think of it as a tree: the Product Offering is the root (what the customer sees), and it branches out into increasingly specific technical details as you move down. Each branch point is a relationship. The leaves are the actual network resources.
It is critical to distinguish between catalog (design-time, specifications) and inventory (runtime, instances). The catalog defines the template: "a broadband product requires an internet access service." The inventory holds the instance: "customer #12345's broadband product is delivered by this specific internet access service instance running on these specific resources."
The catalog diagram shows design-time relationships. When an order is placed, the fulfilment engine traverses these relationships to create inventory instances at each layer.
The full catalog model forms a directed acyclic graph (DAG) — entities at higher layers point to entities at lower layers, and cycles are not permitted. This DAG property is essential for correct order decomposition: the fulfilment engine traverses the graph top-down, and any cycles would cause infinite decomposition loops.
In practice, cross-layer relationships can create a complex graph. Catalog governance must ensure the graph remains acyclic and that all leaf nodes (resources) are resolvable by the resource management system.
Key Takeaways
- The catalog chain flows: Offering → Specification → CFS → RFS → Resource
- Each layer has a distinct owner and purpose: commercial → service → infrastructure
- Relationships define how order decomposition traverses the catalog at fulfilment time
- Design-time (catalog/specifications) vs runtime (inventory/instances) is a critical distinction
- The full model forms a directed acyclic graph — no cycles allowed
- Use this visual map as a reference when designing catalogs or troubleshooting integration