Title: Afstudeerpresentatie Dynamische object insluiting in AHA! Barend de Lange
1AfstudeerpresentatieDynamische object
insluiting in AHA! Barend de Lange
5 Juni 2003
2Inhoud presentatie
- Inleiding Adaptief Hypermedia Systeem
- Uitleg wat is een fragment
- Fragment verwerking in AHA! 2.0
- Oplossingsmethode(n)
- Gevolgen van nieuwe structuur
- Conclusie(s)
- Samenvatting vragen
3Inleiding AHS (Adaptief Hypermedia Systeem)
- Adaptief hypermedia systeem is een systeem
- dat zich aanpast aan de gebruiker
- Aanpassen aan
- kennis, (leer)doelen, voorkeuren, andere
eigenschappen van gebruiker - Wat aanpassen
- Link adaptatie
- Content adaptatie
- Aanpassen door
- Welke informatie presenteren
- Hoe en in welke vorm informatie presenteren
4Inleiding AHS (Adaptief Hypermedia Systeem)
- Welke informatie presenteren
- Wel of niet informatie tonen
- Keuze van informatie tonen
- Bijvoorbeeld Engels of Nederlandse tekst
- Bijvoorbeeld Simpel of moeilijke uitleg
niveau aanpassen
5Inleiding AHS (Adaptief Hypermedia Systeem)
- Hoe de informatie presenteren
- Aanpassen aan omgeving van gebruiker
- Klein scherm / groot scherm
- Voor computer of GSM
- Aanpassen aan eigenschappen gebruiker
- Grote letters voor slechtziende
- Geluid voor doven i.p.v. tekst
6Inleiding AHS (Adaptief Hypermedia Systeem)
- Voorbeeld welke informatie presenteren
- Antwoord op de vraag Wat is een computer?
A computer is a device that accepts information
(in the form of digital data) and manipulates it
for some result based on a program or sequence of
instructions on how data is to be processed.
7Inleiding AHS (Adaptief Hypermedia Systeem)
- Hoe de informatie presenteren
- Antwoord op de vraagHoe laat vertrekt de trein?
Zelfde informatie
1029 Eindhoven Spoor 2 Richting
Roermond
Blind
Zeer goed ziend
slechtziend
8Inleiding AHS (Adaptief Hypermedia Systeem)
- Voorbeeld toepassing Webshop
Adaptief
9Inleiding AHS (Adaptief Hypermedia Systeem)
- Voorbeeld toepassing adaptief kookboek
Kookterm gezien ? meer kennis van kookterm Meer
kennis ? kortere, beknopte uitleg
Kookterm Au bain marie
Uitgebreid
Middel lang
kort
In een pan met heet water (90 graden) gerecht
rustig verwarmen
Pan met heet water waarin een andere pan wordt
geplaatst om een gerecht te verwarmen. Het wordt
zodoende niet warmer dan 80 a 90 graden. Wordt
ook gebruikt om gerechten op temperatuur te
houden.
Vul een pan voor ongeveer 3/4 met water, breng
het water aan de kook. Temper de warmtebron zodra
het water kookt. Plaats in de pan met het kokende
water een hittebestendige kom of pannetje met de
ingredienten, die gekookt moeten worden,
bijvoorbeeld een sabayon. De hitte die dit hete
water overbrengt, zal nooit boven de 100 C.
komen, is veel gelijkmatiger en werkt minder
direct - dus beter te controleren - waardoor
schiften en aanbranden minder kans hebben.
10Inleiding AHS (Adaptief Hypermedia Systeem)
User Model (UM)
Gebruiker
Domain Model (DM)
Output
Paginas en fragmenten
Adaptation Engine (AE)
11Wat is een fragment
Uniek identificeerbaar stuk informatie in een
systeem Paginas zijn opgebouwd uit statische
tekst en dynamische fragmenten
Statische fragmenten
Dynamisch fragment
12Fragmenten in AHA! 2.0
AHA! is een AHS (Adaptief Hypermedia Systeem)
Afhandeling van fragmenten in AHA 2.0
User Model (UM)
resultaat
AHA engine
U heeft voldoende kennis over Au bain marie,
extra uitleg niet nodig.
fragment
lthtml xmlns"http//www.w3.org/1999/xhtml"gt
ltbodygt lth1gtAHA v3.0lt/h1gt ltif expr"ahacook_aubain
marie_knowledge100"gt ltblockgt U heeft
voldoende kennis over Au bain marie,
extra uitleg niet nodig. lt/blockgt lt/ifgt lt/bodygt
lt/htmlgt
13Fragmenten in AHA! 2.0
- Beperkingen
- Geen gebruik van pure XHTML code
- Geen directe interactie met UM (na weergave
fragment, update direct UM) - Geen multidimensionale fragment structuur (met
recursie)
14Onderzoeksvraag
- Oorspronkelijke onderzoeksvraag
- Mogelijkheid van het verwijderen van
- AHA specifieke syntax uit de XHTML code
- Uiteindelijke onderzoeksvraag
- Een impact analyse en realisatie, van
- dynamische object insluiting in AHA!
15Oplossing
- Probleem XHTML vreemde code uit de paginas
- De oplossing (meerdere alternatieven bekeken)
- ltobjectgt tag en type veld voor fragment
herkenning, - name veld voor fragment identificatie.
lthtml xmlns"http//www.w3.org/1999/xhtml"gt
ltbodygt lth1gtAHA v3.0lt/h1gt ltif expr"ahacook_aubain
marie_knowledge10"gt ltblockgt Kennis van
au bain marie is 10. lt/blockgt lt/ifgt lt/bodygt lt/h
tmlgt
Fragment identificatie
Fragment herkenning
lthtml xmlns"http//www.w3.org/1999/xhtml"gt
ltbodygt lth1gtAHA v3.0lt/h1gt ltobject
namebainmarie typeaha/textgt lt/objectgt lt/body
gt lt/htmlgt
16Oplossing
- Na fragment herkenning en identificatie
- - bepalen welk basis fragment getoond moet worden
Webpage
User model
aanvraag
Static text
Fragment 2
Beslissing
basisfragmenten
Fragment 1
Fragment 3
Fragment 2
17Oplossing
- Beslissing Adaptatie Engine op basis van UM en DM
Gebruiker
User Model (UM)
Domain Model (DM)
Output
Paginas en fragmenten
Adaptation Engine (AE)
18Oplossing
User Model
(XHTML pagina Pagina wordt naar de browser
gestuurd met geselecteerd basisfragment
XHTML code ltobject name"ahacook.bainmarie
type"aha/text"gt lt/objectgt
Concept bainmarie Bainmarie.knowledge50 Defaultv
alue ? bainmariedefault.xhtml If
bainmarie.knowledge0 ? bainmarieuitgebreid.xhtml
If bainmarie.knowledge50 ? bainmarieuitleg.xhtml
If bainmarie.knowledge100 ? bainmariesamengevat.x
html
User Model mutatie(s)
Basisfragmenten
Bainmarieuitleg.xhtml Sdjhsjdhsdjhsdjhsdjshdjsd sd
jhsjhsdjhsjdhsjdhsjd edujshsjdhsjdsdksdj
Jsdhsjhdsjhdsjhdjshsjhd Sdjhsjdhsdjhsdjhsdjshdjsd
sdjhsjhsdjhsjdhsjdhsjd edujshsjdhsjdsdksdj
Jsdhsjhdsjhdsjhdjshsjhd Sdjhsjdhsdjhsdjhsdjshdjsd
sdjhsjhsdjhsjdhsjdhsjd edujshsjdhsjdsdksdj
19Gevolgen
- Scheiding van DM met content
- Decentrale opslag fragment informatie
- multidimensionale fragment structuur
- Recursieve multidimensionale fragment structuur
- Autonoom gedrag fragment
20Gevolgen
pagina X If zwaartekracht.kennis0 ? ltbegin
fragmentgtZwaartekracht de kracht die de aarde
op elk lichaam uitoefent.lteinde fragmentgt
pagina Y If zwaartekracht.kennis0 ? ltbegin
fragmentgtZwaartekracht de kracht die de aarde
op elk lichaam uitoefent.lteinde fragmentgt
pagina Z If zwaartekracht.kennis0 ? ltbegin
fragmentgtZwaartekracht de kracht die de aarde
op elk lichaam uitoefent.lteinde fragmentgt
21Gevolgen
- Decentrale opslag fragment content
Internet pagina X ltFragment zwaartekrachtgt
Internet pagina Y ltFragment zwaartekrachtgt
Internet pagina Z ltFragment zwaartekrachtgt
ltfragment zwaartekrachtgt If zwaartekracht.kennis0
? ltbegin fragmentgtZwaartekracht de kracht
die de aarde op elk lichaam uitoefent.lteinde
fragmentgt
22Gevolgen
- multidimensionale fragment structuur
Internet pagina XltFragment zwaartekrachtgt
Internet pagina YltFragment zwaartekrachtgt
Internet pagina ZltFragment zwaartekrachtgt
ltfragment zwaartekrachtgt If zwaartekracht.kennis
0 ? ltbegin fragmentgtZwaartekracht de
kracht die de aarde op elk lichaam uitoefent.Er
is veel onderzoek verricht naar zwaartekracht
door Newton ltfragment newtongt lteinde fragmentgt
ltfragment newtongt If newton.kennis 0 ?ltbegin
fragmentgtSir. Isaac Newton leefde van 1642 tot
1727 en heeft grote ontdekkingen gedaan op gebied
van wiskunde, optica en mechanica lteind fragmentgt
23Gevolgen
- Recursieve multidimensionale fragment structuur
Internet pagina XltFragment zwaartekrachtgt
Internet pagina YltFragment zwaartekrachtgt
Internet pagina ZltFragment zwaartekrachtgt
ltfragment zwaartekrachtgt If zwaartekracht.kennis
0 ? ltbegin fragmentgtZwaartekracht de
kracht die de aarde op elk lichaam uitoefent.Er
is veel onderzoek verricht naar zwaartekracht
door Newton ltfragment newtongt lteinde fragmentgt
ltfragment newtongt If newton.kennis 0 ?ltbegin
fragmentgtSir. Isaac Newton leefde van 1642 tot
1727 en heeft grote ontdekkingen gedaan op gebied
van wiskunde, optica, mechanica en zwaartekracht
ltfragment zwaartekrachtgt. lteind fragmentgt
24Gevolgen
Conversie document ? boom
Decentrale opslag fragment
multidimensionale fragment structuur
25Gevolgen
Recursieve multidimensionale fragment structuur
Pagina X Zwaartekracht de kracht die de aarde
op elk lichaam uitoefent.Er is veel onderzoek
verricht naar zwaartekracht door Newton Sir.
Isaac Newton leefde van 1642 tot 1727 en heeft
grote ontdekkingen gedaan op gebied van wiskunde,
optica mechanica en zwaartekracht Zwaartekracht
de kracht die de aarde op elk lichaam
uitoefent.Er is veel onderzoek verricht naar
zwaartekracht door Newton Sir. Isaac Newton
leefde van 1642 tot 1727 en heeft grote
ontdekkingen gedaan op gebied van wiskunde,
optica mechanica en zwaartekrachtltFragment
waartekrachtgt etc etc
26Gevolgen
Recursieve multidimensionale fragment structuur
Pagina X
Pagina X Zwaartekracht de kracht die de aarde
op elk lichaam uitoefent.Er is veel onderzoek
verricht naar zwaartekracht door Newton Sir.
Isaac Newton leefde van 1642 tot 1727 en heeft
grote ontdekkingen gedaan op gebied van wiskunde,
optica mechanica en Zwaartekracht de kracht
die de aarde op elk lichaam uitoefent.Er is veel
onderzoek verricht naar zwaartekracht door Newton
Sir. Isaac Newton leefde van 1642 tot 1727 en
heeft grote ontdekkingen gedaan op gebied van
wiskunde, optica mechanica en ltFragment
waartekrachtgt etc etc
Fragment zwaartekracht
Fragment newton
Fragment zwaartekracht
Fragment newton
Etc etc
27Gevolgen recursie
Terminatie algoritme
Oplossing
Recursie aanwezig!!
28Recursie terminatie algoritme
- Recursie is niet per definitie slecht
- Oneindige recursie terminatie algoritmen
- Boomgrootte beperking
- patroonherkenning
29Recursie terminatie algoritme
Maximaal aantal knopen in een document boom In
AHA! 3.0 500 knopen
30Recursie terminatie algoritme
Recursief patroon
Mogelijk correct UM log
31Autonoom gedrag fragment
- Ieder fragment heeft een concept
- Ieder fragment kan mutaties uitvoeren op UM
- Fragment wordt herkent en verwerkt, dan verdere
verwerking van pagina en fragmenten. - Fragmenten worden Depth First verwerkt
Pagina X Fragment P Fragment P Fragment Q
Pagina X
Frag. P
Frag. P
Frag.Q
32Autonoom gedrag fragment
- Verwerkingsvolgorde en invloed op volgende
fragmenten
document
het versturen van ltfragment E-mailgt is een hobby
van veel Nederlanders, het bekendste ltfragment
e-mailgt programma is Outlook. Ook bejaarden maken
gebruik van ltfragment E-mailgt. ltfragment E-mailgt
is de grootste tijdverdrijver voor deze groep.
Depth-first volgorde
Breadth-first volgorde
- Legenda
- Uitgebreid
- Normaal
- Simpel
- geen
4
1
1
2
2
3
3
4
het versturen van 1 is een hobby van veel
Nederlanders, het bekendste 2 programma is
Outlook. Ook bejaarden maken gebruik van 3. 4 is
de grootste tijdverdrijfver voor deze groep.
het versturen van 2 is een hobby van veel
Nederlanders, het bekendste 3 programma is
Outlook. Ook bejaarden maken gebruik van 4. 1 is
de grootste tijdverdrijfver voor deze groep.
33Conclusies
- Door dynamische object insluiting is het
volgende mogelijk - Autonoom gedrag fragmenten
- Hergebruik fragmenten (geen redundancy)
- multidimensionale fragment structuur mogelijk
- Recursie structuren mogelijk (gevaar!)
- Verminderd overzicht AHA! applicatie
- DM / Content splitsing
- Andere XML talen (SMIL, SVG, MathML)
34lt?gt Vragen lt/?gt
- Samenvatting
- Nieuwe manier van fragment herkenning en
identificatie en verwerking m.b.v. ltobjectgt tag
en uitbreiding DM AE en UM. - Gevolgen van nieuwe methode
- (recursieve) (multidimensionale) fragment
structuur - Terminatie algoritmen
- Autonoom gedrag fragment
- Geen redundante informatie in systeem
- Nieuwe talen ook mogelijk (web gebaseerd)