Open APIs

 View Only
  • 1.  TMF641 - externalRefernce- coustmize

    Posted Oct 18, 2022 14:26

    We have to a requirement to store external system reference in service order so we are using below TMF object ExternalReference

     

    Can anyone suggest is required to kept all the properties mentioned as above or we can change accordingly to as per our requirement

    For example - Instead of name we can use id.

    "externalReference": [

    {"id": "567abc",

    "externalReferenceType": "abcServiceIdentifier"

    }

    "externalReference": [

    {"id": "123xyz",

    "externalReferenceType": "xyzServiceIdentifier"

    }

    ]

     

    Here id is the reference value and externalReferenceType type of Reference base on system

    Kindly suggest

     



    ------------------------------
    Dinesh Tripathi
    TO BE VERIFIED
    ------------------------------


  • 2.  RE: TMF641 - externalRefernce- coustmize

    Posted Oct 19, 2022 00:44
    better to not change above attributes as its standardize one , its not mandatory to use all attributes  in your system, which ever required use it in your system(Service Order API), if wants you can extend it with your specific attributes by adding new attribute in your local flavor in same Entity.


    Mahendar
    Capgemini

    ------------------------------
    mahendar naik
    TO BE VERIFIED
    ------------------------------



  • 3.  RE: TMF641 - externalRefernce- coustmize

    Posted Oct 19, 2022 03:44
    Hi all
    In more recent versions of APIs, we have started to introduce a more robust mechanism for external IDs, a schema called ExternalIdentfier. This will probably gradually replace the current external reference structure.
        "definitions": {
            "ExternalIdentifier": {
                "$id": "#ExternalIdentifier",
                "description": "An identification of an entity that is owned by or originates in a software system different from the current system, for example a ProductOrder handed off from a commerce platform into an order handling system. The structure identifies the system itself, the nature of the entity within the system (e.g. class name) and the unique ID of the entity within the system. It is anticipated that multiple external IDs can be held for a single entity, e.g. if the entity passed through multiple systems on the way to the current system. In this case the consumer is expected to sequence the IDs in the array in reverse order of provenance, i.e. most recent system first in the list.",
                "type": "object",
                "required": [
                    "id"
                ],
                "properties": {
                     "owner": {
                        "type": "string",
                        "description": "Name of the external system that owns the entity.",
                        "examples": [
                            "MagentoCommerce"
                        ]
                     },
                     "externalIdentifierType": {
                        "type": "string",
                        "description": "Type of the identification, typically would be the type of the entity within the external system",
                        "examples": [
                            "ProductOrder"
                        ]
                     },
                     "id": {
                        "type": "string",
                        "description": "identification of the entity within the external system.",
                        "examples": [
                            "MC2255771199555"
                        ]
                    }
                },
    ​


    ------------------------------
    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.
    ------------------------------



  • 4.  RE: TMF641 - externalRefernce- coustmize

    Posted Oct 25, 2022 09:23
    Hey @Jonathan Goldberg,

    So i think i would understand from this that the 'value' persay (i.e. what the unique reference is) would in either of the schemas would be held in the 'id' attribute of this container?

    Suppose when i looked at this and saw some examples in a TMF doc it suggested that the value of the external reference was held in 'name'

    "externalReference": [
    {
    "name": "http://facebook.com/17263635",
    "externalReferenceType": "facebookId"
    },
    {
    "name": "http://google.com/17263635",
    "externalReferenceType": "googleId"
    }
    ]​

    I found this in the TMF Party Management documentation (https://www.tmforum.org/resources/specification/tmf632-party-management-api-rest-specification-r19-0-0/) which seems to suggest from the example that 'URL' and 'id' are not used in favor of 'name'. Whilst i know that these other attributes are not mandatory and implementations have some flexibility in how they implement i didnt quite understand why this example wasnt more like: -

    "externalReference": [
    {
    "href": "http://facebook.com/17263635",
    "id": "17263635",
    "name": "My facebook account",
    "externalReferenceType": "facebookId"
    },
    {
    "href": "http://google.com/18263635",
    "id": "18263635",
    "name": "My google account",
    "externalReferenceType": "googleId"
    }
    ]​​


    ------------------------------
    David Whitfield
    TalkTalk Group
    ------------------------------