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: <>
On Behalf Of Nemeth, Denes (Nokia - HU/Budapest)
Sent: Wednesday, January 20, 2021 7:02 AM
To:
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