It should be possible, via the bulk schema API, to remove and replace the following:
- dynamic fields
- field types
- copy field directives (note: replacement is not applicable to copy fields)
Removing schema elements that are referred to elsewhere in the schema must be guarded against:
- Removing a field type should be disallowed when there are fields or dynamic fields of that type.
- Removing a field should be disallowed when there are copy field directives that use the field as source or destination.
- Removing a dynamic field should be disallowed when it is the only possible match for a copy field source or destination.