## 5 Experimental Implementation  
The USN-Platform can be implemented in different ways depending on the needs, particularities of the infrastructure, scalability requirements and so forth. Both the USN-Enabler and the USN-Gateways are logical elements and, consequently, they can be deployed in different physical embodiments.  
For the purpose of testing the extended semantic capabilities of the USN-Platform, a functional experimental prototype was implemented, mainly geared towards the design of new In-Vehicle Information Systems (IVIS) under the publicly-funded Spanish research project Mobility for Advanced Transport Networks (MARTA, www.cenitmarta.org), in which several context-aware applications were implemented for connected-car scenarios. In our experimental setup the support for the in-car smart device was provided by an On-Board Unit (OBU), implementing an OSGi (www.osgi.org) framework, on which drivers can use different context-aware smart applications accessing both local sensors (car sensors) and remote sensors (the Sensor Web). The OBU also integrated several communication technologies to support V2V, V2I as well as NGNs communications [23]. These connected car capabilities enabled the exchange of information with the Sensor Web (consuming and publishing sensor information) through the USN-Platform.  
As shown in Figure 6, RDF observations (O&M-OWL model) were generated by smart device applications (_i.e._, electric vehicles) using a semantic annotation OSGi bundle, which corresponds to the _observation annotation function_ described in Section 3. A \"Semantic Sensor Web\" publication bundle, also implemented in the smart device and corresponding to the _observation publication function_ in Section 3, was then used to publish the RDF annotated observations through the IP connectivity that the USN-Gateways provide.  
As discussed in Section 4, the USN-Enabler was extended to provide both storage for smart device RDF observations as well as linkage to external Semantic Web resources (see Figure 6). To achieve the first objective, the Observation Storage entity in the USN-Enabler was extended implementing the Sesame (www.openrdf.org) SPARQL Endpoint (HTTP Server and workbench Version 2.0). The HTTP server consists of a number of Java Servlets that implement a protocol to access Sesame SPARQL repositories over HTTP, while the workbench provides a web interface (Java API) for querying, updating and exploring the repositories of a Sesame Server. Thus, by implementing Sesame in the USN-Enabler, observations stored as RDF triples in said USN-Enabler can be accessed by sending SPARQL queries, and RDF resources can then be identified by means of URIs. However, these URIs used in the SPARQL repositories are not dereferenceable, meaning that, for example, they cannot be accessed from a Semantic Web browser nor, therefore, by a growing variety of Linked Data applications and clients (e.g., it is not possible to link the observation _location_ to dbpedia). To tackle this limitation, and to fulfill the second objective of providing linkage to an external Semantic Web, Pubby, a Linked Data frontend for SPARQL Endpoints [35], was also implemented for the USN-Enabler. Pubby is also a web application (only requiring a servlet container such as Apache Tomcat) that provides a Linked Data interface to the RDF observations repository, mapping URIs retrieved by SPARQL endpoints to dereferenceable URIs.  
Also tying into the discussion in Sections 3.2 and 4.2, a desirable feature of our USN-Enabler is to support inference on smart device observations. Sesame provides custom rule-based reasoning support and OWL inferencing by using an external inference engine, such as OWLIM (www.ontotext.com/owlim). However, for our evaluations in Section 6 only its standard RDF Schema reasoning was tested.