# Cloud-based framework for mobile learning content adaptation

Ivan Madjarov

► To cite this version:

Ivan Madjarov. Cloud-based framework for mobile learning content adaptation. 2014
IEEE Global Engineering Education Conference (EDUCON), Apr 2014, Istanbul, Turkey.
10.1109/EDUCON.2014.6826122 . hal-01709905

HAL Id: hal-01709905

https://amu.hal.science/hal-01709905

Submitted on 2 Mar 2020

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>

Distributed under a Creative Commons Attribution 4.0 International License
# Cloud-based Framework for Mobile Learning Content Adaptation

Ivan MADJAROV

Aix-Marseille Université, CNRS LSIS UMR 7296,
Saint-Jérôme, Avenue Escadrille Normandie-Niemen,
13397 Marseille France
ivan.madjarov@lsis.org

*Abstract*—Mobile Web browsing usually involves a lot of horizontal and vertical scrolling, which makes page consultation painful. The main challenge of mobile networking is the context-aware content adaptation. This paper discusses the problem of content adaptation for mobile devices. The adaptation considers the context of the client and the environment where the client request is received. A device independent model is developed in order to achieve automatic adaptation of the content based on its semantics and the capabilities of the target device. A service-oriented Framework, as part of an e-Learning SaaS Cloud, is presented for adapting and displaying learning objects on small handheld devices, including a text-to-speech solution for learners in moving. Some aspects of e-Learning services integration of in Cloud computing environment are also discussed.

*Keywords*—Content adaptation, Web services, m-Learning, Cloud computing, SaaS

## I. INTRODUCTION

Cloud Computing is a technology that uses the Internet and central remote servers to maintain data and applications. This is a natural platform to provide support to Mobile Learning (m-Learning) systems and also for the implementation of data mining techniques that allow exploring distributed knowledge databases. Cloud Computing is a computation paradigm in which the resources of an information system are offered as services through net connections with transparent scalability in such a way that the computational resources are assigned in a dynamical and accurate manner when they are strictly necessary, without the requirement of a detailed understanding of the infrastructure from the user's point of view [1]. Software-as-a-Service (SaaS) is a type of Cloud service which provides software functionality through Internet and can help efficiently the management of Web-based applications and pedagogical data in an m-Learning context. This is a software delivery model in which software and its related data are hosted centrally and are typically accessed by users using a thin client, normally using a browser over the Internet. So, SaaS delivers a single application through the Web browser to thousands of learners using a multitenant architecture.

Nowadays, the expansion of mobile computing has spawned a very heterogeneous environment of mobile devices. Those devices have different capabilities in providing mobile

services to the user, implying the challenge of considering heterogeneous devices during mobile service development. This especially encompasses the task of adapting the content, which a mobile service provides to a specific mobile device [16]. Usage of multimedia services and especially the presentation of multimedia learning contents are more challenging in a mobile environment than on desktop devices as a result of the diversity of mobile devices and their parameters [2, 19].

In this paper, we introduce the concept of m-Learning-Software-as-a-Service content-editing and storing for pedagogical content-adaptation and diffusion. The objective is to describe the personalization in m-Learning via an adaptive approach. We tested several mobile Web browsers to proof the Learning Objects (LOs) [7] portability. The advantages of using a mobile Web browser as universal communication environment were described in [3]. We introduce a service-based solution that utilizes the hierarchical display of multimedia units with index extraction and content summarization. Web services technology was adapted to provide a flexible integration model in which all the learning components and applications are well defined and loosely connected. The realization combines textual content adaptation with alternate audio transcoding to better fulfill student needs. An adaptive technique is realized on XML-based technology which is better suited for a large content of LOs. The use of XML as a medium-neutral data format for data storage and processing allows the learning contents to be classified hierarchically, to be structured at the desired level of granularity and to be adjusted to different contexts and devices [3].

In this paper we argue that a future Cloud-based m-Learning system should consist of a set of independent but cooperating non-monolithic Web services-based applications that integrate pedagogical data between common Learning Course Management Systems (LCMS).

The rest of this paper is organized as follows. In Section 2, the Cloud-based approach for e-Learning systems is discussed. Section 3 explains the architecture of Software-as-a-Service distributed Cloud for m-Learning, and the system design issues are described including implementation details. The conclusion and feedback are discussed in Section 4.
## II. CLOUD-BASED E-LEARNING SYSTEM

### A. Cloud Computing Architecture

In Cloud Computing architecture the coupling between resources and applications is facilitated and thereby can provide the information and application interoperability to e-Learning systems. The Cloud can be seen as a unique access point for all the requests coming from the world wide spread clients.

### B. Cloud Computing Layers

Cloud computing comprises of three layers: (1) infrastructure as a service (IaaS); (2) platform as a service (PaaS); (3) software as a service (SaaS) [4].

* IaaS comprises the layer of storage, hardware, servers and networking components. Architecture scalability is achieved through virtualization, such that multiple systems or operating systems can be run at the same time on a virtual machine or across multiple machines.

* PaaS offers application platform for Internet programming interface and operating environment, where users can dispose their own applications.

* SaaS is a software delivery model in which program and its associated data are hosted centrally and are accessed by users using a Web browser over the Internet. It becomes a common delivery model for business applications and learning course management system.

### C. Software as a Service Background

SaaS means using software as service over the Web in which some kind of protocol is involved, which is used to intercommunicate between the client side application and the server side software service. Traditionally, SaaS services use REST (Representational State Transfer) services, but another protocol, SOAP (Simple Object Access Protocol) is also used. SaaS services are also hosted on the Cloud just like Web services, but a SaaS application usually calls the services using RESTful services, whereas Web services make calls using RPC (Remote Procedure Call). REST services and Web services are different implementations of the same architectural approach which is the Service-Oriented Architecture (SOA). So, SaaS services are deployed into the Cloud just as Web services and may even be implemented using REST method. REST is an approach of software architecture for distributed hypermedia systems such as the World Wide Web. REST is considered as an alternative to the RPC method. RPC uses in most cases SOAP, but we can well imagine a REST method using SOAP style messages to communicate between SaaS-based and Web service-based applications.

### D. Web Services

Web Services is one of the most active and widely adopted implementation of SOA. It is based on an interoperable protocol and all communication between the server to client, client to client or server to server and in general application to application, uses the same protocol (SOAP). Web Services make calls to Web methods exposed as a service by sending and receiving messages. Web Services do not limit any kind of trans-

port for message delivery. They may be operated over a traditional HTTP approach, or a message based asynchronous JMS approach, or over a file based FTP approach, and just about any other transport protocols. Web Services are discoverable by the clients by searching the UDDI (Universal Description, Discovery and Integration) directories, which publishes the Web services as standard agreements like WSDL (Web Services Description Language). A WSDL is a contract document, which is just an XML document based on WSDL schema, which describes the messaging format of the exposed services. The client fetches the WSDL and interprets the XML grammar then makes dynamic invocation of services.

### E. Cloud Computing in the e-Learning Area

The rapid evolution of Internet based technologies in recent years has enhanced the development of Web based applications. This includes many Web 2.0 emerging tools supporting Cloud computing and SOA that are adopted to improve services to clients. Implementations of some of these technologies have been demonstrated by social networking on websites such as Facebook, Twitter or YouTube [10]. As is pointed out in [1] Cloud Computing may promote a new era of learning taking the advantage of hosting the e-Learning applications on a Cloud and following its virtualization features of the hardware. This approach reduces the construction and maintenance cost of the learning resources. Interest in Cloud computing in the e-Learning area is growing due to potential greater cost savings from scalable architectures and open source products, and the possibility of higher learning outcomes. Greater connectivity between centralized Cloud-side applications and low cost, and low processor capacity of mobile devices for m-Learning use could provide better access, more control, and greater freedom for mobile learners.

E-Learning is an innovative approach for delivering well-designed, learner-centered, interactive and facilitated learning environments to anyone, anyplace and anytime. Components of an e-Learning system can include content of multiple formats, management of the learning experience, and an online community of learners, content developers and experts [6]. In addition to the learning technologies, the Web-based learning offers some benefits over conventional classroom-based learning. A partial list includes: (1) it can be used at any time and on any place; (2) pedagogical documents are easy to update; (3) it promotes interaction between the learner and the teacher; (4) it can integrate multiple media such as text, audio, graphics, video and animation; (5) it promotes the formation of learning communities; (6) learners progress is easily checked, and (7) it allows a learner-centered approach that takes into account the learners profiles.

On the other hand m-Learning is seen as the natural evolution of e-Learning. Basically m-Learning is considered as any form of learning that is delivered through a mobile device. We believe that m-Learning can be presented as a mobile extension of e-Learning through mobile computational devices with Internet connectivity [3]. At the same time mobile devices significantly differ from each other in their characteristics. Mobile devices' heterogeneity can be divided into hardware and software heterogeneity [19]. Hardware heterogeneity reflects the presence of devices with different capabilities. Software hetero-
rogeneity describes the presence of different operating systems, programs and Web applications running on mobile devices. However, Web pages in general, are designed to be visualized on larger screens and, when one attempt to fit it on a small-screen device, most of its content is not visible. This effect is due essentially to the fact that mobile devices support several different markup languages to display output. To overcome those heterogeneity issues we suggest the concept of a web-service based platform for mobile services that handles both content adaptation and Web service provision.

The SaaS approach is perfect for e-Learning and m-Learning because of its fast implementation and easiest maintenance since clients will receive the latest updates and features without any extra financial obligation. Another advantage with SaaS is that it helps administration and teachers to share key resources all with the simple click of a button, using Web 2.0 technology. All aspects of an e-Learning or m-Learning solution can be delivered using the SaaS model, including LMS, LCMS, courseware content, authoring tools, and synchronous collaboration tools like webcasting and white boarding. An e-Learning SaaS solution delivers and manages e-Learning or m-Learning applications and services from remote data centers to multiple users via the Internet.

## F. Related Work

Currently there are ongoing projects that propose the use of Cloud computing as a base for modern e-Learning applications and systems. In [5] authors present a general and simple architecture with ad-hoc modules, such as monitoring, policy and provision. However, no implementation scenario for e-Learning use case is presented. The CloudIA project [8], demonstrates the feasibility of a private Cloud infrastructure for e-Learning services. This project addresses functionalities for enabling an e-Learning system in the Cloud, such as authentication and integration with existing IT infrastructure, creation of customized on-demand virtual machines. However, the choice of private resources in relation to the means available in public is not shown. A similar architectural system is has been adopted in BlueSky Cloud framework [9]. This project enables physical machines to be virtualized and allocated on-demand for e-Learning systems. However, the security layer for this Cloud-based framework is not addressed. The project described in [11] presents an approach using a service platform, which utilizes a content adaptation procedure for web-based mobile services by utilizing device capability databases and generic page transformation. Their approach enables mobile devices to visualize any generic content device-specifically on their integrated browsers. The integrated mobile Web browsers support a specific set of markup languages. These differences are not discussed in function of services interoperability. The Google App Engine [14] provides a Java Web framework based Jetty, a servlet container, and BigTable for data storage. Xesop [3] uses the Apache containers suite for data storage and service management.

## III. E-LEARNING SOFTWARE AS A SERVICE

This section presents a solution for building a virtual and personalized learning environment which utilizes the technology of Cloud-based Software-as-a-Service to create a service-oriented model for m-Learning application service providers and learners. The concept of e-Learning-Software-as-a-Service is introduced as a software distribution model in which applications are hosted by a service provider and distributed via the Web.

<figure><img src="image_2.png" /><figcaption>Figure 1. The course semantics schema shows common elements of a scientific learning content. A science course contains, in general, chapters, sections, text paragraphs, bitmap images, scalable vector graphics, and mathematical equations, programming code, charts and tables. This XML schema defines the course grammar for a XML-based description of a learning content with a wide range of scientific elements.</figcaption></figure>

The contribution is as follows: (1) the concept encompasses the creation of an XML-based and mobile browser-independent content, which is adapted to the requesting device using a device capability recognition method and XML transformation techniques according to the recent advances of media queries-based responsive Web design; (2) personalization in m-Learning via an adaptive approach; (3) demonstration of a Web service-based architecture to an integrated Web-based learning and m-Learning environment; (4) testing of several mobile Web browsers to proof Learning Objects (LOs) [3] portability; (5) design of a service-based framework, as part of an e-Learning SaaS Cloud, that uses hierarchical displaying multimedia units with index extraction and content summarization; (6) description of a SaaS-based e-Learning system architecture to provide a flexible integration model in which all the learning components and applications are well defined and loosely connected and (7) deployment of multimedia services and esper-
cially the presentation of multimedia content on mobile envi-
ronments, which is a more challenging task due to the diversity
of mobile devices and their parameters

The objective of this contribution is to combine semi-
structured data, stored in a Native XML Database (NXDB),
with structured data stored in a Relational Database (RDB)
through Web services (WS) called by a Learning Course Man-
agement System (LCMS). Thus, we provide direct data integra-
tion located at distributed sites in order to improve the
achievement of learning outcomes. This approach promotes a
device-independent m-Learning gateway between different
mobile units and the huge number of LOs available on a ple-
thora of LMSs. The implementation combines our Web-based
Open Semantic Editor Suite (WOSES) with a set of additional
services to allow different mobile units a direct access to LOs
customarily designed for desktop Web browsers. The key tech-
nologies behind WOSES are: extended LOM [7] base semantic
structure presented in Figure 1, device-independent LOs gen-
rator, native XML database and Web services . A semantic
content adaptation service is plugged. This tool uses templates
to automatically and efficiently adapt content for mobile Web
browsers. An alternative service is available for a speech solu-
tion, which allows learners to turn any written text into natural
speech files, when using standard voices. This approach allows
the generation and the progressive downloading of text and
audio based learning material dynamically for m-Learning and
ubiquitous access [3].

A. Model for Mobile Learning Content

To produce device-independent Web-accessible informa-
tion that can be browsed in a readable and effective way on
different devices and software platforms we use methods for:
(1) effective mobile device recognition, and (2) mobile Web
browsers functionalities identification. For an effective Mobile
Device Recognition Method (MDRM) we use the header field
in the HTTP protocol. To proof the LOs portability on mobile
browsers we conducted a series of tests. We put several mobile
browsers through a series of test pages. These represent some
of the common design types that are in use, and like most real
Web pages, not all of them are designed to work with small
screens. Each page contains a test element: styled text, tables,
scripting, DOM and Ajax, MathML, SVG, multimedia embed-
ded objects, image, sound, XML with XSLT [3]. We tested,
recently, also the interoperability of HTML5 and CSS3 in a
responsive web design context with media queries parameters
for several mobile Web browsers on different models of Tab-
lets, Smartphones and cell phones with the objective to identify
their compatibility with desktop Web browsers. Analysis of the
test results showed that a multimedia pedagogical content is
suitable for a set of mobile Web browsers (Opera Mobile, Safa-
ri, and Firefox Mobile). The main problem to address here is to
tailor the presentation on small-screen mobile devices, rather
than focusing on the complexity of pedagogical hypermedia
content. This process includes the development of a suitable
page-adaptation technique that analyzes XML course structure
from Figure 1 and generated pages into smaller, logically re-
lated units that can fit into a mobile device's browser. The page
sequence should be generated in a suitable format (XML or
HTML) accordingly to the browser's profile.

B. XML Semantic Editor Suite

For encoding textual information and content assembly, an
XML semantic editor (screenshot 2 in Figure 2) is used and a
tree structure of a generic learning document is generated,
while a validation grammar of XML Schema type is used ac-
cording to Figure 1. Depending on course specificity, (math-
matics, physics or informatics course), the author can represent
texts, diagrams, mathematical formulas, programming code or
data in tables. A MathML editor was created for mathematical
expressions, a SVG editor for vector graphics creation, a QTI
editor for student's progression evaluation, a schema for table
generation and a chart editor for data presentation (screenshot 3
in Figure 2). In this case, XML is used for encoding non-
textual information such as vector graphics, mathematical ex-
pressions, multimedia documents, complex forms. In this au-
thoring suite, binary data of multimedia content is embedded
directly into XML course content. During the editing process,
if the author inserts an image or any binary data into the edited
content, the semantic editor will encode it using the Base64
encoding method (screenshot 1 in Figure 2). This single XML
collection can be managed easily by providing proper XSLT
transformation files. The XML content can be presented in
many forms, such as HTML for desktop users or for mobile
users. All these processes are managed by appropriated Cloud-
based Web services.

In practice, the course authors may need to modify a peda-
gogical content. The correct operation of a collaborative au-
thoring system imposes the storage of learning collections,
possibly in a database, for a better reuse and diffusion of these
documents. The choice of an appropriate database is essential:
the authors have chosen a native XML database which allows
the storage of XML documents in their native format. This
choice, in opposition to that of a relational database, is ex-
plained by the nature of learning documents which are in gen-
eral of narrative types: document-centric and not data-centric.
If necessary, formatted HTML and PDF versions (screenshot 3
in Figure 2) of extracted learning content can be published in a
LCMS via Web service interface.

C. The Course Content Adaptation Process

M-Learning pedagogical content can be given in the form
of a visual presentation as text, pictures, tables in XML, HTML
format or as PDF data. Optionally, m-Learning content can be
given as sound data in the form of an acoustic presentation in
an MP3 or WAV format. To achieve this goal the Web service-
based OSES suite [3] is extended with four additional services.
The first one (XICT) is able to create a hypertext index on the
basis of the course tree structure (Figure 1). The second service
represents an XML content adaptation tool (XCAT) that uses
profiles (XML metadata files) for automatic content adaptation
displayed on the mobile browser. Profiles are adjusted in the
function of detection: (1) mobile device profile issue from
WURFL software component [18] that maps HTTP Request
headers of the HTTP client (Desktop, Mobile phone, Smart-
phone, Tablet, etc.) that issued the request (this is supported by
the fourth service), and (2) of mobile browser profile issue
from the tests [3]. The third service is developed on the base of
the Mbrola [13] speech synthesizer free library to produce
speech output from a text paragraph. The XML speech adapta-
tion tool (XSAT) converts the associated text to index item content to an audio output.

The course content adaptation process is an overall index of hyperlinks. Each link points to a node in the hierarchical structure of a created course in XML format. On a "click", the corresponding content is first adapted, then downloaded and displayed on the mobile screen. The navigation process is pro-

vided in two dimensions: top level index entries and hyperlinks to the next/previous page. If a text item is highlighted then the XCAT service is executed, otherwise the XSAT service is executed when the sound icon is highlighted for the same item. This sequence is shown in Figure 2.

<figure><img src="image_3.png" /><figcaption>Figure 2. The XML semantic editor suite and the content adaptation process</figcaption></figure>

## D. Implementation Scenario

Figure 2 presents the course content adaptation process for mobile Web browser as follows: Screenshot 1 shows the course tree structure developed in accordance with the schema definition presented in Figure 1. All elements of the tree are labeled

at their creation time to become easily identifiable (screenshots 2) and locatable along the depth of the tree. This defines, subsequently, their hierarchical position in the generated index. Screenshots number 3 presents the Java XML semantic editor defining any pedagogical component edited by the author along with MathML and SVG plugins. An additional and optional
view of the course content in native XML format is also avail-
able. Screenshot 4 shows the results of summarization in the
form of indexes corresponding to each node of the hierarchical
structure of the course. This page is initially sent to the mobile
Web browser. Screenshot 5 shows a possible learner interac-
tion by choosing items from index and receiving corresponding
adapted content, while screenshot 6 shows an audio file played
by the client-side player. If the audio icon is selected from
screenshot 4 instead of text-link the associated text content is
processed in audio output. If a binary content is chosen a stan-
dard audio message is send. This process is managed by Web
service applications interaction via an implemented UDDI re-
gistry.

E. System Deployment

In the system deployment stage, our WOSES Cloud-based
service is integrated with a Web-based LCMS. The intercon-
nection is carried out by a Web Services Management System
(WSMS). So, the learning-centric data and the management-
centric data are clearly separated. LOs are developed in WOS-
ES section of the eLearning Service as a Service-based Xesop
system and thereafter are stored in a NXDB. The information
relevant to learner personal data, learner profiles, course maps,
LOS sequencing, data presentation and general user data is
stored in the RDB of LCMS. The publication process of learn-
ing content is carried out by WSMS as method for external
applications integration through Web services. This allows
extending and integration existing LCMS systems as a Cloud-
based service. In the discussed case, content adaptation Web
service-based modules make the bridge from e-Learning to m-
Learning system in a simple and effective way through Apache
Libcloud [14], an open source library that provides a system-
neutral interface to Cloud provider APIs. The Java version
supports Amazon EC2.

For proof-of-concept our system is deployed on AmeTice
(Moodle-based) e-Learning system adopted by our university.
We integrated the PHP-based LCMS interface via Web servic-
es. This offers a high degree of flexibility and ease of use, in
particular as SOAP libraries for PHP already exist, which leads
to an easily extensible PHP and MySQL-based LCMS. For
services deployment we used Apache Axis [12]. For storing
and managing LOs, we used eXist, a Java-based open source
native XML database [17]. It is running in the Apache Tomcat
Servlet engine as Web application and can also be invoked via:
XML-RPC, REST-style Web services API, or SOAP. To inte-
grate with other e-Learning and/or m-Learning systems we
implemented a jUDDI registry.

IV. CONCLUSION

Nowadays, social media for education uses Web-based
technologies to turn learning into interactive dialogue. Much
like Web-based social networking, mobile social networking
occurs in virtual communities through a mobile phone. The
main challenge of mobile networking is the context-aware con-
tent adaptation. As a result: (1) many mobile applications are
based on Cloud services such as location service and messag-
ing service, (2) turning a speech-production service into a
product may consist in writing a script to invoke the proper

SOAP methods that will enable to send text and generate
speech files on the Speech Cloud (SaaS) server.

On the other hand, as suggested in this paper for the next
generation of LCMS we can consider scenarios where it will be
possible among different systems to exchange not only data but
also applications. The solution we propose shows clearly how
to combine existing individual systems into a virtual one,
available as a SaaS unit. Especially concerning LCMS, Cloud-
based solutions for Moodle are being proposed and we tested in
leveraging Amazon Web Services (AWS). Initial feedbacks
from students that have tested the eLearning Service as a Ser-
vice-based Xesop system are very satisfactory. The proposed
solution optimizes page visualization from Moodle system
which course browsing usually involves a lot of horizontal and
vertical scrolling, which makes web browsing painful.

REFERENCES

[1] A. Fernandez, D. Peralta, F. Herrera, and J.M. Benitez, An Overview of E-Learning in Cloud Computing, L. Uden et al. (Eds.): Workshop on LTEC 2012, AISC 173, pp. 35–46, Springer, 2012.

[2] Timo Laakko, Context-Aware Web Content Adaptation for Mobile User Agents, In: Studies in CI, LNCS V. 130, pp. 69-99, 2008.

[3] Ivan Madjarov and Omar Boucelma, Multimodality and Context-adaptation for Mobile Learning, White, Bebo; King, Irwin; Tsang, Philip (Eds.), Social Media Tools and Platforms in Learning Environments, pp. 257-276, 1st Edition, 2011.

[4] Creeger M., CTO Roundtable: Cloud Computing Communications of the ACM, vol. 52, no. 8, august 2009, pp. 50-56, 2009.

[5] Dong, B., Zheng, Q., Yang, J., Li, H., Qiao, M.: An E-learning Ecosystem Based on Cloud Computing Infrastructure. In: 9th IEEE International Conference on Advanced Learning Technologies, pp. 125–127. IEEE Press, Latvia, 2009.

[6] Po-Huei Liang and Jiann-Min Yang, Virtual Personalized Learning Environment (VPLE) on the Cloud, Z. Gong et al. (Eds.): WISM 2011, Part II, LNCS 6988, pp. 403–411, Springer, 2011.

[7] IEEE LOM, Draft Standard for Learning Object Metadata, IEEE 1484.12.1-2002.

[8] Frank Doelitzscher, Anthony Sulistio, Christoph Reich, Hendrik Kuijs, David Wolf, Private cloud for collaboration and e-Learning services: from IaaS to SaaS, In: Computing 91: 23–42, Springer, 2011.

[9] Dong B. Zheng Q. Qiao M. Shu J. Yang J. BlueSky Cloud framework: an e-learning framework embracing cloud computing. In: The 1st international conference on cloud computing, Beijing, China, 2009.

[10] Basal A. M., A. L. Steenkamp, A Saas-Based Approach in an E-Learning System, International Journal of Information Science and Management, pp. 27-40, Special Issue January-June, 2010.

[11] Sá, M., Carriço, L., Supporting End-User Development of Personalized Mobile Learning Tools, J.A. Jacko (Ed.): Human-Computer Interaction, Part IV, HCII 2009, LNCS 5613, pp. 217–225, Springer, 2009.

[12] Apache Axis2, http://axis.apache.org/axis2/java/core/.

[13] Mbrola, N.N., http://tcts.fpms.ac.be/synthesis/mbrola.html.

[14] Google App Engine, http://code.google.com/appengine/.

[15] Apache Libcloud, http://projects.apache.org/projects/libcloud.html

[16] Robert Schmohl, Uwe Baumgarten, Lars Köthner, Content Adaptation for Heterogeneous Mobile Devices using web-based Mobile Services, In proceeding of MoMM, The Fifth International Conference on Advances in Mobile Computing and Multimedia, Jakarta, Indonesia, 2007.

[17] eXistDB, http://exist-db.org/exist/apps/homepage/index.html.

[18] WURFL, http://wurfl.sourceforge.net/.

[19] Ako-Nai F. and Qing Tan, Location-Based Learning Management System for Adaptive Mobile Learning, International Journal of Information and Education Technology, Vol. 3, No. 5, October 2013.