The Semantic Web is technological concept whereby data is shared over the Web in a standardised format that machines can understand. By exposing our sensor data as linked data on the Semantic Web, we make it available in a standard way, allowing developers to combine it with other Linked Data on a Web-wide scale.
Mashups are about making it quick, easy and cheap to create simple Web applications for a particular use. Instead of using a single large and complicated application to do everything, mashups aim to enable dynamic and fast creation of applications for specific tasks.
We are providing high-level application programming interfaces (APIs) for semantic sensor grids to enable rapid development of thin applications (web applications and mashups).
Our High-level API combines REST and Linked Data principles to serve representations in RDF (using the W3C SSN XG sensor network ontology), OGC Observations & Measurements GML (XML), HTML, and backwards compatibility for OGC WFS GML (XML). The novel design of the API enables a web developer to easily move between the linked data representation, which brings the benefits of linking to and within the Semantic Web, and OGC representations, which are used by a significant installed base of GIS applications.
The HLAPI system has been designed to expose the general HLAPI design for generic data sources. To achieve this, and to achieve tractable configurability, incoming data is transformed into a known observation model. When data arrives in the system – either through a database insert, or through the SemsorGrid4Env architecture – the corresponding event trigger is activated, and determines what to do with the data. If the data represents an observation that we wish to serialise, the event trigger sends the data to the Processor to be turned into an RDF representation of an observation. If the data does not represent an observation, it is ignored. The generated RDF observation forms the canonical representation of the observation, as it is the most flexible and fully featured representation. All other serialised outputs are lower-information representations, and are therefore derived from the RDF.
The outputs to be serialised are determined using the API configuration file. This file defines the observation collections that the current observation should appear in, the formats in which to serialise them, and what the corresponding URIs should be. This configuration file is kept separate from the ontology mapping file, in order to separate the administrative concerns of different users; a domain expert is able to configure the mapping of the data source into the observation model, while the system administrator is able to handle to configuration of the exposed APIs.