<div dir="ltr"><div>I am looking for formal definitions of scope, scope type, context</div><div><br></div><div>The closest seem to be in  <a href="http://docs.jboss.org/cdi/spec/2.0/cdi-spec.html#scopes" target="_blank">http://docs.jboss.org/cdi/spec<wbr>/2.0/cdi-spec.html#scopes</a></div><div><br></div><div>Scope: </div><div>The scope of a bean determines the lifecycle of its instances, and which instances of the bean are visible to instances of other beans,<br></div><div><b><br></b></div><div>Scope type:</div><div>A scope type is represented by an annotation type.</div><div><b><br></b></div><div>Context:</div><div>Scoped objects, exist in a well-defined lifecycle context:<b> </b></div><div>...</div><div>Custom scopes are normally defined by portable extensions, which must also provide a context object, as defined in The Context interface, that implements the custom scope.<br></div><div><br></div><div>These seem vague.</div><div><br></div><div>Specifically it seems that the spec prefers to talk about &quot;contextual instances&quot; rather that about a uniform set of objects that represent the current &quot;context&quot;.</div><div><br></div><div>Intuitively to me &quot;scope&quot; relates to &quot;context&quot;, as &quot;class&quot; relates to &quot;object&quot;. The scope seems like a composite type, consisting of all beans (not bean instances) marked with the same scope annotation. The context is an object cache that collects the bean instances of that scope created during a dependency injection pass.</div><div><br></div><div>Can someone clarify these terms?</div></div>