230 likes | 247 Views
Specification Framework for Engineering Adaptive Web Applications. Flavius Frasincar Geert-Jan Houben Richard Vdovjak*. Databases & Hypermedia Group Department of Computer Science. Overview. Introduction, Motivation and Goals Hera Design Methodology Conceptual Design Application Design
E N D
Specification Framework for Engineering Adaptive Web Applications Flavius Frasincar Geert-Jan Houben Richard Vdovjak* Databases & Hypermedia Group Department of Computer Science WWW2002
Overview • Introduction, Motivation and Goals • Hera Design Methodology • Conceptual Design • Application Design • Adaptation Design • Prototype/Rendering • Summary and Future Work WWW2002
Introduction 1436 Printing Press (Johan Guttenberg) - facilitated storing and exchange of information/knowledge on a larger scale … 1989 WWW (Tim Berners-Lee) - information/knowledge exchange boost - “everything is on the Web” !? - huge success vs. huge mess WWW2002
Motivation • There are several methodologies for manual hypermedia presentation design but not so for automated design. • The need for presentation automation is justified by the fact that most WIS are data driven • There is an increasing need for presentation adaptation for different users/user platforms. WWW2002
Goals Develop a framework that supports automated hypermedia presentation design for WIS: • Integrates heterogeneous data sources. • Facilitates presentation (server/client-side) adaptation: • Network (T1, 128K, 56K etc.) • Display (PC, Palm, WAP Phone etc.) • User (preferences, interaction history etc.) • Enables semi-structured data queries. WWW2002
Hera Design Methodology • Originates from RMM (Relationship Management Methodology). • Suggests a sequence of design steps to be taken when designing a web application. • Supports • integration of heterogeneous information • automated presentation design • user/platform adaptation WWW2002
Design Methodology Steps, Models, and Processing Engines WWW2002
Conceptual Model (CM) • Provides a uniform semantic view over different data sources that are integrated within a given Web application. • Consists of hierarchies of concepts relevant within the given domain, their properties, and relations. • Encoded in RDF(S). WWW2002
Conceptual Model Example WWW2002
CM Example RDF(S) Syntax WWW2002
Application Model (AM) • Describes hypermedia aspects of the presentation. • Captures the navigational view over the CM • Consists of (nested) slices and slice relationships • Slices - meaningful presentation units • Associated to concepts from the CM • Contain properties and possibly other slices (nesting) • Slice relationships: • Aggregation relationships: index, tour, indexed guided tour… • Reference relationships: link with an anchor specified. • Encoded in RDF(S). WWW2002
Application Model Example WWW2002
AM Example RDF(S) Syntax WWW2002
Adaptation/User Model • Captures two kinds of adaptation • Adaptability takes into account the situation in which the user will use the presentation (e.g. the browsing platform). • Adaptivity means that the presentation changes itself according to the “state of the user’s mind” while being browsed. • Consists of • Device/User Profile captures “static” visual and platform preferences encoded in CC/PP. • User Session represents the dynamic user’s state, e.g. did the user visit (learn) this slice (concept). • Application and Update Rules describe the behaviorof the presentation (e.g. conditional slices in AM) and keep the User Session up-to-date (AHAM rules). WWW2002
Adaptation Model Example WWW2002
Adaptation Model Syntax • Adaptability Condition • Adaptivity Condition <rdfs:Class rdf:ID=“Slice.painting.picture” slice:condition=“prf:ImageCapable=Yes”> <rdf:subClassOf rdf:resource=“#Slice”/> </rdfs:Class> <rdfs:Class rdf:ID=“Slice.painter.main” slice:condition=“us:Biography =false”> <rdf:subClassOf rdf:resource=“#Slice”/> </rdfs:Class> WWW2002
Profile Example • Device/User Profile (CC/PP encoding) Screen size: 100x80, preferred language: English <rdf:Description rdf:about=“Profile”> <ccpp:component> <prf:HardwarePlatform> <prf:ImageCapable>No</prf:ImageCapable> <prf:ScreenSize>100x80</prf:ScreenSize> … </prf:HardwarePlatform> </ccpp:component> <ccpp:component> <up:UserPreferences> <up:Language>English</up:Language> … </up:UserPreferences> </ccpp:component> </rdf:Description> WWW2002
Update Rule (AHA) Example Update the Biography record in the User Session table to true after the user visited “Slice.painter.main”. <us:Slice.painter.main”> <aha:updatelist> <aha:SetOfConcepts> <aha:item><us:Biography aha:update=“true”/></aha:item> … </aha:SetOfConcepts> </aha:updatelist> </us:Slice.painter.main> WWW2002
Presentation Model Example WWW2002
Prototype • XSLT code generation • Two code generators: • HTML for PC Web browsers • WML code for WAP phone browsers WML XSL HTML XSL <xsl:template match=“slice-instance”> <TABLE> <xsl:apply-templates select=“*”/> </TABLE> </xsl:template> <xsl:template match=“slice-instance”> <CARD id=“{@id}”> <xsl:apply-templates select=“*”/> </CARD> </xsl:template> WWW2002
Rendering WWW2002
Summary Hera methodology originated from RMM suggests a sequence of design steps. Our framework supports • integration of heterogeneous information (CM populated from several heterogeneous data sources) • automated presentation design: AM serves as a presentation blue print from which a concrete presentation is derived (wrt. a query) • user/platform adaptation (adaptability and adaptivity) WWW2002
Future Work • Adaptation in all design steps including the Conceptual Model and Integration Model. • Experiment with higher ontology languages (e.g. Oil) as the basis for the CM. • Further development of tools for presentation rendering. • Authoring tools that would help the designer to build specification models in all design steps. WWW2002