We describe a framework for building intelligent tutoring systems that offer an advanced evaluation of learners' semantic knowledge. The knowledge model makes a pedagogical distinction between contextual and general semantic knowledge. General knowledge is defined as the knowledge that is valid in every situation of a curriculum, and that a learner should possess. In opposition, contextual knowledge is the knowledge obtained from the interpretation of a situation. Because the model connects the description of general knowledge to the description of procedural knowledge through “semantic knowledge retrieval”, the evaluation of general knowledge is not only achieved through direct questions, but also indirectly through observation of problem-solving exercises.