Proactive Mobile Learning on the Semantic Web
Rachid Benlamri
1
, Jawad Berri
2
and Xiaoyun Zhang
1
1
Department of Software Engineering, Lakehead University
955 Oliver Rd, Thunder Bay, Ontario, P7B 5E1, Canada
2
Department of Computer Engineering, Etisalat University College
PO Box 573 Sharjah, United Arab Emirates
Abstract. Flexible and personalized instruction is one of the most important re-
quirements to next generation intelligent educational systems. The intelligence
of any e-learning system is thus measured by its ability to sense, aggregate and
use, the various contextual elements to characterize the learner, and to react ac-
cordingly by providing a set of customized learning services. In this paper we
propose a proactive context aware mobile learning system on the Semantic
Web. The contribution of this work is a combined model using both a probabil-
istic learning technique and an ontology-based approach to enable intelligent
context processing and management. The system uses a Naïve Bayesian classi-
fier to recognize high level contexts in terms of their constituent atomic context
elements. Recognized contexts are then interpreted as triggers of actions yield-
ing a Web service composition. This is achieved by reasoning on the ontologi-
cal description of atomic context elements participating in the high level con-
text.
1 Introduction
Research work in the field of mobile learning [1][2][3][4][5] has shown that the edu-
cational potential of mobile technologies is driven by the continuing expansion of
broadband wireless networks and the capacity of the new generation of cellular
phones. However, the utilization of these technologies for educational purposes has
been sparsely explored and many problems related to: context acquisition and man-
agement, conceptual knowledge modeling for personalized instruction, and adaptive
information discovery remain unresolved. This paper contributes towards this direc-
tion, aiming at using the evolving semantic web and mobile computing to enable
context-aware learning which delivers adaptive instructional resources on a learner’s
schedule. Context-aware learning is a critical support mechanism for educational
institutions and organizations to compete in the new economy. Today’s global market
requires adaptive, fast, just-in time, and relevant learning processes that can be initi-
ated by user profiles and business demands [6].
In this paper we propose an integrated approach to context modeling and reasoning
based on Naïve Bayesian classifiers and ontological structures. First, higher-level
contexts are recognized using a Naïve Bayesian classifier. Then, ontology-based
Benlamri R., Berri J. and Zhang X. (2007).
Proactive Mobile Learning on the Semantic Web.
In Proceedings of the 1st International Joint Workshop on Wireless Ubiquitous Computing, pages 63-73
DOI: 10.5220/0002434400630073
Copyright
c
SciTePress
reasoning with the recognized contexts triggers actions yielding Web service compo-
sition that are customized to learner’s context, needs, and preferences. The contextual
information used in the personalization process encompasses all elements that charac-
terize the learner’s interaction, task at hand, the resources on which the Web services
are to be performed, and surrounding environment.
The remaining of the paper is organized as follows. Section 2 describes back-
ground knowledge and related work. Section 3 describes context representation and
modeling schemes. In section 4, we describe the higher-level context recognition
process. Section 5 presents the framework for ontology reasoning and Web services
composition to generate adaptive learning services. Finally, conclusions are drawn
and further research work is suggested.
2 Background and Related Work
A considerable amount of research in knowledge-based and intelligent e-learning
systems is now moving towards ontology-based context acquisition and management
for personalized learning [7][8][9][10]. The main issues and challenges are however
related to the ability of such systems to model and consistently reason with high level
contexts at the semantic level. Although, some research attempts were made to solve
some of these problems [9][10][11][12], the shortcoming of most of these efforts is
their limitations to specific context elements and specific learning scenarios. General-
purpose modeling and reasoning with context is a complex problem, and much re-
search work is needed before achieving any real progress in this field. Most devel-
oped learning systems restrict the use of ontology relations and rules to describing
and adapting content and sequencing of learning material according to some sensed
context. However, little contextual semantics has been embedded in the ontology
itself.
Other approaches to context modeling have also been considered. McCalla [13]
has introduced an approach to learning design where learners’ models are attached to
Learning Objects (LOs) they interact with, and useful learning patterns are then de-
rived by mining those models. The problem with this approach is its limitation to
context that can be inferred from the learner’s profile only, ignoring other type of
context. Stojanovic et al. [6] however, have extended ontology usage to describe
content, context, and sequence of learning material. Content-ontology was used for
checking consistency as well as searching and navigating repositories of LOs. Con-
text-ontology was used to present learning material in various learning contexts.
However, learning style ontology was used to describe the way knowledge can be
dynamically connected to adapt to learners’ cognitive needs and preferences. Sets of
relations, rules and axioms have been separately defined for each type of adaptation.
The shortcoming of this approach is that efficient modeling of mobile learning sce-
narios would require the definition of atomic context elements at the semantic level
and the use of the various ontologies in an orthogonal way. This is due to the fact that
context, content, and learning styles are semantically inter-related aspects of cognitive
learning [14]. This paper explores such a new dimension. The emphasis is on context
discovery and its semantic modeling and management. Mobile users equipped with
64
wireless devices go through several contextual changes as they move around in physi-
cal and social surroundings. These contextual changes could be used to drive ontol-
ogy navigation and reasoning for better modeling of mobile learning scenarios.
Another challenging aspect addressed in this paper is automation of metadata gen-
eration for mobile learning. Metadata provides a common set of tags for describing,
indexing, searching, and reusing learning materials on the Web in an interoperable
way [14]. However, it is really difficult to create and maintain metadata rich enough
to meet the diverse and ever changing needs of potential mobile learners. Mobile
learning requires additional metadata to capture context. In this study, an attempt is
made to solve this problem by defining contextual information at three hierarchical
levels – atomic context – composite context – and higher-level context. Atomic con-
text elements are sensed from the learner’s interaction, task at hand, the used mobile-
device, and the surrounding environment. These are then grouped into four composite
context classes – learner context – activity context – device context and environment
context. Composite contexts are further aggregated to build meaningful time-stamped
higher-level contexts which are matched against context classes describing typical
learning scenarios. Context classes are simply built from previously sensed similar
higher-level contexts that have exhibited high degree of confidence. Matching higher-
level contexts against these context classes is performed using a Naïve Bayesian clas-
sifier. The Naïve Bayesian classifier technique is used to cope with the uncertainty
embedded in most sensed atomic contextual elements. Recognized contexts are then
interpreted as triggers of actions that are translated into Web service compositions.
This is achieved through ontological descriptions and reasoning with higher-level
context.
Fig. 1 describes the overall system architecture which consists of four main com-
ponents – context acquisition and aggregation – context recognizer – ontology rea-
soning engine – and Web-service composer. The context acquisition and aggregation
component controls the user’s interaction with the system and senses atomic context
information from different sources. These are then aggregated into domain related
contexts. Mobile learners go through continuous contextual changes as they move in
their environments. It is the context acquisition and aggregator’s job to communicate
and update such changes yielding new contexts. The context recognizer identifies the
aggregated contexts by matching them against well defined context classes stored in a
context repository. The recognition process is performed using a Naïve Bayesian
classifier. The context recognizer also allows for newly formed context classes to be
added to the context repository.
The third component of the system is an ontology reasoning engine which uses the
recognized higher-level contexts to customize learning services. Two ontologies are
used to perform such a task – device/environment ontology – and domain ontology.
The former is used to generate metadata that is used to discover Web-services that
can run in the learner’s device/network environment. However, the later is used to
customize the learning content and the learning sequence according to the learner’s
current activity, background and preferences. This requires an ontological description
and interpretation of higher-level contexts in terms of their constituent atomic context
elements. Finally, the Web-service composer uses the generated device/environment
metadata and the inferred learning concepts’ sequence to compose Web-services
accordingly.
65
User
Context
Device
Context
Environment
Context
Activity
Context
Context Aggregator
Device/
Environment
Ontology
Domain
Ontology
Web Services
Agents
Context Recognizer
Context
Repository
Device/
Environment
Repository
Web-Services
Composer
LO
Repositories
Learner Profile
Repository
Ontology
Reasoning
Fig. 1. System Architecture.
3 Context Acquisition and Aggregation
Contextual information used in this study is defined at three hierarchical levels –
atomic context – composite context – and higher-level context. At the lower level,
atomic contextual elements consist of the basic information describing the learner’s
profile, the current learner’s activity, the used mobile device, and the surrounding
environment. These can be either direct or indirect atomic contextual elements. Direct
atomic contextual elements are those that can be directly sensed from the user interac-
tion with the system and may originate from different sources such as the used device
(i.e. device type, communication protocol), the task at hand (i.e. current learner’s
activity), and the surrounding environment (i.e. location, time, wireless network,
network security). Indirect atomic contextual elements are however those elements
that can be indirectly inferred from the direct atomic context elements. Inference of
indirect atomic context elements is performed by the context aggregator relying on
the device/environment repository and the learner profile repository. For instance,
information such as device’s operating system, device memory, and screen resolution
of a specific mobile device which is previously stored in a device repository can be
inferred using the atomic context element device-type. Similarly, other information
related to the learner’s pre-requisite knowledge, previously accessed services, and
learner’s preferences can be inferred from the learner profile repository. The use of
indirect contextual elements aims at reducing the amount of contextual information
that has to be sensed from the learner’s interaction, device, and surrounding environ-
ment, which significantly speedup the context recognition process.
66
An atomic context element c
i
is defined by:
),(
ipivi
ccc
=
(1)
where
iv
c is the context value, and
ip
c is the probability of context
i
c of value
iv
c being part of a higher-level context. The context value
iv
c , as shown below, can
be either a specific value (i.e. device type, learner identifier), a binary value (i.e.
whether the used device is browser-enabled or not, secured/non-secured wireless
network), or a value within a predefined range (i.e. network bandwidth, screen resolu-
tion).
(2)
Composite contextual elements are aggregates of atomic context elements describ-
ing a specific context type. There are four context types –
L
c
learner context –
D
c
de-
vice context –
E
c environment context – and
A
c activity context. Each of which is
defined by:
(3)
Finally, higher-level contexts consist of four-tuples
tAEDLt
ccccC ),,,(
=
which
are built out of configurations of composite context elements sensed at time t and
which characterize typical learning scenarios in a specific domain. Classes of higher-
level contexts are defined at the ontological level in that they can be interpreted di-
rectly as triggers of learning actions implemented as Web service compositions.
4 Context Recognition
While ontologies have the ability to communicate context information by naming
different concepts in machine readable fashion and allowing for the use of everyday
words and concepts when interacting with the technology, they are unable to effi-
ciently recognize learners’ context. This is because the mapping between the defined
concepts and the sensed real world atomic context elements is not so straightforward
due to the uncertainty embedded in some atomic context elements. The mapping fails
because ontologies do not handle uncertainty. They rather rely on well defined logic
which assumes all information required to make a logical decision is available and
produces either true, false or undeterminable statements. Uncertainty on the other
hand produces similar statements but with degrees of truth or falseness [15]. To cope
with uncertainty, higher-level contexts are recognized using a Naïve Bayesian Classi-
fier. Bayesian Classification is a probabilistic learning technique where prior knowl-
=
]2..1[ vvvalue
valuebinary
valuespecific
c
v
=
=
=
q
j
indirectj
p
i
directicomposite
ccc
11
U
67
edge can be combined with observed data. The aim is to recognize a currently ob-
served context state against a set of learned context classes. The input to the classifier
is thus a set of sensed/observed atomic context elements which describe the user’s
context at a given instant of time, while the output is a learned context class. The
classification process is thus performed with no user intervention or understanding
required. The Bayesian classification also makes the implicit assumption that the data
being handled is noisy and can tolerate any missing pieces of information. One differ-
ence between the Bayesian classification and the ontology approach is that once the
ontology is defined then it can be available immediately whereas in the Bayesian
classification approach each context has to be experienced at least once before being
recognized again [15].
Let X be a current context whose class label is unknown, and let H be a hypothesis
that X belongs to context class C, the classification problem consists of determining
P(H/X) that is the probability that the hypothesis holds given the observed context X.
This is defined by:
(4)
where :
P(H) is the prior probability of hypothesis H (i.e. the initial probability be-
fore we sense the current context and reflects the background knowledge).
P(X) is the probability associated to the current context.
P(X|H) is the probability of observing the context X, given that the hypothe-
sis holds.
The above Bayesian model assumes that the observed context elements are re-
lated and depend on each other, and therefore, requires initial knowledge of many
probabilities, as well as, significant computational cost. However, since most sensed
atomic context elements are independent, the above model can be further simplified
by applying the Naïve Bayesian classifier which is defined by:
(5)
Where: C
i
is a context class, and the set of x
k
s are the atomic context elements
forming the higher-level context X as defined in section 3.1.
The Naïve Bayesian classifier greatly reduces the complexity of the model, as well
as its computational requirements. The context recognition problem is solved by as-
signing the current context X to the class C
k
that satisfies the following condition:
(6)
where m is the number of recognized context classes.
Fig. 2 describes the context acquisition and recognition cycle. First, direct-atomic
context elements are sensed, these are then used to infer related indirect-context ele-
ments. Next, the Naïve Bayesian classifier is applied to recognize the associated
higher-level context-class, and finally, changes to the learner’s context are sensed and
a new context recognition cycle is performed. It should be noted here that the context-
)
1
()|(
i
C
n
k
k
xP
i
CXP
=
=
)}()({)(
..1
ii
mi
k
CPCXPMaxCXP
C
k
X
=
=
)(
)()|(
)|(
XP
H
P
H
X
P
XHP =
68
change detection process significantly speedup the recognition time of successive
high level contexts. This is because we just infer the indirect-atomic contexts of those
context elements that have undergone some changes. The subset of newly observed
context elements designated by C
changes
is defined by:
(7)
where “\” means set subtraction.
direct-atomic
context
acquisition
indirect-
atomic
context
inference
high-level
context
recognition
Context-
change
detection
Surrounding
Environment
device/env.
repository
learning-style
repository
learner
repository
high-level
context
repository
nomadic
learners
Fig. 2. Context Acquisition and Recognition Cycle.
5 Ontology Reasoning and Web Service Composition
Recognized higher-level contexts are fed to the ontology reasoning engine in order to
customize learning services based on the learner’s context, preferences and back-
ground. Reasoning with recognized higher-level contexts is performed using the two
ontologies – device/environment ontology – and domain ontology. A set of ontologi-
cal rules are applied to the device/environment ontology to infer the computing re-
sources and the operational environment features compatible with the used mobile
device and its surrounding environment. We call this process, context-driven re-
sources adaptation. The output of this reasoning process is a set of metadata that will
help discovering the Web services that can run into such an operational environment.
The inference rules that are built around the domain ontology however are used to
provide the learner with a learning sequence and content tailored to his/her current
activity, previous background and preferences.
The two ontologies are coded in the Web Language Ontology – OWL; and the in-
ference engine is implemented in Rule Markup Language – RuleML. Metadata de-
rived from the ontology reasoning process is compliant with the IEEE-LTSC Learn-
ing Object Metadata (LOM) specification which is coded in XML. In particular, the
XML description of both the inferred learning concepts and the device-related opera-
tional environment are used for Web services discovery. However, the inferred learn-
ing sequence which we call in this paper domain-context (i.e. the order of learning
concepts inferred using the properties and relations between the domain-ontology’s
classes [16]) is used for Web service composition. This is described in OWL-S. A
ii
tAEDLtAEDLchanges
ccccccccC ),,,(\),,,(
1+
=
69
domain context represents a control structure that makes it possible to adapt the do-
main knowledge to a particular higher-level context. This adaptation is facilitated by
the ontology
M
O
for a given domain
.
M
O
is defined by
),(
MMM
RCoO
=
, where
},...,{
1 nM
cocoCo =
is a set of concepts and
1
{ ,..., }
M
q
R
rr
=
is an ordered set of rules
defined as follows:
)...()...(
1 lkrj
cocoqcocop
s
, where
p
and
q
are predicates
reflecting respectively the factual information and the resulting one based on the
inferential rule
s
r
.
The semantic of the ontological links is obtained by the rules in R
M
. These rules are
prioritized to reflect their importance or abstraction levels in a given knowledge tax-
onomy. For example, if the sensed higher-level context reflects a time-constrained
learning scenario, one would like to focus only on say “the necessary-part-of” rules of
the ontology to get a quick abstraction on the general structure of the requested
knowledge. In a less time-stringent learning scenario however, this abstraction could
further include the “part-of”, and/or “case-study” rules, etc. These knowledge-
supporting rules generate additional concepts of the ontology in multi-level clusters
which are used to infer a progressive knowledge based on the learners’ context de-
noted by C
L
and the activity context denoted by C
A
as described in section 3.
A software agent as shown in Fig. 1 is spawned at the server side to supervise a
learning session for each learner. The agent typically represents the learner on the
Semantic Web. The agent successively invokes the inference engine to get the current
learner’s focus, then discovers, composes, and invokes the chosen Web services ac-
cordingly.
To illustrate the main functions provided by our framework, we provide the fol-
lowing example ontologies describing a C++ programming course as a domain ontol-
ogy, and a device/environment ontology. These are shown in Fig. 3 and Fig. 4 respec-
tively.
C++ Programming 1
Prog. & PS 2
Program
Computer
8
9
Part-of Relation
Necessary Part-of Relation
Concept
Prerequisite Relation
i
i: Concept Id
Is-a Relation
Prog. Language 10
PS Techniques 11
Means-Ends Analysis 13
Solve by Analogy 12
Divide & Conquer 14
Building Blocks App. 15
Merging Solutions 16
Algorithmic PS 17
Program Development Process 3
18
19
20
21
Program I/O 4
Interactive I/O
File I/O
22
23
Input Failure
24
Output Formatting 25
Selection 5
Loop Design 37
Control Flow Design 38
Loop Exection 36
Event-Controlled Loops 39
Looping Subtasks 40
Looping 6
C++ Loops 41
Nested Loops 45
While 42
Do-While 43
For 44
User-Defined Fcts 47
Function Call 49
Functional Decomposition 46
Declarations and Defs. 50
Local Variables 51
Functions 7
Void Functions 48
Parameters 54
Designing Functions 55
The Return Statement 52
Header Files 53
Scope of Identifiers 56
Value-Returning Fcts. 57
Conditions 27
If Statement 33
Control Flow 26
Nested If Stat. 34
Switch Stat. 35
Logical Expr. 28
Boolean Data 29
Relational Op. 30
Logical Op. 31
Ops. Precedence 32
C++ Programs
Program Construction
Program Execution
Testing & Debugging
Fig. 3. Ontology for C++ Programming Course.
70
Mobile Devices
Hardware
Screen
Keyboard
Navigation device
Memory
Software
Customization
Normal Screen
Touch Screen
Size
Colors
Virtual
Physical
Scroll Wheel
Thumb Wheel
Stylus
Size
Speed
Operating System
Palm OS
Windows Mobile
RIM
GPE
OPIE
Windows
Speakers
Connectivity
Networks
GSM 900
GSM 1800
GSM 1900
EGSM
Applications
Bluetooth
Wimax
WAP
Personal Inf. Manager
Multimedia
Wi Fi
Video Player
Audio player
SW Applications
Devices
Memory Slot
USB
Infrared
WLAN
Device-Type
PDA
Laptop
Pocket PC
Cell Phone
Programming
J2ME
Symbian
BREW
Televison
E-Book
Symbian OS
Linux
GPRS
3G
1
2
3 4
5
6
60
61
62
63
50
53
54
51
55
56
57
52
58
59
36
45
46
44
43
42
41
39
40
38
47
48
49
37
23
26
27
28
29
31
30
32
33
25
24
34
35
7
12
13
14
15
8
16
17
9
18
19
20
10
22
11
21
Part-of Relation
Necessary Part-of Relation
Concept
Prerequisite Relation
i
i: Concept Id
Is-a Relation
Fig. 4. Device/Environment Ontology.
A fragment of the ontology shown in Fig. 3, describing concept 3 “Program De-
velopment Process”, is described in OWL in Fig. 5. The OWL definition of the se-
mantics of the different relationships used in the C++ programming ontology is also
given in Fig. 5.
Details about the rules used by the ontology reasoning engine to customize the
learning sequence can be found in our previous work [17].
71
Fig. 5. Fragments of OWL description of the C++ Programming ontology.
6 Conclusions
In this paper, we proposed a proactive mobile-learning system on the Semantic Web.
We argued that a probabilistic learning model is more suitable that an ontology-based
approach for context recognition. This is mainly due to uncertainty embedded in
some atomic contextual information. Higher-level recognized contexts are however
described at the semantic level using ontology rules and axioms. The ontology rea-
soning process allows the system to react to any observed contextual changes by
interpreting the newly sensed contexts as triggers of actions yielding a Web service
composition. We are currently implementing a prototype of our framework as part of
our personalized-learning provision project.
<owl:ObjectProperty rdf:ID="NecessaryPartOf">
<rdf:type rdf:resource="&owl;TransitiveProperty"/>
<owl:inverseOf rdf:resource="#hasNecessaryPart"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:ID="isPartOf">
<rdf:type rdf:resource="&owl;TransitiveProperty"/>
<owl:inverseOf rdf:resource="#hasPart"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:ID="is-a">
<rdf:type rdf:resource="&owl;TransitiveProperty"/>
<owl:inverseOf rdf:resource="#has"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:ID="isPrerequisiteOf">
<rdf:type rdf:resource="&owl;TransitiveProperty"/>
<owl:inverseOf rdf:resource="#hasPrerequisite"/>
<owl:Class rdf:ID="Program Development Precess_3">
<rdfs:subClassOf rdf:resource="#C++ Programming_1"/>
<owl:disjointWith rdf:resource="#Prog and PS_2"/>
<owl:disjointWith rdf:resource="#Program I/O_4"/>
<owl:disjointWith rdf:resource="#Selection_5"/>
<owl:disjointWith rdf:resource="#Looping_6"/>
<owl:disjointWith rdf:resource="#Functions_7"/>
</owl:Class>
<owl:Class rdf:ID="C++ Programs_18"/>
<rdfs:subClassOf rdf:resource="#Program Development Process_3"/>
<rdfs:subClassOf>
<owl:Restriction>
<owl:onProperty rdf:resource="#isNecessaryPartOf"/>
<owl:allValuesFrom rdf:resource="#program Development Process_3"/>
</owl:Restriction>
</rdfs:subClassOf>
<rdfs:subClassOf>
<owl:Restriction>
<owl:onProperty rdf:resource="#isPrerequisiteOf"/>
<owl:allValuesFrom rdf:resource="#Testing and Debugging_21"/>
</owl:Restriction>
</rdfs:subClassOf>
<owl:disjointWith rdf:resource="#Program Construction_19"/>
<owl:disjointWith rdf:resource="#Program Execution_20"/>
<owl:disjointWith rdf:resource="#Testing and Debugging_21"/>
</owl:Class>
72
Acknowledgements
This work is funded by Lakehead University and NSERC under a startup research
grant.
References
1. L. Low and M. O’Connell, “Learner-centric design of digital mobile learning”, Proc. of the
On-line Learning and Teaching Conference, Brisbane, Australia, September, (2006) 71-82.
2. M. Milrad, “Mobile Learning: Challenges, Perspectives and Reality”, Book chapter in
Kristóf Nyíri (ed.), Mobile Learning: Essays on Philosophy, Psychology and Education,
Vienna, (2003) 25-38.
3. B. Alexander, “Going Nomadic: Mobile Learning in Higher Education”, EDUCAUSE
Review, 39(5), (2004) 28–35.
4. L. Chittaro, “Visualizing Information on Mobile Devices”, IEEE Computer, March (2006)
40-45.
5. G. Vavoula and M. Sharples, KLeOS: A personal Mobile Knowledge and Learning Or-
ganisation System”, Proc. 2nd IEEE Int. Workshop on Wireless and Mobile Technologies
in Education, Sweden, (2002) 152-157.
6. L. Stojanovic, S. Staab and R. Studer, Elearning based on the semantic web, Proc. of the
World Conf. on the WWW and Internet (WebNet2001), Orlando, Florida, USA, (2001)
1174-1183.
7. R. Mizoguchi and J. Bourdeau, Using Ontological Engineering to Overcome Common AI-
ED Problems”, Int. Journal of Artificial Intelligence in Education, 11 (2), (2000) 107-121.
8. L. Aroyo and D. Dicheva, Courseware Authoring Tasks Ontology”, Proc. Int. Conf. on
Computers in Education, Los Alamitos, CA, (2002) 1319-1321.
9. J. Kay and A. Lum, Ontology based User Modeling for the Semantic Web, Proc. of the Int.
Workshop on Personalisation on the Semantic Web, Edinburgh, UK, (2005) 14-23.
10. J. Wang et al., “Personalized Knowledge Service Framework for Mobile Learning”, Pro-
ceedings of the Second Int. Conf. on Semantics, Knowledge, and Grid (SKG'06), Novem-
ber, (2006) 102-103.
11. I. Tirrellil et al., “Fractal Adaptive Web Service for Mobile Learning”, Int. Journal, of
Emerging Technologies in Learning, 1(2), (2006) 25-35.
12. P. Veith, “Conception and Development of Reusable and Modular Mobile Content”, Proc.
of Int. Conf. on Mobile Learning mLearn’2005, Cape Town, 25-28 October, (2005), Re-
trieved from <http://www.mlearn.org.za/CD/ > Dec. 2006.
13. G. McCalla, The Ecological Approach to the Design of E-learning, Environments: Pur-
pose-based Capture and Use of Information about Learners, Journal of Interactive Media in
Education, 7, (2004) 1-23.
14. L. Aroyo and D. Dicheva, The new challenges for e-Learning: The educational Sementic
Web, Educational Technology and Society, 7(4), (2004) 59-69.
15. J. Flanagan, Unsupervised clustering of symbol strings, in Intl’ Joint Conference on Neural
Networks,IJCNN’03, Portland Oregon, (2003) 3250–3255.
16. R. Benlamri, J. Berri and Y. Atif, A Framework for Ontology-aware Instructional Design
and Planning, Journal of E-Learning and Knowledge Society, 2(1), (2006) 83-96.
17 J. Berri, R. Benlamri and Y. Atif, Ontology-Based Framework for Context-aware Mobile
Learning, Proc. Int. Conf. on Wireless Communication and Mobile Computing, Vancouver,
Canada, (2006) 1307-1310.
73