110 likes | 254 Views
Open Corpus Adaptation ++ in GALE: Friend or Foe?. David Smits Paul De Bra Eindhoven University of Technology. GALE Architecture. GAM Language. Allows DM/AM descriptions in human readable/writable format In examples we use GALE enhanced Java code XML counterpart is GDOM
E N D
Open Corpus Adaptation++ in GALE: Friend or Foe? David Smits Paul De Bra Eindhoven University of Technology ACM Hypertext 2011
GALE Architecture ACM Hypertext 2011
GAM Language • Allows DM/AM descriptions in human readable/writable format • In examples we use GALE enhanced Java code • XML counterpart is GDOM • Example (fictitious) .gam file is http://htmlcourse.org/htmlcourse.gam ACM Hypertext 2011
Example GAM welcome.xhtml { #[visited]:Integer `0` event `#{#visited, ${#visited}+1};` } • Full URI: http://htmlcourse.org/welcome.xhtml • In welcome.xhtml: <p>Welcome <gale:ifexpr='${#visited} > 1'>back</gale:if> to the HTML course.</p> ACM Hypertext 2011
Example GAM (cont.) html.xhtml{ #[visited]:Integer `0` event `#{#visited, ${#visited}+1};` } tables.xhtml { ->(extends) html.xhtml #suitability:Boolean !`${basic.xhtml#visited} > 0` } basic.xhtml {->(extends) html.xhtml} ACM Hypertext 2011
Example GAM (cont.) • In html.xhtml: <ul> <li><gale:ahref="tables.xhtml"> Tables</gale:a></li> <li><gale:ahref="basic.xhtml"> Basic HTML data types</gale:a></li> </ul> ACM Hypertext 2011
Example GAM (cont.) • In http://gale.win.tue.nl/elearning.xhtml #[read]:Integer `0` #[visited]:Integer `0` { event `if (${#suitability} && ${#read} < 100) #{#read, 100}; else if (!${#suitability} && ${#read} < 35) #{#read, 35};` } #knowledge:Integer !`avg(new Object[] {${<=(parent)#knowledge},${#read}}).intValue()` #suitability:Boolean !`${#s-prereq}` #s-prereq:Boolean !`and(${<=(prerequisite)#known})` #known:Boolean !`${#knowledge} > 70` event `#{#visited, ${#visited}+1};` ACM Hypertext 2011
Example GAM (cont.) html.xhtml { ->(extends) http://gale.win.tue.nl/elearning.xhtml } tables.xhtml {->(extends) html.xhtml <-(prerequisite) basic.xhtml } basic.xhtml {->(extends) html.xhtml } ACM Hypertext 2011
Distribution ACM Hypertext 2011
Security • Run the Java code in a secured environment (using proven Java mechanics; protects server) • Only allow reading/writing the user’s own user model (any application can read all info) • Only allow modifying within the own application ACM Hypertext 2011
Questions • What adaptation to allow/disallow? Are the security precautions enough? • Is it desirable to store this information on the web? • How do we support group adaptation? • What can we do to make authoring easier? http://gale.win.tue.nl Thanks! ACM Hypertext 2011