rajarshi guha created
When you the annotations should be orthogonal, orthogonal to what? I'm assuming to each other. More specifically, some of the examples you provide really talk about a group within a molecule (michael donor, halogen etc) and others refer to the whole molecule (steroid etc). If you want annotations of the former type, you can look at MACCS keys, PubChem keys, CACTVS keys etc which identify specific substructural features. For a more higher level view (maybe functional is a better term), you can look at things such as MeSH, ChEBi etc.