At the heart of the ALISS project is the Engine.
In a nutshell, the Engine manages an online index of links. It’s the one place that information about self management resources can be brought together. Likewise, it’s the one place that those using this kind of data can find accurate and comprehensive information about health and wellbeing information.
At the moment these links live inside separate databases around Scotland. To find them we have to know where they are held in order to search for them. Once the Engine holds links to them, they’ll be in a single, open, searchable national collection of data. In addition to this:
- the links can be returned in searches from any website
- we’ll make important connections between them and other useful information
- we’ll be exploring new ways to allow all of us to contribute to this national collection.
All in all, the Engine will make self management information more findable.
Why is this different to what exists now?
If we tried to build another database that claimed to contain information about all self management resources around Scotland, we would never get there! The Engine builds on the great work that is already going on, simply routing people who are looking for information to those who have got it, using the links that they have already created. Where resources aren’t indexed on the web, we’ll provide ways for people to add them to the Engine which will make them more visible, more findable.
Where will the ‘data’ come from?
The Engine will draw data from a range of sources.
1. From current aggregators – by working with those currently bringing together related information, importing data straight into the Engine. This will make their data more widely available.
2. From smaller/less visible sources that might be missed by the main aggregators. These might be via individual submissions via a contribution portal or by adding a layer of semantics where this does not exist in the sources. A role for ALISS will be to support source authors in improving the semantic markup of their content. An early prototype demonstrated the benefits of adding location data and keywords derived by content analysis.
3. Through new services and applications in the future. This is the really exciting bit – we see ALISS as a set of services, providing infrastructure to make self-management support more accessible to existing web services, but in the long term, providing a large, varied and open resource for innovation. Once the infrastruture is in place we think there’s opportunity for new applications to built on top to contribute to and draw from the Engine via its API. The range of possible client applications cannot be predicted, and the point of the ALISS architecture is to encourage new uses and users by allowing for unforeseen development.
What kind of resources will it index?
The model is agnostic about the resources it indexes – currently anything with a unique URL as only web-based resources were collected in the prototype. As a potential national information system, ALISS could provide standard URIs for existing web-based resources or for resources that have no web presence. An innovation workshop generated ideas that would require indexing people, images, places, tweets, blog posts, experiences etc.
The working data model included a URL for the resource being collected along with simple metadata which included a text summary describing the content, and latitude, longitude and a Where on Earth ID (WOEID) which allowed us to describe services that are area rather than point based.
Here’s the science bit – how are we going to build it?
For the working model, we used an implementation of the MongoDB database, a scalable, high-performance, open source, document-oriented database. At the time of implementation MongoDB had just added geolocation features, and this, along with the flexibility of the document-oriented approach, made it ideal for prototyping the engine design in a way that could result in a usable system for piloting in the next phase. We used the Django open source, python-based, web framework to make a shell for managing the database and creating demonstrations of data collection and retrieval. Finally, we prototyped an Application Programming Interface (API) for the Engine to allow retrieval of resources using keyword and location searches, or by ALISS resource URI.
Source code and some early documentation were published on GitHub
The ALISS Engine as part of a linked data ecosystem
ALISS can play three roles:
- Using resources with stable URIs from other national systems
- Providing a stable ALISS URI to resources that may be hard to find online, or are liable to have ephemeral URLs of their own.
- Linking resources in useful ways, for example linking a local exercise class with user experience of the class on an online forum.