Delete Term

"Delete Term" is somewhat like "Delete Concept", but involves some different issues. They fall into the following four cases:
  1. The term is a Preferred Name, and has no synonyms
  2. The term is a Preferred Name, and has one or more synonyms
  3. The term is a Synonym of some other term
  4. The term is the name of a Link

Preferred Name, no synonyms

In the first case, removing the term will leave no other trace of the concept; this is the same as the "Delete Concept" operation and has all the same side issues.

Preferred Name, with synonyms

In the second case, deleting the Preferred Name will leave the concept still in existence but with nothing but Synonyms to represent it; since many search and display operations remove synonyms from consideration, the concept will seem to disappear even though references to it still exist. For example, the term will never show in a hierarchy display even when the term really is contained there. In this case, a dialog should ask the user to promote one of the synonyms to become the Preferred Name for the concept; no further action is necessary, except to change the name as it appears in the other display windows.

It's a Synonym

This should be the easiest of all -- we ought to be able to just remove the row from the terms table, remove the entry from the synonym-list browser in the Concept inspector, and clear the Term inspector.

It's a Link name

What does it mean to remove the definition of a Link? The user might or might not realize it, but this would mean eradicating an entire hierarchy. The implementation would be similar to the first case of deleting a concept, but will require a different method for counting the number of links that exist in the chosen hierarchy. Also, the hierarchy window would have to be emptied and the name removed from the list of possible hierarchies (browser bay 0). Removing a Link that has data already is drastic enough that it might be better to just refuse to do it this way, and instead require some other (less direct) method.