Open APIs

 View Only
  • 1.  TMF 641 Relationships tags

    TM Forum Member
    Posted 22 days ago
    Edited by Nilesh Bawiskar 22 days ago

    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

    1. 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.
      1. 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?   

      1. 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
    ------------------------------



  • 2.  RE: TMF 641 Relationships tags

    TM Forum Member
    Posted 22 days ago

    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
    ------------------------------