Open APIs

TMF620: ProductSpecification API for Devices

  • 1.  TMF620: ProductSpecification API for Devices

    TM Forum Member
    Posted 8 days ago

    What are the recommendation to model the following case:
    We have a iPhone 11 which is defined as :

    • iPhone 11  comes in two storage sizes: 128GB and  64GB
    • iPhone 11  comes in three colors : Black, White and Purple


    There are four SKUs available for this phone

    sku

    color

    memory

    sku_1

    Black

    128GB

    sku_2

    Purple

    64GB

    sku_3

    Black

    64GB

    sku_4

    White

    64GB

     

    Getting and listing all Color and Memory values  at productSpecification.productSpecCharacteristic[*]. productSpecCharacteristicValue[*] is not usable to us as not all the color – memory  combinations are valid.

    Design Patter described at IG1261 Product Catalog Commercial Modeling Patterns v1.0.0 | TM Forum  section 3.5.7 is relevant to our case.  However, providing the Searchable characteristic: [ color + memory]  as ProductSpecificationCharacteristic is  not clear.

    One option we are thinking is the following:

     "productSpecCharacteristic": [

    {

                "configurable": false,

                "extensible": false,

                "name""SKU",

                "minCardinality": 1,

                "maxCardinality": 1,

                "productSpecCharacteristicValue": [

                    {

                        "valueType""list",

                        "value": [

                            {

                                "name": "productOfferingRef",

                                "type": "object",

                                "value": {

                                    "href": "/productOffering/sku_1",

                                    "name": "iPhone 11 balck 128GB",

                                    "id": "sku_1"

                                }

                            },

                            {

                                "name": "color",

                                "type": "object",

                                "value": {

                                    "key": "black",

                                    "name": "Black",

                                    "id": "black"

                                }

                            },

                            {

                                "name": "memory",

                                "type": "object",

                                "value": {

                                    "key": "128gb",

                                    "name": "128GB",

                                    "id": "128gb"

                                }

                            }

                        ],

                        "validFor": {

                            "endDateTime": "",

                            "startDateTime": "2019-09-11T09:30Z"

                        }

                    },

                    …

                   ]

                  }

      }



    ------------------------------
    Jimmy Kongoli
    Epam Systems, Inc.
    ------------------------------