Sherlock is an intelligent tutoring system designed to teach people to build simplified knowledge representations (graphic maps) to facilitate learning of a text. Previous attempts to automate instruction in graphic mapping have had problems because they attempted to diagnose a learner's misunderstandings by looking at a finished graphic map. Sherlock uses a knowledge-based approach to diagnose a leamer's misunderstandings by looking at the knowledge and processes that lead to a learner's graphic map, rather than the completed map. In Sherlock's model a semantic network is used to represent the knowledge in the text. A production system models the strategy for constructing a gniphic map by initiating spreading activation on the semantic network, and interpreting the resulting activation patterns. In a limited evaluation Sherlock was able to correcdy determine if a construction was appropriate 9 6 % of the time.