There are several methods that allow an object to be removed from its parent. Depending on the kind of object, the remove operation has different effects:
If such an object is removed from its parent and the parent is then saved, the object is automatically deleted, since it cannot exist as a standalone object. These objects can be removed using the following methods:
RegistryObject.removeClassification()
RegistryObject.setClassifications()
RegistryObject.removeAssociation()
RegistryObject.setAssociations()
RegistryObject.removeExternalIdentifier()
RegistryObject.setExternalIdentifiers()
ServiceBinding.removeSpecificationLink()
Service.removeServiceBinding()
Other objects are delinked from their parents during the remove operation. They continue to exist as separate objects. If the parent object is saved, the removed objects are also automatically saved.
The remove operations for these objects are:
ClassificationScheme.removeChildConcept()
Concept.removeChildConcept()
Organization.removeUser()
Organization.removeService()
Organization.removeChildOrganization()
RegistryObject.removeExternalLink()
RegistryObject.setExternalLinks()
RegistryPackage.removeRegistryObject()