I have existing users with employeeType (orgs with orgType, roles with roleType).
When editing existing object, employeeType/orgType/roleType attribute is displayed as deprecated (strikethrough style). Which corresponds to the schema. Additionally, subtype is displayed (OK).
But no new object can be created with employeeType/orgType/roleType, only subtype is displayed in editor.
This means that customer with existing logic bound to *type attributes will not be able to use it for new objects (just for existing) without changing the logic.
- document this in release notes (I think this is a must in all cases)
- allow using employeeType/orgType/roleType also for new objects, but keep marking the attribute as deprecated in GUI
There should be a concept of deprecating attributes. When database (repo) is deprecated, I think we will allow it to be used for one more midPoint release. But the attributes are marked as deprecated since 3.8 and yet, in 3.8 they cannot be fully used.
If the solution will be "change all logic in your roles, orgs, templates, users, etc.", the upgrade/migration will require some additional tasks.
In all cases this must be documented in release notes.