A context model (or context modeling) defines how context data are structured and maintained (It plays a key role in supporting efficient context management).[1] It aims to produce a formal or semi-formal description of the context information that is present in a context-aware system. In other words, the context is the surrounding element for the system, and a model provides the mathematical interface and a behavioral description of the surrounding environment.
It is used to represent the reusable context information of the components (The top-level classes consist of Operating system, component container, hardware requirement and Software requirement).
A key role of context model is to simplify and introduce greater structure into the task of developing context-aware applications.[2][3]