An InteractiveSceneGraph is a SceneGraph that describes, in addition to content to be displayed, details on how this content can be interacted with by a user. The critical component here is that the details on how one can interact with the SceneGraph are represented directly to the interpreter of the SceneGraph, which might not be the entity that built the SceneGraph. This requires that the details on interaction be: (a) have ''potential'' interactions represented as scripts or data, (b) have an implicit or explicit mechanism for communicating intent to realize an interaction, (c) and describe (as part of the SceneGraph) how to attach the former to the latter. Most modern GUIs do not qualify. However, DynamicHtml is a start, supporting scripting hooks for 'onclick' and 'ondblclick'. JavaScript + XmlHttpRequest + use of these 'onclick' and 'onhover' and such have all three properties of an InteractiveSceneGraph. Truly flexible InteractiveSceneGraph''''''s would allow one to plug-in how '''interaction''' is hooked to '''actuation''' in much the way CSS allows one to hook content-divisions to formatting. I.e. rather than 'onclick' and 'ondblclick' and so on, one has 'onevent:eventName' and 'onevent:anotherEventName', then has a system that hooks and attaches mechanical events (e.g. mouse-click) to logical events (eventName). (Even better would be a full 'event' component that can support some complex data and attributes on its own.) This is useful for accessibility purposes, as it provides for far more flexible user hardware... one can start attaching hotkeys or gestures to links or actions identified by certain classes, for example. ---- Also see GraphicsPatterns.