Warning: if you really need/want to do this, do it at your own risk, as this guide comes with no support (and be sure to have a backup just in case)
You want to modify type hierarchy (ie: type A -> subtype B -> subtype C to type A -> subtype C) or want to change attribute name/type while keeping metadata AND there is a limited number of affected objects (I don’t think you want to try this with millions of objects)
- Create a new project in Composer
- Import every affected object as sysobject
- Delete unwanted type (subtype b) from type artifacts
- Modify subtype C supertype to type A
- Add necessary attributes to your subtype (those required that were inherited from subtype B) or modify the name/type of whatever attribute you want to modify
- Open sysobject artifacts with text editor, modify <typeExtension> node with the required <attributes> elements (remove unused, add new ones, edit modified definitions). You probably want to develop some program that automatically does everything for you. JDK has anything you need without additional libraries.
- Delete every object instance of types b and c from repository.
- Drop types b and c
- Install DAR.