The progressive spreading of wireless networks and increasingly powerful mobile computers creates a big potential for a wide spectrum of innovative applications. Context-aware applications adapt the circumstances of the user's current situation which enables new and intelligent user interfaces. Nevertheless, the sheer diversity of exploitable contexts and the plethora of sensing technologies are actually working against the deployment of context-aware systems. A framework for context retrieval should enable the development of context-aware applications without considering details of context acquisition and context management. Moreover, exchange and reusability of context information should be allowed between applications and users.
The Mobile Context Framework tries to solve the described issues. It consists of three components:
- The Mobile Context Server (this project)
- The Mobile Context iPhone Library
- The Mobile Context iPhone Demo App
The Mobile Context Server consists of a Sinatra Web application and a sample-ontology containing the context information. Here is how to set everything up:
The hosting of the context model requires a running instance of the OpenRDF Sesame semantic triple store containing the ontology.
- Download the OpenRDF Sesame Web application here.
- Set it up following the instructions.
- Navigate to the workbench (i.e. http://yourhostname/openrdf-workbench/) and add a new repository for storing the contexts.
- Add the sample ontology file to the created repository.
The Sinatra Web application needs to be hosted by a hosting service providing Sinatra support. Heroku for example offers free Sinatra hosting for small Web apps.
- Download or checkout the source files of this project.
- Enter the proper URL of your triple store server and repository name in the file
lib/sesameAdapter.rb
. - Set up the Web application by following the provider's instructions (for Heroku, see here).
The Mobile Context Server should now be ready. See step 3 for customization.
To add or modify context information, you can simply edit the ontology hosted by the triple store. I recommended the Protégé Ontology Editor for editing the OWL file. Examples for adding contexts are shown in this YouTube video.
Copyright (c) 2010 Felix Mueller, released under the MIT license