Open APIs

 View Only
  • 1.  TMF 633 - Service Catalog Management

    TM Forum Member
    Posted Jan 21, 2020 11:18
    Hi All,

    We are using TMForum SID model for persistence and exposing it through TMForum Open API. When we are trying to use TMForum Open API 633, we found that id attribute is not found in Service Specification Characteristic entity inside Service Specification model. But in SID model we have many to many relationship between Service Specification and Service Specification Characteristic, which means we can reuse Service Specification Characteristic across many Service Specifications. Since id attribute is missing how can we refer to existing Service Specification Characteristic for new Service Specification or can we use name attribute of Service Specification Characteristic to query against SID model for reusing it.

    ------------------------------
    Aswath G B
    ------------------------------


  • 2.  RE: TMF 633 - Service Catalog Management

    TM Forum Member
    Posted Jan 22, 2020 06:22
    Hi Aswath

    Firstly, to my best understanding, the Information Framework (SID) is a conceptual model, not necessarily an implementation model. Therefore the SID does not necessarily account for issues that might come up in a real-world persistence model (SQL-based or document-based). I suggest that you reach out to the SID team (@Cecile Ludwichowski and @Dirk Rejahl are the leads) to get advice on how to do this.​​​​

    When creating the Open API model, we derive (obviously) from the SID, but with simplifications and other transformations that bridge the gap between the conceptual model and a usable resource model for REST APIs. In the catalog area, it was decided that CharacteristicSpec (in all the catalogs) would not be an independently managed entity, but rather contained within the various Specification entities. In other words, we don't recognize (at the API level) the possibility to reuse characteristic specs. There are advantages and disadvantages to this, but that's what we have at the moment. Perhaps @Kamal Maghsoudlou - the original architect of the Open API catalog APIs - can provide visibility on why we took this approach.

    In your implementation, you can of course extend the various CharacteristicSpecs to add an ID field, or you could treat the name field as globally unique - but remember that re-use has side-effects, if someone updates a characteristic spec, then all the specifications using that will be affected by the update.

    Hope it helps


    ------------------------------
    Jonathan Goldberg
    Amdocs Management Limited
    Any opinions and statements made by me on this forum are purely personal, and do not necessarily reflect the position of the TM Forum or my employer.
    ------------------------------