270 likes | 428 Views
Hera: Development of Semantic Web Information Systems. Geert-Jan Houben Peter Barna Flavius Frasincar Richard Vdovjak hera@wwwis.win.tue.nl. Overview. WIS design Hera methodology, RDF(S) Conceptual model and integration Application model and adaptation User interaction. Motivation.
E N D
Hera: Development of Semantic Web Information Systems Geert-Jan Houben Peter Barna Flavius Frasincar Richard Vdovjak hera@wwwis.win.tue.nl
Overview • WIS design • Hera methodology, RDF(S) • Conceptual model and integration • Application model and adaptation • User interaction
Motivation • From Web pages to Web information system (WIS) • Technologies from Semantic Web: RDF(S) • Hera uses RDF(S) for effective support of WIS design
WIS Design • Generation of hypermedia presentations: navigation structure • Presentation objects, e.g. pages • Navigation connections, e.g. hyperlinks • Integration from different sources: transparent repository • Management of semi-structured data • Personalization: user adaptation
Adaptation • Presentations must be adaptable to differentusers/user platforms • Devices (PC, PDA, WAP Phone, WebTV etc.) • Device capabilities (display size, memory size, network speed, etc.) • User preferences (desired layout, navigation patterns, etc.) • User browsing history
Hera: WIS Design Methodology • RMM, OOHDM, WebML, etc. • Sequence of steps in designing a web application • Model-driven approach: • data/navigation/presentation • Data transformations: • towards HTML, WML, SMIL, etc. • Use of RDF(S) to specify different models and XSLT to transform (meta)data • subclass/subproperty • extensibility, e.g. CC/PP vocabulary
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)
Equipment Catalogue Source Clusters Photo Rental Sources are • Autonomous • (Virtually) grouped to clusters based on the content they provide • RDF(S), RQL capable Photo Stock Agency
Integration Model IM decouples the CM and Sources • Articulations • actual links between the CM and the source ontologies • (a part of it) serves as a query on the source side • Decorations • offer a way to rank sources within the same cluster • capture explicitly designer’s knowledge about sources • open possibilities for queries with constraints e.g. “I’m interested in the answer within 1s, otherwise forget it”
Integration Model Ontology • Path expression • Articulation • Decoration • Processing instruction Application independent
Application Model (AM) • Captures navigational view over CM, describing hypermedia aspects • Slices are meaningful presentation units: • Associated to concepts from CM • Containing properties/attributes and possibly other slices • Slices are linked together with slice relationships: • Aggregation relationships: index, tour, indexed guided tour etc. • Reference relationships: link with an anchor specified • Encoded in RDF(S)
Adaptation • WIS are accessed through multitude of devices and by different users • Device capabilities • User preferences • Browsing history • Adaptation based on conditioning the appearance of slices in AM
Adaptation/User Model • Captures two kinds of adaptation • Adaptability takes into account the context 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 Model represents the dynamic user’s state, e.g. did the user visit (learn) this slice (concept) • Application and Update Rules describe the behavior of the presentation (e.g. conditional slices in AM) and keep the user model up-to-date (AHAM rules)
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>
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=“um:Biography = false”> <rdf:subClassOf rdf:resource=“#Slice”/> </rdfs:Class> <rdfs:Class rdf:ID=“Slice.painting.main” slice:condition=“um:Painter > 10”> <rdf:subClassOf rdf:resource=“#Slice”/> </rdfs:Class>
User Interaction • E-commerce applications often require WIS with broader functionality than just navigation through static web sites (known patterns: shopping carts, on-line payments, searches, etc.) • The functionality includes also richer means of interaction with users via interaction elements: buttons, text entry forms, checkboxes, etc. • Navigation objects (slices) with data content may depend on the interaction and/or system business logic, so it cannot be static
User Interaction Specification • Extension of AM specification: • Structural: interaction elements as “active” attributes capturing user actions (buttons, text fields, etc.) • Behavioural: operations assigned to interaction elements (dynamic navigation, data manipulation, adaptation, call of external Web Services, etc.) • Consequence on WIS architecture: need for an engine providing the operations (as AHA! for adaptivity)
Conclusion & Future Work • Explicit semantics in models, expressing concepts, their hierarchies and relationships • Adaptation in all design steps including the CM and IM, and full support of adaptivity • Experiment with higher ontology languages (e.g. OWL) as the basis for the different models • Further development of authoring tools helping the designer to build models in all design steps • Query and transformation language, e.g. RAL