The study of how to represent knowledge in a computer in a form that is useful for reasoning, querying, and learning.