The major bottlenecks in expert system development lie within the processes of eliciting and representing knowledge. Knowledge representation schemes combine data structures, and interpretative procedures that enable the extraction of the knowledge embedded in the data structures. A broad spectrum of knowledge types need to be represented, but available representation techniques are not optimum systems since they vary in level of expressiveness and power. Knowledge demands more than the conventional representation structures used for databases and information. This is because information is derived from processing, refining and analysing raw data. The extra refinement, analysis and addition of heuristics to information converts it to knowledge. This paper discusses the major issues in the quest for an efficient knowledge representation technique and assesses the performance and level of usefulness of some of the most successful approaches in knowledge representation.