Dear Chris You are right there was a typo in the example. I am struggling with where to put the “ value ” keyword in the example below. Because property definitions can not have a “value” keyname. It would be very helpful, if someone could provide an example for the special case in “”. "Property definition refinements support the value keyname that specifies a fixed type-compatible value to assign to the property. These value assignments are considered final, meaning that it is not valid to change the property value later (e.g. using further refinements)." Here is my example If we remove the “red” part it is valid With the green it is invalid because we are modifying the final value of s1 tosca_definitions_version: tosca_simple_yaml_1_3 data_types: data_type_1: derived_from: tosca.datatypes.Root properties: p1: type: string data_type_2: derived_from: data_type_1 properties: p2: type: string data_type_3: derived_from: tosca.datatypes.Root properties: s1: type: data_type_1 value: p1: a data_type_4: derived_from: data_type_3 properties: s1: type: data_type_2 value: p1: a p2: b Thanks, Denes From: Chris Lauwers <
lauwers@ubicity.com> Date: Thursday, 2021. January 21. 5:46 To: Nemeth, Denes (Nokia - HU/Budapest) <
denes.nemeth@nokia.com>,
tosca@lists.oasis-open.org <
tosca@lists.oasis-open.org> Subject: RE: fixed type-compatible value in property refinement in Tosca 1.3 Hi Denes, Refinements are unfortunately not very well specified in v1.3. I encourage you to look at the v2.0 drafts instead. The team has done a large amount of work to formalize refinements. I’m not sure I follow your example. Specifically, I don’t see where you’re using refinements. Perhaps data_type_4 was intended to be derived from data_type_3? Thanks, Chris From:
tosca@lists.oasis-open.org <
tosca@lists.oasis-open.org> On Behalf Of Nemeth, Denes (Nokia - HU/Budapest) Sent: Wednesday, January 20, 2021 7:02 AM To:
tosca@lists.oasis-open.org Subject: [tosca] fixed type-compatible value in property refinement in Tosca 1.3 Dear Tosca community Can you help us to clarify the following statement in Tosca 1.3 spec: 3.6.10.6 states that "Property definition refinements support the value keyname that specifies a fixed type-compatible value to assign to the property. These value assignments are considered final, meaning that it is not valid to change the property value later (e.g. using further refinements)." This would suggest that a property may have an attribute named value, but 3.6.10 does not define a value keyname. Value is only used in 3.6.14 in parameter definitions. So what does the property refinement refer to? Here is an artificial refinement example tosca_definitions_version: tosca_simple_yaml_1_3 data_types: data_type_1: derived_from: tosca.datatypes.Root properties: p1: type: string data_type_2: derived_from: data_type_1 properties: p2: type: string data_type_3: derived_from: tosca.datatypes.Root properties: s1: type: data_type_1 data_type_4: derived_from: tosca.datatypes.Root properties: s1: type: data_type_2 I do not know where the value keyword shall be specified. If it is in the property, than what happens if someone defines default_value and value at the same time. Thanks, D