One of the major issues in modeling expert systems (ESs) for enhanced reusability is capturing a high-level view of their operations. Principled knowledge representation schemes have been used to model components of complex software systems. However, the potential for applying these principled modeling techniques to explicitly capture the functional requirements of ESs has not been fully explored. This paper investigates issues and provides solutions to the use of an AI knowledge representation scheme for developing an ontology of the software components to facilitate their classification and retrieval. Its benefits are demonstrated using two real world knowledge-based systems.