Hi Mandar
I don't have a magic solution here. If your business identifiers are unique within their entity domain, then I guess you'll have to use them. The real challenge is that the IDs must be immutable. Consider what happens if some consumer acquires an ID of an entity, and then the id changes. Or an adjacent entity has an entity ref to your entity (a.k.a. foreign key) and the ID changes.
If the IDs are subject to change, the only workaround that I can think of is to build an isolation layer with ID translation table, this will store your real (business) IDs against technical immutable IDs. External consumers are not aware of your business IDs, only of the technical ID, and communicate via the isolation layer. If a business ID changes it, you update it in the translation table (you will of course need to know what the old ID was to locate the entry).
Maybe others can think of alternative solutions.
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.
------------------------------
Original Message:
Sent: Jul 02, 2021 05:06
From: Mandar Udawant
Subject: TMF639 ResourceInventory and PATCH/DELETE
Hi Jonathan
Thanks for clarifying this.
But I see a challenge here - most OSS implementations have business logical identifiers which would be unique to the inventory type.
Even if as an application we do add some internal unique identifier; it would be difficult to extend the same to all other existing application.
How do you suggest we should handle this in a brownfield environment where existing applications are using business keys and would want to integrate with a new application using the TMF Open API?
------------------------------
Mandar Udawant
Tech Mahindra Limited
Original Message:
Sent: Jun 02, 2021 12:15
From: Jonathan Goldberg
Subject: TMF639 ResourceInventory and PATCH/DELETE
Hi Daniel
The assumption in TMF Open APIs is that the id of an entity is globally unique. So there will be no two Customer entities with the same id, no two Resource entities with the same id, etc.
We should distinguish between this technical id (shall we say database sequence or GUID) and the value of a (logical) resource (e.g. TN, IP address), this value should be unique within the same type of resource.
Does it help?
------------------------------
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.
Original Message:
Sent: May 31, 2021 08:32
From: Daniel Rogowski
Subject: TMF639 ResourceInventory and PATCH/DELETE
Hi fellow tc guys,
how would you suggest the PATCH/DELETE requests on resources should be implemented, when the resource id is not universally unique. The two requests don't seem to support a @type parameter either. So, how it is meant to be implemented?
(In our organization the resource id is type-dependent.)
Best regards,
Daniel
------------------------------
Daniel Rogowski
NetCom BW
------------------------------