Great detective work Steve and all.
Not just is it OK to have local ID in array sub-elements, but in fact it is strongly recommended, to allow direct access (e.g. via JSON Patch) to array elements.
------------------------------
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: Mar 20, 2024 14:25
From: Steve Harrop
Subject: TMF651 - Agreement - TermOrCondition id reference
Hi,
With the help of Rohit/Abhi, we discussed this in TMF API Governance today. We concluded that the TMF651-Agreement API has an unmanaged entity (AgreementTermOrCondition) which has an id and (incorrectly) a href:
While it is ok to have a localised "id" (same as the Characteristic to the left of it) - which could just have localised numbers (1, 2, 3...) for differentiation, the presence of a "href" implies that it is fully "managed" ie: It has an independent TMF API - which it does not.
This is probably the result of allOf-ing the Addressable schema, but needs to be redone as just including an optional "id" instead. I have raised a TMF-JIRA for this (AP-5004).
------------------------------
Steve Harrop
Principal API/Integration Architect
Vodafone Group
Original Message:
Sent: Mar 15, 2024 01:26
From: Zainul Abidin Mulla
Subject: TMF651 - Agreement - TermOrCondition id reference
Hi,
There is an Id reference expected for subresource termOrConditions as part of payloads in 651. The termOrConditions are stored in a 3rd party system or a system that is different from API hosting system. Please clarify the following queries regarding this Id reference.
- What if the terms are not stored in a different system. Does the POST needs to always have the Id?
- What if the host system cannot access the 3rd party system, how to POST the agreement without the id reference?
- Can the spec and conformance be altered to remove this id for termOrConditions?
"termOrCondition": [
{ "description": "This agreement term or condition ...",
"id": "5890",
"validFor": { "startDateTime": "2018-04-25T00:00Z", "endDateTime": "2018-11-20T00:00Z" } }
]
|
|
------------------------------
Zainul Abidin Mulla
Salesforce
------------------------------