I have a feeling that Matthieu is right, and that the reference from PSCVU to PS should be mandatory. Because you need to know where the underlying list of values is, and CharacteristicSpec is not an addressable entity in its own right.
I can see that in v5 I didn't enforce that, and since the API has been published I don't think I can change that without a compatibility break.
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: Jul 26, 2023 06:49
From: Rui Ferreira
Subject: TMF 620 - ProductOffering ProductSpecificationCharacteristicValueUse
The Conformance profile does not specify (or I don't found it) what should be the behaviour. I will wait if the API owner can clarify. Thank you
------------------------------
Rui Ferreira
Celfocus
Original Message:
Sent: Jul 26, 2023 06:43
From: Matthieu Hattab
Subject: TMF 620 - ProductOffering ProductSpecificationCharacteristicValueUse
Probably best to check the 2nd API documentation (Conformance profile (RAND)) which explains what mandatory/optional etc.
the fact that the relationship is 0...1 seem to tolerate the absence of a PS ref. But I'm not convinced this is the desired behaviour.
The API owner regularly read this community, so he will be able to clarify this.
------------------------------
Kind regards,
Matthieu Hattab
Lyse Platform
Original Message:
Sent: Jul 26, 2023 06:34
From: Rui Ferreira
Subject: TMF 620 - ProductOffering ProductSpecificationCharacteristicValueUse
Thanks for your answer Matthieu,
So, in case we send PSCVU that aren't part of ProductSpecification or send PSCVU for a Bundle ProdctOffering (isBundle=true) what should be the behaviour (my understanding is to return a 400 Bad request)?
Thank you
------------------------------
Rui Ferreira
Celfocus
Original Message:
Sent: Jul 26, 2023 06:08
From: Matthieu Hattab
Subject: TMF 620 - ProductOffering ProductSpecificationCharacteristicValueUse
This means that ALL entries at ProductSpecificationCharacteristicValueUse SHOULD exist in ProductSpecification?
Yes as you quoted from the API documentation:
It should be noted that the list of values in 'ProductSpecificationCharacteristicValueUse' is a strict subset of the list of values as defined in the corresponding product specification characteristics.
"strict subset" is your clue. So it's not "should" but "must" as in "considered compulsory/necessary."
In our product catalogue, the PSCVU entity has mandatory relationships to ProductOffering, ProductSpecification and ProductSpecificationCharacteristic.
(we have a second the PSCVU entity dedicated to ProductOfferingPrice)
PS: the in the API doc -> product offering resource model, the relationship between PSCVU and ProductSpecificationRef is 0...1.
I think it should be 1...1. I don't know how a PSCVU could exist without a relation to PS.
If is a bundle and does not have ProductSpecification the product offering cannot have ProductSpecificationCharacteristicValueUse?
that's correct because a bundle product offering absolutely cannot have a product specification, it cannot have PSCVU since PSCVU is a strict subset....
------------------------------
Kind regards,
Matthieu Hattab
Lyse Platform
Original Message:
Sent: Jul 25, 2023 12:42
From: Rui Ferreira
Subject: TMF 620 - ProductOffering ProductSpecificationCharacteristicValueUse
Hi all,
As per Product Catalog Management API User Guide we have:
"A list of product specification characteristic value uses (ProductSpecificationCharacteristicValueUse [*]). A use of the ProductSpecificationCharacteristicValue by a ProductOffering to which additional properties (attributes) apply or override the properties of similar properties contained in ProductSpecificationCharacteristicValue. It should be noted that characteristics which their value(s) addressed by this object must exist in corresponding product specification. The available characteristic values for a ProductSpecificationCharacteristic in a Product specification can be modified at the ProductOffering level. For example, a characteristic 'Color' might have values White, Blue, Green, and Red. But, the list of values can be restricted to e.g. White and Blue in an associated product offering. It should be noted that the list of values in 'ProductSpecificationCharacteristicValueUse' is a strict subset of the list of values as defined in the corresponding product specification characteristics."
This means that ALL entries at ProductSpecificationCharacteristicValueUse SHOULD exist in ProductSpecification? What should be the behaviour if we send (POST) one that is not in ProductSpecification? If is a bundle and does not have ProductSpecification the product offering cannot have ProductSpecificationCharacteristicValueUse?
Thank you
------------------------------
Rui Ferreira
Celfocus
------------------------------