Routing services are probably the most important application for street data – apart from visualizing them on a map. While there are a range of desktop (or even mobile) applications that can provide such functionalities also in combination with OSM data, we focus here on an approach based on the concept of interoperable Service Oriented Architectures (SOA). These are regarded as an important concept for forthcoming software architectures in general, and more and more being applied also in the GI (geographic information) sector. While SOA offer many benefits they are not the solution to all problems.
A remaining issue is the question of interoperability between different web services from different vendors offering the same or similar services but with different technical programming interfaces. This is the reason why standards are becoming more and more important for a range of applications – in particular in the institutional and governmental sector, but also beyond. Within the geographical information community here the Open Geospatial Consortium (OGC) has developed a range of standards for different GI related functionalities. This is why we choose to develop and set up a routing service that uses OSM data and provides those through the standardized interface specified by the OGC within the Open Location Services initiative (OpenLS or OLS) as one of 5 services:
- The Route Service [RS] determines travel routes and navigation information according to diverse criteria.
- The Directory Service [DS] is a service that provides access to an online directory (e.g., Yellow Pages) to find the location of a specific or nearest place, product or service.
- The Location Utility Service [LUS] provides a Geocoder/Reverse Geocoder; the Geocoder transforms a description of a location, such as a place name, street address or postal code, into a normalized description of the location with a Point geometry usually placed using Cartesian coordinates, often latitude and longitude.
- The Accessibility Analysis Service [AAS] provides a maximum reachability service from any given point or route for a set time duration.
The Route Service offers a broad range of possibilities, among them several parameters that determine the result, e.g.:
- RouteSummary — gives meta information about the requested route, e.g.: overall distance, units, overall needed time…
- RouteGeometry — requests the routes geometry (line string containing all waypoints of the route). It is possible to define a maximum number of waypoints.
- RouteInstruction — these are “step by step” driving instructions of the calculated route. We realized this for various languages (e.g. German, English, Italian, …).
Your language is missing? Please add your language to ORS via github here
- RouteMaps — The calculated route is displayed on a route map. Amongst other possibilities an overview map as well as detailed maps of the start- and destination can be requested.
Currently openrouteservice.org offers a end-user oriented website with an interactive map , but soon we will also make the route service available as OGC-web service, that can be used through http-based xml-requestes as specified in the OGC OpenLS Route Service specification. This will allow developers to use this servide in an open and interoperable way easily within their own applications.
|Description: Through the OpenLS interface requests can be generated to the appropriate services without further query limitations. The offered API’s are only valid for one year.In case you plan a long-term use of the interfaces within your projects , please contact us via Email|
Routing Services [RS]*
|Restful Webservice route request:||http://openls.geog.uni-heidelberg.de/testing2015/routing|
|testclient with meta information and schema file for routing service:||http://openls.geog.uni-heidelberg.de/testing2015/routing&help|
|direct route request via URL + parameter:||http://openls.geog.uni-heidelberg.de/testing2015/route|
|graph routing profile update information:||http://openls.geog.uni-heidelberg.de/testing2015/routing?info|
|*currently the maximum request limitation is 1000/hour and user. We kindly ask you to not use the service excessively. In case the server performance will be affected we reserve us the right to block individual service user.|
Geocoding Service [LUS]
|Restful Webservice geocode request:||http://openls.geog.uni-heidelberg.de/testing2015/geocoding|
|testclient with meta information and schema file for geocoding service:||http://openls.geog.uni-heidelberg.de/testing2015/geocoding&help|
|direct geocoding route request via URL + parameter:||http://openls.geog.uni-heidelberg.de/testing2015/geocode|
Directory (POI Search) Service [DS]
|Restful Webservice directory request:||http://openls.geog.uni-heidelberg.de/testing2015/directory|
|testclient with meta information and schema file for directory service:||http://openls.geog.uni-heidelberg.de/testing2015/directory&help|
|direct directory request via URL + parameter:||http://openls.geog.uni-heidelberg.de/testing2015/direct|
OpenLS Acessbility Analysis service [AAS]*
|Restful Webservice accessbility analysis request:||http://openls.geog.uni-heidelberg.de/testing2015/analysis|
|testclient with meta information and schema file for analysis service:||http://openls.geog.uni-heidelberg.de/testing2015/analysis&help|
|direct accesbility analysis request via URL + parameter:||http://openls.geog.uni-heidelberg.de/testing2015/analyse|
|*for performance reasons only 30 minutes are currently supported|
OpenGIS Location Services (OpenLS or OLS)
For further information see specification of OpenLS v1.1.
More information on OpenRouteService.org