Location-Based Mashups for Nokia Internet Tablets

Location-Based Mashups for Nokia Internet Tablets

Institute of Parallel and Distributed Systems Universität Stuttgart Universitätsstraße 38 D–70569 Stuttgart Diplomarbeit Nr. 2579 Location-based Mashups for Nokia Internet Tablets Andreas Brodt Course of Study: Software Engineering Examiner: Prof. Dr.-Ing. habil. Bernhard Mitschang Supervisor: Dr. rer. nat. Daniela Nicklas Commenced: February 5, 2007 Completed: August 7, 2007 CR-Classification: H.2.5, H.5.1, H.5.4 Abstract Location-based services have gained large impact in the last years. Also, meanwhile small and powerful end-user devices are present and available. At the same time, so-called mashup pages are spreading on the web. Mashups integrate content from existing sources into a new presentation. With the appearance of web-based map APIs, such as Google Maps, it has become easy to create mapping mashups, which present geographically annotated data on a map. Giving such a mapping mashup the possibility to utilize the user’s position would make the mashup location-aware and provide additional user value. This thesis explores how the user’s position can be integrated into a mashup. Different approaches to achieve this are examined. An architecture for a system enabling location-based mashups is developed. The architecture integrates the user’s position into mashups by extending the web browser. The Delivery Context Interfaces (DCI) are used as standardized interface for providing mashups with the user’s position. Mashups are created on the user’s device by a JavaScript client. Adaptation to the various data formats of the data sources is done by wrappers on the server side which convert the data into a uniform format. The architecture is implemented on a Nokia N800 Internet Tablet. An external Bluetooth GPS device is used for locating the user. Finally, an approach to integrate privacy aspects to the platform is presented. 3 4 Zusammenfassung Ortsbezogene Dienste haben in den letzten Jahren stark an Bedeutung gewonnen. Außerdem sind kleine und leistungsfähige Endgeräte verfügbar geworden. Gleichzeitig verbeiten sich sogenannte Mashups im Web. Mashups kombinieren Inhalte verschiedener Quellen zu einer neuen Darstellung. Mit der Verfügbarkeit webbasierter Kartensysteme wie Google Maps ist es mit geringem Aufwand möglich, Kartenmashups zu bauen, die Daten, die mit geographischen Informationen versehen sind, auf einer Karte anzeigen. Würde man es solchen Kartenmashups ermöglichen, auf die Position des Benutzers zuzugreifen, würden die Mashups ortsbasiert, was den Nutzen der Mashups deutlich steigern würde. Die vorliegende Diplomarbeit untersucht, wie die Position des Benutzers in Mashups integriert werden kann. Hierzu werden verschiedene Ansätze untersucht. Es wird eine Architektur für ein System entwickelt, das ortsbasierte Mashups ermöglicht. Die Architektur integriert die Position des Bentzers in Mashups mit Hilfe einer Browsererweiterung. Die Delivery Context Interfaces (DCI) werden als standardisierte Schnittstelle benutzt, um die Position für Mashups verfügbar zu machen. Mashups werden auf dem Gerät des Benutzers in JavaScript erzeugt. Die unterschiedlichen Datenformate der Datenanbieder werden aber serverseitig von sog. Wrappern in ein einheitliches Format konvertiert. Die Architektur wird auf einem Nokia N800 Internet Tablet umgesetzt, dabei wird ein externes Bluetooth- GPS-Gerät benutzt, um den Benutzer zu lokalisieren. Schließlich wird ein Ansatz vorgestellt, wie die Privatsphäre des Benutzers geschützt werden kann. 5 6 CONTENTS 1 Introduction 9 1.1 Background .............................................. 9 1.2 Structure of this document ...................................... 11 1.3 Acknowledgements .......................................... 11 2 Related Work 13 2.1 Location-based mobile applications ................................. 13 2.2 Mashups ................................................ 21 2.3 Generic mashup platforms ...................................... 25 3 Transferring the Position 31 3.1 Requirements ............................................. 31 3.2 Position data provider ......................................... 32 3.3 Local mashup ............................................. 34 3.4 Web browser extension ........................................ 34 3.5 Comparison .............................................. 38 4 Delivery Context Interfaces (DCI) 41 4.1 Introduction .............................................. 41 4.2 Description .............................................. 41 4.3 Evaluation ............................................... 42 4.4 An architecture using DCI ...................................... 43 4.5 Delivery Context Client Interfaces (DCCI) .............................. 44 5 A System for location-based mashups 45 5.1 Requirements ............................................. 45 5.2 Architecture .............................................. 46 5.3 Data format .............................................. 51 6 Implementation 57 6.1 Technologies ............................................. 57 6.2 Implementing the TELAR mashup platform ............................. 62 6.3 Performance .............................................. 66 6.4 Implementation results ........................................ 69 7 Privacy 71 7.1 Geopriv privacy model ........................................ 71 7.2 Applying the Geopriv privacy model ................................. 72 8 Conclusion 75 A Sample HTML Pages 77 A.1 An HTML page using the DCI API .................................. 77 A.2 An HTML page using the TELAR Mashup Platform ......................... 79 7 CONTENTS 8 CHAPTER 1 INTRODUCTION The most exciting phrase to hear in science, the one that heralds new discoveries, is not ‘Eureka!’ (I found it!) but ‘That’s funny...’ Isaac Asimov (1920 - 1992) Location-based services have gained large impact in the last years. Also, meanwhile small and powerful end-user devices are present and available. At the same time, so-called mashup pages are spreading on the web. Mashups integrate content from existing sources into a new presentation. With the appearance of web-based map APIs, such as Google Maps, it has become easy to create mapping mashups, which present geographically annotated data on a map. Giving such a mapping mashup the possibility to utilize the user’s position would make the mashup location-aware and provide additional user value. This thesis explores how the user’s position can be facilitated for use in mashups. In addition, a system is developed, which enables location-based mashups on a Nokia Internet Tablet. As web-browsers use sandbox- techniques to achieve a strict separation between local data and server-based data, possible ways of integrating the current position (being totally local data) into server-based data are examined and evaluated. An architecture is developed which integrates data from various data providers into a mapping mashup and obtains the user’s position from a GPS device. The architecture is implemented on a Nokia N800 Internet Tablet using an external Bluetooth GPS device. This work is carried out in cooperation with Nokia Multimedia, Oulu, Finland. 1.1 Background 1.1.1 Mashups Mashups (also referred to as Web application hybrid) are one of many recent trends in Web technology being fuzzily summarized under the term “Web 2.0”. A mashup is a website or application that combines content from more than one source into an integrated experience [Wik05]. Most notably, a mashup web site draws upon content and functionality retrieved from data sources that lie outside of its organizational boundaries [Mer06]. What makes mashups particularly interesting is their ability to combine existing sources of information to new services which have the potential to be richer and more useful than the sum of their parts. The reason for the increasing number of mashups on the WWW is the fact that it has become easy to obtain raw content data from the web. Many websites have exposed some of their raw content data through an API making it considerably easier to extract and re-use the information compared to parsing the HTML-encoded presentation of the website. Moreover, it is not necessary to provide any own data at all. With a small amount of server-sided scripting, e. g., in a language like PHP, and/or some JavaScript code, a number of data sources can be “mashed” together providing a potentially powerful new service. A big push to the mashup trend was given by Google’s introduction of its Google Maps API, soon followed by similar products from Microsoft, Yahoo and AOL. These free map services make it possible to create and annotate a map with arbitrary items, as long as these items have some kind of location information. An often cited example of these mapping mashups, as categorized in [Mer06], is Chicago Crime, shown in figure 1.1.1. Chicago Crime shows crime reports from the Chicago Police Department on a Google Map, making it to some extent possible to estimate, how safe a certain area of Chicago is. Thus, new value is created by combining two existing services, neither of which were designed to provide. 9 CHAPTER 1. INTRODUCTION Figure 1.1: Crime reports shown on a Google Map by www.chicagocrime.org (screenshot) 1.1.2 The Nokia Internet Tablet family Heading for a new generation of computers following an “always on” and “always online” philosophy, Nokia has created its Internet Tablet family. The Nokia 770 and its successor, the Nokia N800 (see figure 1.2), are handheld devices small enough to be taken along all day. However, they offer a relatively big screen

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    92 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us