Hi,
I have a query can it also be used to depict Parent/Child relationships?
Yes. relationship are meant for that. you can even create multiple relationship with different types on the same product/item.
All ordering APIs use the xxx_ItemRelationship
sub-resource where xxx_ represent a cart, order...
But the documentation is sometimes inconsistent between the different ordering APIs. Have a look at other ordering APIs to have more insights on how xxx_ItemRelationship
is used.
Actually, xxx_ItemRelationship
is the only way to create parent/child relationship. TMF622 has an example of a bundle offer using xxx_ItemRelationship
what can be the relationshipType value in that case?
In the Information Framework, some relationshipType attributes suggest these values:
- parent/child
- composite/atomic
depending from which point of view (WAN or IP VPN Static IP) you read the relationship.
TMF622 suggest to use "bundles".
for your second question, you should check the conformance PDF guide for this API.
Just keep in mind that the xxx_ItemRelationship
pattern is used in all ordering TMF APIs. It's a consistant model and use the same semantics accross these APIs.
On a side note, we will soon create a new cart APIs to represent a shopping cart where bundle are represented like you suggested. But this is only for our digital sales channels and we use a GraphQL server for this, we don't modify the TMF api.
------------------------------
Kind regards,
Matthieu Hattab
Lyse Platform
------------------------------
Original Message:
Sent: Sep 19, 2024 03:47
From: Nilesh Bawiskar
Subject: TMF 641 Relationships tags
Hello,
On the TMF641, I am trying to understand the below mentioned different type of relationships possible at different levels:
- orderRelationship
- orderItemRelationship
- serviceRelationship
My understanding is as below
1. The orderRelationship is something related to a dependency / relies on a different service order to complete, so the orchestration understands it has to wait until the other serviceOrder completes to start processing this.
2. orderItemRelationships is for the relationship between the order items. it is mentioned in the guide "dependency if the order item needs to be not started until another order item is complete."
3. Servicerelationship: links with other services in the inventory.
on point#2 above i have below query
- I have a query can it also be used to depict Parent/Child relationships? what can be the relationshipType value in that case? here WAN is child of IP VPN Static IP access orderitem.
- e,g:
"id": "2",
"action": "add",
"@type": "ServiceOrderItem",
"service": {
"id": "2",
"name": "IP VPN Static IP Access"
}
"service": {
"id": "5",
"name": "WAN"
"serviceState": "designed",
"serviceOrderItemRelationship": [{
"orderItem": "2",
"relationshipType": "Parent/Child??"
}}
2. Instead of using the OrderItemRelationShips can i include the OrderItem(as child) inside the parent orderItem?
- eg:
"id": "2",
"action": "add",
"@type": "ServiceOrderItem",
"service": {
"id": "2",
"name": "IP VPN Static IP Access"
"serviceState": "designed",
{
"id": "5",
"action": "add",
"@type": "ServiceOrderItem",
"service": {
"id": "5",
"name": "WAN"
"serviceState": "designed",
}
}
Which option would best the best from the implementation perspective?
Thank you
------------------------------
Nilesh Bawiskar
Infosys
------------------------------