In computer science, specially staged intelligence, a number of representations have been devised to structure information. Knowledge Representation (KR) is most commonly used to refer to representations intended for processing by modern computers, and in particular, for representations consisting of explicit objects and of assertions or claims about them. Representing knowledge in much explicit form enables computers to draw conclusions from knowledge already stored. Many KR methods were tried in the 1970s and early 1980s, much as heuristic question-answering, neural networks, theorem proving, and expert systems, with varying success. Medical diagnosis was a major covering area, as were games much as chess.
In the 1980s conventional computer knowledge representation languages and systems arose. Major projects attempted to encode wide bodies of general knowledge; for example the “Cyc” project went through a large encyclopedia, coding not the aggregation itself, but the aggregation a reader would need in order to understand the encyclopedia: naive physics; notions of time, causality, motivation; commonplace objects and classes of objects. The Cyc project is managed by Cycorp, Inc.; much but not all of the data is now freely available. Through much work, the difficulty of KR came to be better appreciated. In computational linguistics, meanwhile, much larger databases of language aggregation were existence built, and these, along with enthusiastic increases in computer speed and capacity, made deeper KR more feasible.
Several programming languages have been developed that are oriented to KR. Prolog developed in 1972 but popularized much later, represents propositions and basic logic, and can derive conclusions from known premises. KL-ONE (1980s) is more particularly aimed at knowledge representation itself. In the electronic document world, languages were being developed to symbolize the structure of documents more openly, such as SGML and later XML. These facilitated information retrieval and data mining efforts, which have in recent years begun to relate to KR. The Web community is now particularly interested in the Semantic Web, in which XML based KR languages such as RDF, Topic Maps, Gellish English and others can be used to make KR information available to Web systems.