110 likes | 234 Views
Adaptive Object Inclusion in AHA!. Paul De Bra Ad Aerts Bart Berden Barend de Lange. Topics. The AHA! Project Adaptive Object Inclusion Stable Presentations Conclusions / Future Work. The AHA! Project. AHA! = Adaptive Hypermedia Architecture
E N D
Adaptive Object Inclusion in AHA! Paul De Bra Ad Aerts Bart Berden Barend de Lange
Topics • The AHA! Project • Adaptive Object Inclusion • Stable Presentations • Conclusions / Future Work
The AHA! Project • AHA! = Adaptive Hypermedia Architecture • Open Source project, Web-based adaptive engine • Built on Java Servlet technology, XML and XHTML • General-purpose user-model and adaptation rules • Data storage (domain, adaptation, user model) using XML files or mySQL database • High-level authoring of domain- and adaptation model through Java Applets • Compilers from authoring to engine structures
Main AHA! Engine Features • AHA! mainly reacts to page accesses • Each resource (page) is associated with a concept • The access event triggers rules that update attributes of user model concepts • Each attribute update may trigger more rules that update more attributes of more concepts • Links in the requested page are annotated based on expressions on attribute values • Fragments and objects are conditionally included based on expressions on attribute values
Adaptive Object Inclusion • Reasons for adaptive object inclusion: • prerequisite explanation (include when needed to understand concept) • comparative or additional explanation (include when user is ready for it) • choose between media items (text, audio, image, video) • same object may be included in different pages; having separate objects eliminates redundant copies
Adaptive Object Inclusion in AHA! • Adaptation Rules determine inclusion of objects: • “casegroup” works like a “switch” statement in C to decide which object to include • the inclusion causes a new access event triggering the adaptation rules of the included object • included objects can thus influence how object inclusion and link adaptation works for objects further down on the same page
Potential Problems with Object Inclusion • When an object is included in several pages or several times on a page: • each access to the object triggers adaptation • the user may not recognize the adapted object or page when it is revisited • When many objects are included on a page: • the page is difficult to author (many object tags) • it is difficult for an author to remember what the (possible) contents of the page is
Stable Presentations in AHA! • Adaptation is less noticeable when it is done once, when the user first sees the object (or page) • stable forever (one-time adaptation) • stable for one session (adaptation reoccurs in the next session) • stable as long as an expression remains true (stable until some threshold is reached)
Handling Many Small Fragments • AHA! 3.0 is backward compatible with AHA! 2.0 • conditional inclusion of fragments through “if” statements inside the page • all possible variations are visible to the author • the “if” statements cause pages not to be in standard xhtml • conditionally included fragments do not generate an event (and thus do not generate any user model update)
Conclusions / Future Work • Object inclusion and stable presentations make AHA! a more versatile/powerful as an AHS • Using these features effectively is not trivial for authors; we need authoring tools that use high-level structures • one such tool is an Interbook to AHA! compiler (but that does not use object inclusion or stable presentations yet because Interbook does not use them) • more tools are being developed in the ADAPT project (101144-CP-1-2002-NL-MINERVA-MPP)