question: public void disableDependency ( Capability c ) { if ( doNotCheckCapabilities ( ) ) { return ; } if ( c == Capability . NOMINAL_ATTRIBUTES ) { disableDependency ( Capability . BINARY_ATTRIBUTES ) ; } else if ( c == Capability . BINARY_ATTRIBUTES ) { disableDependency ( Capability . UNARY_ATTRIBUTES ) ; } else if ( c == Capability . UNARY_ATTRIBUTES ) { disableDependency ( Capability . EMPTY_NOMINAL_ATTRIBUTES ) ; } else if ( c == Capability . NOMINAL_CLASS ) { disableDependency ( Capability . BINARY_CLASS ) ; } else if ( c == Capability . BINARY_CLASS ) { disableDependency ( Capability . UNARY_CLASS ) ; } else if ( c == Capability . UNARY_CLASS ) { disableDependency ( Capability . EMPTY_NOMINAL_CLASS ) ; } m_Dependencies . remove ( c ) ; }
target:  disables the dependency of the given capability Disabling NOMINAL_ATTRIBUTES also disables BINARY_ATTRIBUTES, UNARY_ATTRIBUTES and EMPTY_NOMINAL_ATTRIBUTES. Disabling BINARY_ATTRIBUTES also disables UNARY_ATTRIBUTES and EMPTY_NOMINAL_ATTRIBUTES. Disabling UNARY_ATTRIBUTES also disables EMPTY_NOMINAL_ATTRIBUTES. The same hierarchy applies to the class capabilities.