Please check "JSP.8.3 Semantics of Tag Files" in JSP 2.0 specification, I think when they say TAG scope they really mean it in the JSP page that invoking the tag, but when they say PAGE scope they mean the page for the Tag File. That's what I understand. Can anyone confirm if I understand it right.
here is the explanation from the JSP 2.0 spec (page 174):
The tag file implementation must create and maintain a second instance of JspContext called a JSP Context Wrapper. If the Invoking JSP Context is an instance of PageContext, the JSP Context Wrapper must also be an instance of PageContext. This wrapper must be returned when getJspContext() is called.
For each invocation to the tag, the JSP Context Wrapper must present a clean page scope containing no initial elements. All scopes other than the page scope must be identical to those in the Invoking JSP Context and must be modified accordingly when updates are made to those scopes in the JSP Context Wrapper. Any modifications to the page scope, however, must not affect the Invoking JSP Context.