Hillyer (1985) defined an ES as ‘a computer program to solve the difficult problems that a human expert solves’ and a knowledge-based ES as ‘an expert system that has the ability to solve its problems by virtue of explicit, declaratively represented knowledge of the problem domain, not just clever algorithms’.