So, if I've taken in the whole conversation, then the situation you have is as follows:
1) property sets define a list of properties and give them default values (so that you never have a valid property without a current value) 2) a “preset” can change the values of properties in a property set, but *cannot create new properties*. In this case the “preset” is a reusable local definition for the values of the properties in the property set. Further your inheritance rules look something like this (where you go down the list until you find a value for the property in question): 1) local property setting (done in a \with block) 2) value of the property from the named “preset” 3) if the named “preset” has a parent, then the value of the property from the parent 4) recurse #3 on the parent until you run out of parents 5) the default value given to the property when the property set was created If you get to the end of the list without finding a value for the property, then you necessarily have an invalid property (i.e. one which has not been defined). > On 13 Jul, 2020, at 1:38 AM, Urs Liska <li...@openlilylib.org> wrote: > > My favourites so far are "configuration" and "flavor". Given the above, I would go with “configuration.” I also would suggest that “default” be a restricted name which refers exclusively to the set of values given to the properties when the property set is created. I.e. it should not be possible for the user to define a configuration named “default” because it already exists (it’s defined by \definePropertySet). Changing the default configuration is only possible using the \setProperty function. This is syntactically cumbersome, but it serves to emphasize what the values given at the time of a property set’s creation actually are. ✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝ Fr. Samuel, OSB (R. Padraic Springuel) St. Anselm’s Abbey 4501 South Dakota Ave, NE Washington, DC, 20017 202-269-2300 (c) 202-853-7036 PAX ☧ ΧΡΙΣΤΟΣ