Thanks Ludovic for this answer
It's probably case-by-case, for each managed entity (that has versions - many entities are not modeled with versions).
For example for some entities it may not be valid to delete old versions explicitly (by API), they might be subject to an internal cleanup process.
And in Marcos' example, the life-cycle state of the version(s) may be important.
So yes we do need to discuss DELETE semantics in more detail and then find a way to specify this in the API specification document.
------------------------------
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: Dec 10, 2019 03:07
From: Ludovic Robert
Subject: DELETE in a multi version scenario
Hello Marcos
Probably worthwhile to take a look on the versionning paragraph of the TMF630 API Design Guideline document (part 4).
There are some versionning pattern explained here.
The DELETE is not illustrated but there is a paragraph about modify an existing version of a resource.
If we extend DELETE behavior from PATCH/PUT pattern, DELETE by default will be acting only on the latest version.
To update a specific version of an entity the (Version=X) directive is added to the ID (i.e /id:(version=x).
Nevertheless it is a very good point to raise in TMF API team call to be sure that the assumption to manage DELETE like PATCH is a good one.
hope it helps.
------------------------------
Ludovic Robert
Orange
My answer are my own & don't represent necessarily my company or the TMF
Original Message:
Sent: Dec 09, 2019 13:59
From: Marcos Donato da Silva
Subject: DELETE in a multi version scenario
Hello,
Let's consider the example where I have an element that contains 3 versions.
1 version is already being commercialized (ACTIVE) but, 2 other ones are in
design (DEFINITION) status.
If I send a DELETE over this element, what should I expect from TMF perspective?
Based on the latest answer provided to a similar question (DELETE over active elements),
I assume that the ACTIVE element will be kept whereas all of the DEFINITION ones will be
deleted (even though, we have no means to specify a given version as per the DELETE
syntax, right?)
Is this thinking correct?
------------------------------
Marcos Donato da Silva
Ericsson Inc.
------------------------------