Adaptive Hypermedia 2ID20 - PowerPoint PPT Presentation

About This Presentation
Title:

Adaptive Hypermedia 2ID20

Description:

fragment is chosen depending on the 'knowledge' attribute of concept 'tutorial.intro' ... attribute name='showability' type='int' isPersistent='true' isSystem ... – PowerPoint PPT presentation

Number of Views:78
Avg rating:3.0/5.0
Slides: 41
Provided by: PaulD109
Category:

less

Transcript and Presenter's Notes

Title: Adaptive Hypermedia 2ID20


1
Adaptive Hypermedia2ID20
  • Prof. dr. Paul De Bra


2
AHA! Adaptive Hypermedia Architecture
  • Main characteristics
  • adaptive web server extension
  • conditional inclusion of fragments
  • adaptive link hiding or annotation
  • adaptation in local or remote pages
  • pages in html or xml format
  • flexible user model (arbitrary concepts and
    attributes)
  • event-condition-action rules
  • graphical authoring tool for concept
    relationships
  • forms and multiple-choice tests

3
AHA! Engine Architecture
local files
adaptation engine
webserver
end-user
external servers
user model
combined DM/AM
4
(No Transcript)
5
Conditional Inclusion of Objects
  • When AHA! retrieves a page it creates a parse
    stream for it.
  • AHA! includes objects when an ltobjectgt tag is
    encountered in parse stream
  • a resource to include is selected
  • the concept associated with that resource is
    determined
  • that concepts adaptation rules are executed
  • the resource is inserted into the parse stream
  • The included data may contain ltobjectgt tags
    itself
  • As a result objects may include other objects
  • There is a danger of infinite recursive object
    inclusion

6
Fragments and Objects in (X)HTML
  • Embedded fragments
  • ltif exprtutorial.intro.knowledgegt50gt
  • ltblockgthere something for knowledgeable
    userslt/blockgt
  • ltblockgthere something for beginnerslt/blockgt
  • lt/ifgt
  • fragment is chosen depending on the knowledge
    attribute of concept tutorial.intro
  • Included objects
  • ltobject nametutorial.concept1 typeaha/text
    /gt
  • object is chosen by evaluating a casegroup for
    tutorial.concept1 in the domain / adaptation
    model
  • ltrefgt tag is used in SMIL, ltobjectgt in (X)HTML

7
Object Inclusion in DM/AM
  • Here is an example of part of a DM/AM for object
    inclusion
  • ltconceptgt
  • ltnamegttutorial.object1lt/namegt
  • ltattribute nameshowability typeint
    isPersistenttrue isSystemtruegt
  • ltcasegroupgt
  • ltdefaultfragmentgtfile/tutorial/xml/empty.xh
    tmllt/defaultfragmentgt
  • ltcasevaluegtltvaluegt1lt/valuegt
  • ltreturnfragmentgtfile/tutorial/xml/frag1.xht
    mllt/returnfragmentgt
  • lt/casevaluegt
  • ltcasevaluegtltvaluegt2lt/valuegt
  • ltreturnfragmentgtfile/tutorial/xml/frag2.xht
    mllt/returnfragmentgt
  • lt/casevaluegt
  • lt/casegroupgt
  • lt/attributegt
  • lt/conceptgt

8
Adaptive Link Hiding and Annotation
  • AHA! recognizes two classes of links
    conditional and unconditional
  • lta hrefpage.xhtml classconditionalgtlink
    anchorlt/agt
  • The engine translates links to good, neutral or
    bad
  • lta hrefpage.xhtml classgoodgtlink anchorlt/agt
  • AHA! inserts a stylesheet in the (x)html page to
    define the link colors
  • ltstyle typetext/cssgt
  • a.Goodlink text-decoration none color
    0000FF
  • a.Goodvisited text-decoration none color
    0000FF
  • a.Neutrallink text-decoration none color
    7C007C
  • a.Neutralvisited text-decoration none color
    7C007C
  • lt/stylegt

9
XHTMLAHA Page Format
  • This format is inherited from AHA! 2.0. It has
    embedded conditional fragments
  • lt!DOCTYPE html SYSTEM /aha/AHAstandard/xhtml-ahae
    xt-1.dtdgt
  • lthtml xmlnshttp//www.w3.org/1999/xhtmlgt
  • ltobject dataheader.xml typetext/xml /gt
  • ltif exprtutorial.intro.knowledgelt30gtltblockgt
  • here some intro textlt/blockgt
  • lt/ifgt
  • ltobject datafooter.xml typetext/xml /gt
  • lt/htmlgt

10
AHA! and Standard XHTML
  • AHA! 3.0 adds support for standard XHTML, with
    conditional object inclusion.
  • lt!DOCTYPE html SYSTEM /aha/AHAstandard/xhtml1-str
    ict.dtdgt
  • lthtml xmlnshttp//www.w3.org/1999/xhtmlgt
  • ltheadgt
  • lttitlegtExample of AHA! with XHTMLlt/titlegt
  • lt/headgt
  • ltbodygt
  • lta hrefpage.xhtml classconditionalgtlink
    anchorlt/agt
  • ltobject nametutorial.object1
    typeaha/text /gt
  • lt/bodygt
  • lt/htmlgt

11
AHA! and XHTMLSMIL
  • AHA! 3.0 adds support for XHTMLSMIL too. This is
    based on a Microsoft Internet Explorer extension.
  • lt!DOCTYPE html SYSTEM /aha/AHAstandard/xhtml1-str
    ict.dtdgt
  • lthtml xmlnshttp//www.w3.org/1999/xhtml
    xmlnsturnschemas-microsoft-comtimegt
  • ltheadgt
  • lt?IMPORT namespacet implementationdefaultti
    me2?gt
  • lt/headgt
  • ltbodygt
  • ltobject nametutorial.xhtmltimeobject
    typeaha/text /gt
  • lt/bodygt
  • lt/htmlgt

12
AHA! and SMIL 2.0
  • AHA! 3.0 can perform adaptation to SMIL
    documents, by using the ltrefgt tag
  • lt!DOCTYPE smil PUBLIC -//W3C//DTD SMIL 2.0//EN
    http//www.w3.org/2001/SMIL20/SMIL20.dtdgt
  • ltsmil xmlnshttp//www.w3.org/2001/SMIL20/Languag
    egt
  • ltbodygt
  • ltseq repeat1gt
  • ltref srctutorial.smilobject typeaha/text
    /gt
  • lt/seqgt
  • lt/bodygt
  • lt/smilgt

13
Setting up an adaptive site with AHA!
  • To start using AHA! you should perform the
    following steps
  • Download the Tomcat webserver (preferably using
    jwsdp 1.3 from www.javasoft.com) and start it at
    http//localhost8080/admin/
  • Install AHA! 3.0. We assume you use directory
    c/aha on a Windows machine (but any directory on
    Windows or Linux should work)
  • Start Tomcat (with disconnected network!) and
    create a new context for AHA!
  • Perform the automatic configuration at
    http//localhost8080/aha/Config
  • Restart the server and go to the configuration
    page again to create authors and applications

14
Creating an AHA! Context
15
Creating an AHA! Context (cont.)
16
Creating an AHA! Context (cont.)
17
Creating an AHA! Context (cont.)
18
AHA! Automatic Configuration
  • The first time you go to http//localhost8080/aha
    /Config the following message appears
  • The automatic configuration is then completed and
    you have to restart the Tomcat server.
  • You can then login using aha and an empty
    password.

19
Configuring AHA!
  • The configuration tool lets you create and edit
    manager properties, authors and applications.
  • Note the conversion options between the XML
    authoring formats and the AHA! engines internal
    format.

20
AHA! Directory Structure
  • Structure in the AHA! directory tree
  • AHAstandard contains all publicly needed DTDs
  • WEB-INF AHA! configuration files and classes
    subdirectory tree (for servlets)
  • lib class subdirectory tree for authoring
    applets
  • xmlroot XML database storage for DM/AM and UM
  • author/authorfiles all files used and created by
    the authoring tools
  • concept templates (types of concepts with their
    attributes)
  • concept relationship types (with their adaptation
    rules)
  • list of authors and for each author a directory
    with the authors applications
  • for each AHA! application a subdirectory tree

21
The Concept Editor
  • Lets you edit every aspect of DM/AM for an
    application
  • add/remove/edit a concept
  • add/remove/edit attributes of a concept
  • add/remove/edit the suitability requirement of a
    concept
  • add/remove/edit a casegroup for the conditional
    inclusion of objects
  • add/remove/edit adaptation rules
  • each rule is tied to a triggering attribute
  • each rule has a condition
  • each rule has a series of actions executed when
    the condition is true
  • each rule has a (possibly empty) series of
    actions executed when the condition is false

22
(No Transcript)
23
(No Transcript)
24
(No Transcript)
25
(No Transcript)
26
(No Transcript)
27
The Graph Author Tool
  • The Concept Editor shows many aspects of the AHAM
    reference model
  • arbitrarily many concepts
  • each concept may have different attributes
  • event-condition-action rules used to provide
    specific adaptation rules
  • resources tied to concepts for page selectors
  • casegroup used for page constructors
  • The Concept Editor is also missing AHAM
    structures
  • there are no concept relationships
  • there are no generic adaptation rules
  • The Graph Author Tool alleviates these
    shortcomings

28
(No Transcript)
29
Managing an AHA! Application
  • The Graph Author offers 4 buttons for managing
    whole applications
  • Create a new application. When you save the
    application it will be added to the list of
    applications you author.
  • Open an application. You get a choice between
    the application of which you are the author.
  • Save an application. This saves all the
    information the Graph author needs to recreate
    its presentation and also compiles the structures
    to the DM/AM format.
  • Save to AHA!. This saves like the above button
    but also converts the DM/AM model to the internal
    format of AHA!.

30
Adding and Editing a Concept
  • This button opens a dialog box to select a
    concept type and enter the corresponding
    properties

31
Customizing the Graph View
  • The graph with concept relationships can become
    cluttered with arrows. This button opens a dialog
    box that lets you select relationship types to
    show or hide.
  • The graph with concept relationships can
    become very large. Scrolling becomes necessary
    but the overview is lost. With these buttons you
    can zoom in and out.

32
Defining Object Inclusion
33
Concept Relationship Types
  • In the Graph Author concept relationship types
    are tied to generic adaptation rules.
  • Each rule may have a parameter to replace a
    default.
  • Only binary relationship types are possible.
  • When a specific adaptation rule is needed a
    generic rule (template) must be created and
    instantiated.
  • There is currently no authoring interface to
    create
  • concept templates
  • concept relationship templates
  • There is no termination problem detection in the
    Graph Author Tool (but planned) and there is a
    confluence problem because authors have no
    control over the execution order of rules.

34
Concept Templates
  • lt!DOCTYPE template SYSTEM 'template.dtd'gt
  • lttemplategt
  • ltnamegtpage conceptlt/namegt
  • ltattributesgt
  • ltattributegt
  • ltnamegtaccesslt/namegt ltdescriptiongttriggered by
    page accesslt/descriptiongt
  • ltdefaultgtfalselt/defaultgt lttypegtboollt/typegt
  • ltisPersistentgtfalselt/isPersistentgt
    ltisSystemgttruelt/isSystemgt
  • ltisChangeablegtfalselt/isChangeablegt
  • lt/attributegt
  • lt/attributesgt
  • ltconceptrelationsgt
  • ltconceptrelationgt
  • ltnamegtknowledge_updatelt/namegt
    ltlabelgt35lt/labelgt
  • lt/conceptrelationgt
  • lt/conceptrelationsgt
  • lt/templategt

35
Concept Relationship Types
  • Concept relationship types are defined by two
    files one defines how the Graph Author presents
    it (color, arrow style) and whether it must be
    acyclic. The other one defines how it is
    translated to AHA! adaptation rules
  • lt!DOCTYPE aha_relation_type SYSTEM
    'aha_relation_type.dtd'gt
  • ltaha_relation_typegt
  • ltnamegt prerequisite lt/namegt
  • ltlistitemsgt
  • ltsetdefault location "destination.suitability"
    combination"AND"gt source.knowledge gt var50
  • lt/setdefaultgt
  • lt/listitemsgt
  • lt/aha_relation_typegt

36
Concept Relationship Types
  • Here is the knowledge propagation relationship,
    used to propagate knowledge through the concept
    hierarchy
  • lt!DOCTYPE aha_relation_type SYSTEM
    'aha_relation_type.dtd'gt
  • ltaha_relation_typegt
  • ltnamegtknowledge_propagationlt/namegt
  • ltlistitemsgt
  • ltgenerateListItem isPropagating"true"
    location"child.knowledge" gt
  • ltrequirementgt true lt/requirementgt
  • lttrueActionsgt
  • ltaction combination"DIV_S"gt
  • ltconceptNamegt parent lt/conceptNamegt
  • ltattributeNamegt knowledge
    lt/attributeNamegt
  • ltexpressiongtparent.knowledge(varDIVIDE_
    child.knowledge)lt/expressiongt
  • lt/actiongt
  • lt/trueActionsgt
  • lt/generateListItemgt
  • lt/listitemsgt
  • lt/aha_relation_typegt

37
Standard AHA! Forms and Reports
  • AHA! offers two standard forms and two standard
    reports
  • The end-user can choose link colors through the
    color configuration form. By choosing colors a
    choice is made between link hiding (default) or
    link annotation.
  • The end-user can change the knowledge value for
    concepts where the knowledge attribute is marked
    as changeable.
  • AHA! can produce a list of pages the user has
    read (from this application). This is based on
    the visited attribute value.
  • AHA! can also produce a list of pages the user
    has not yet read. This is also based on the
    visited attribute.
  • AHA! can also present some other information like
    the users name, id and email address.

38
Custom Forms the Form Editor
39
Multiple-Choice Tests
  • AHA! can present multiple-choice tests
  • Each test may consist of multiple questions.
  • Each question may have one or more correct
    answers.
  • The test may contain more questions than are
    asked. The choice is random.
  • A question may have more answers than are shown.
    The choice is random.
  • Explanations of answers may be given if the
    author has decided so.
  • A score is given and stored in the user model for
    the knowledge attribute of the concept associated
    with the test.
  • There is currently no authoring tool for creating
    multiple-choice tests.

40
Assignment
  • This course consists of viewgraphs with notes and
    videos. You should use this (or other multimedia
    material) to produce an adaptive hypermedia
    application
  • It must use AHA! version 3.0 (prerelease).
  • It must use XHTMLSMIL or SMIL 2.0.
  • It must be done in groups of two users.
  • It must be accompanied by a document motivating
    and explaining the design and implementation.
  • You can get inspiration from the course part that
    describes other adaptive hypermedia systems and
    applications.
Write a Comment
User Comments (0)
About PowerShow.com