A Moodle context is a place where permissions are assigned to a user (usually through a role). In Moodle, contexts are layered in a hierachry. Some examples: a site is the overall context; each course category is a context in the site; each course is a context in it's course category; each topic/section is a context and the resources and activities in a topic/section are contexts. Blocks, filters and special pages are contexts that are at minimum part of the site context. Permissions are passed down automatically. For example, a user who has a teacher role in a course will be assigned that role when a Forum context is created. Roles for individuals or groups can be changed in a context. This makes it possible for one user to be a teacher in one context and a student in another.