Open APIs

 View Only
  • 1.  DELETE in a multi version scenario

    TM Forum Member
    Posted Dec 09, 2019 14:00
    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.
    ------------------------------


  • 2.  RE: DELETE in a multi version scenario

    TM Forum Member
    Posted Dec 10, 2019 03:08
    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
    ------------------------------



  • 3.  RE: DELETE in a multi version scenario

    TM Forum Member
    Posted Dec 10, 2019 05:19
    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.
    ------------------------------