Property inheritance
All built-in, or system, properties assigned to a particular
root class are inherited by all its subclasses. Similarly, all custom
properties added to a class are inherited by all of its subclasses.
If you...
- Add a custom property to a superclass, the property is added to all new and existing subclasses; however, the property in the existing versions has no value.
- Delete a custom property from a superclass, the property is not deleted from any subclasses. After you delete the custom property from a superclass, you can manually delete it from its subclasses.
- Update a custom property on superclass, the change propagates to new versions and subclasses. The property is not updated in existing subclasses and versions.
- Add an alias ID to a superclass, the alias ID is added to all subclasses.
- Change the Maximum Length for a string or binary property, the change propagates to subclasses with a higher maximum value or where the value was not set.
- Change the Minimum Value or Maximum Value of a property, the change propagates to all subclasses where the current value is less than the new value, or where a value is not set.
- Change a property's value for Settability, the change propagates automatically
only if the new setting is more restrictive than the previous setting.
The Settability order from least restrictive to most restrictive is Read/Write, Set only before checkin,
Set only on create, and Read only.
Similarly, change a property's value for Value Required, the change propagates automatically only if the setting is more restrictive than the current setting.
For example, if you...
- Change a property's Settability value from Read Only to any other value, or change Value Required from true to false, the change does not propagate to subclasses. Make this change manually.
- Change a property's Settability value from Read/Write to any other value, or change Value Required from false to true, the change is propagated to all subclasses.