/// <summary>
 /// Ensure that the <see cref="ObjectType.IsIndependent"/> property displayed
 /// as a top-level property is read-only when the <see cref="ObjectType"/> is
 /// part of an implied objectification or <see cref="ObjectType.AllowIsIndependent()"/>
 /// returns <see langword="false"/>
 /// </summary>
 protected override bool IsPropertyDescriptorReadOnly(ElementPropertyDescriptor propertyDescriptor)
 {
     if (propertyDescriptor.DomainPropertyInfo.Id == ObjectType.IsIndependentDomainPropertyId)
     {
         ObjectType objectType = ModelElement.NestingType;
         return(!objectType.AllowIsIndependent());
     }
     return(base.IsPropertyDescriptorReadOnly(propertyDescriptor));
 }