Open APIs

 View Only
Expand all | Collapse all

Differences between ProductSpecification and ProductSpecificationRef?

  • 1.  Differences between ProductSpecification and ProductSpecificationRef?

    TM Forum Member
    Posted Sep 13, 2022 10:02
    Edited by Ibiso Partington Sep 13, 2022 10:11
    Hi,

    Apologies, I'm new to the TMF 620 Open API Specification.

    I'd like to understand the difference between the ProductSpecification and ProductSpecificationRef resources.

    Is the ProductSpecification the definition of the product itself and ProductSpecificationRef the definition of the connection between the Product Offering and ProductSpecfication? i.e. does the "name" attribute apply to the link itself and not to the name of the product specification? Also, what does targetProductSchema refer to?  And how it is different from @schemaLocation?

    Perhaps I could also extend this question to the differences between ProductSpecificationRef and ProductSpecificationRelationship. What is the difference between Ref and Relationship in TMF? As we read the documentation, it looks like Ref is used for when two different types of entity are linked together, e.g. ProductOffering to ProductSpecification is ProductSpecificationRef. Also, it looks like Relationship is used when linking together the same type if entities, e.g. ProductSpecification to ProductSpecification is ProductSpecificationRelationship. Please confirm if this understanding is correct.

    Thanks,

    Ibiso

    ------------------------------
    Ibiso Partington
    Hansen Technologies
    ------------------------------


  • 2.  RE: Differences between ProductSpecification and ProductSpecificationRef?

    TM Forum Member
    Posted Sep 14, 2022 04:39
    Edited by Matthieu Hattab Sep 14, 2022 04:50

    acronyms: PO = product offering; PS = product specification; POP = product offering price

    Is the ProductSpecification the definition of the product itself and ProductSpecificationRef the definition of the connection between the Product Offering and ProductSpecfication? 


    Yes.

    name, schemaLocation, target etc questions:
    I would suggest you read TMF630. It will clarify your other questions as they are relevant for any TMF API.
    @type is also very important to understand

    What is the difference between Ref and Relationship?

    ProductSpecificationRef store relationships betwen PO and PS

    ProductSpecificationRelationship create relationships between PS (with a relationshiptype to control the relationship, API doc has examples and good definition on page 56).

    "Ref" are generally the entity that expose related classes, like your example.

    A general comment about this API:
    it shows the complete model of a given productoffering. We have POs with 50 prices, it doesn't mean customer will pay 50 prices. It's because the PO can have various prices, maybe a price for web channel, another for telephone, a discount if you're a new customer, a discount if you're a senior etc. All possible prices are returned by the API for a given productoffering.
    This also means that the consumer of the API must be capable of interpreting the payload.


    ------------------------------
    Kind regards,

    Matthieu Hattab
    Lyse Platform
    ------------------------------