Index: /tools/routingservice/trunk/src/jp/co/orkney/restlet/geo/ShortestPath.java
===================================================================
--- /tools/routingservice/trunk/src/jp/co/orkney/restlet/geo/ShortestPath.java (revision 199)
+++ /tools/routingservice/trunk/src/jp/co/orkney/restlet/geo/ShortestPath.java (revision 252)
@@ -165,4 +165,5 @@
 	{
 
+	    this.log.write("Distance limit is "+configuration.getService().getLimit().getDistance(), 2);
 	    // Makes the SQL query
 	    query.setAttribute("sonStartX", startPoint.getX());
Index: /tools/routingservice/trunk/src/jp/co/orkney/restlet/util/Configuration.java
===================================================================
--- /tools/routingservice/trunk/src/jp/co/orkney/restlet/util/Configuration.java (revision 172)
+++ /tools/routingservice/trunk/src/jp/co/orkney/restlet/util/Configuration.java (revision 252)
@@ -217,5 +217,5 @@
 		}
 
-		service.setLimit(limit);
+		//service.setLimit(limit);
 
 		List<Element> listSQL = currentService.getChild("sql")
Index: /tools/routingservice/trunk/configuration.xml
===================================================================
--- /tools/routingservice/trunk/configuration.xml (revision 199)
+++ /tools/routingservice/trunk/configuration.xml (revision 252)
@@ -2,518 +2,30 @@
 <restlet>
 	<port>8182</port>
-	<log mode="2">./log/access.log</log>
+	<log mode="3">./log/access.log</log>
 	<localhost>http://localhost</localhost>
 	<css>http://localhost/demo/css/style.css</css>
 	
 	<providers>
-		
-		<!--GEOBASE-->
-		<provider name="geobase" title="Geobase">
-			<description>no description</description>
+		<!--HCC-->
+		<provider name="hcc" title="hcc">
+			<description>Orkney ã«ãŒãæ€çŽ¢çšéè·¯ããŒã¿ äœ¿çšèš±è«Ÿå¥çŽæž</description>
 			<services>
 				<service name="closest_edge" title="Closest Edge" enable="true">
-					<description>no description</description>
+					<description>Returns the closest node link to an arbitrary point</description>
 					<connection driver="org.postgresql.Driver">
-						<url>jdbc:postgresql://192.168.20.177:5432/geobase</url>
-						<user>postgres</user>
-						<password></password>
-					</connection>
-					<projection srid="900913"></projection>
-					<sql>
-						<query transformProjectionIn="false" transformProjectionOut="false">SELECT gid, source, target, AsText(the_geom) AS wkt, distance(the_geom, GeometryFromText('POINT($sonPx$ $sonPy$)',$sridProvider$)) AS dist FROM nrn_bc WHERE the_geom &amp;&amp; setsrid('BOX3D($sonPxM$ $sonPyM$,$sonPxP$ $sonPyP$)'::box3d, $sridProvider$) ORDER BY dist LIMIT 1</query>					
-						<query transformProjectionIn="false" transformProjectionOut="true">SELECT gid, source, target, AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt, distance(the_geom, GeometryFromText('POINT($sonPx$ $sonPy$)',$sridProvider$)) AS dist FROM nrn_bc WHERE the_geom &amp;&amp; setsrid('BOX3D($sonPxM$ $sonPyM$,$sonPxP$ $sonPyP$)'::box3d, $sridProvider$) ORDER BY dist LIMIT 1</query>
-						<query transformProjectionIn="true" transformProjectionOut="false">SELECT gid, source, target, AsText(the_geom) AS wkt, distance(the_geom, transform(GeometryFromText('POINT($sonPx$ $sonPy$)',$sridIn$),$sridProvider$)) AS dist FROM nrn_bc WHERE the_geom &amp;&amp; transform(setsrid('BOX3D($sonPxM$ $sonPyM$,$sonPxP$ $sonPyP$)'::box3d, $sridIn$), $sridProvider$) ORDER BY dist LIMIT 1</query>
-						<query transformProjectionIn="true" transformProjectionOut="true">SELECT gid, source, target, AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt, distance(the_geom, transform(GeometryFromText('POINT($sonPx$ $sonPy$)',$sridIn$),$sridProvider$)) AS dist FROM nrn_bc WHERE the_geom &amp;&amp; transform(setsrid('BOX3D($sonPxM$ $sonPyM$,$sonPxP$ $sonPyP$)'::box3d, $sridIn$), $sridProvider$) ORDER BY dist LIMIT 1</query>
-					</sql>
-					<parameters>
-						<parameter name="point" type="text" codename="data" required="true" />
-						<parameter name="sridInput" type="integer" codename="sridIn" required="false" />
-						<parameter name="sridOutput" type="integer" codename="sridOut" required="false" />
-						<parameter name="bbox" type="integer" codename="bbox" required="false" default="3000" />
-						<parameter name="request_id" type="text" codename="request_id" required="false" />
-					</parameters>
-					<formats>
-						<format name="gml" input="true" output="true" />
-						<format name="xml" input="false" output="true" />
-						<format name="html" input="false" output="true" />
-						<format name="geojson" input="true" output="true" />
-						<format name="id" input="false" output="true" />
-						<format name="lonlat" input="true" output="false" />
-						<format name="wkt" input="true" output="true" />
-						<format name="kml" input="true" output="true" srid="4326" />
-					</formats>
-				</service>
-							
-				<service name="shortest_path" title="Shortest Path" enable="true">
-					<description>blabla</description>
-					<connection driver="org.postgresql.Driver">
-						<url>jdbc:postgresql://192.168.20.177:5432/geobase</url>
-						<user>postgres</user>
-						<password></password>
-					</connection>
-					<projection srid="900913" units="meter" />
-					<limit distance="5000.0" />
-					<sql>
-						<query transformProjectionIn="false" transformProjectionOut="false">SELECT gid, AsText(the_geom) AS wkt FROM shootingstar_sp_smart('nrn_bc', $sonStartX$, $sonStartY$, $sonEndX$, $sonEndY$, $saBoxSize$,'length',true,true)</query>
-						<query transformProjectionIn="false" transformProjectionOut="true">SELECT gid, AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt FROM shootingstar_sp_smart('nrn_bc', $sonStartX$, $sonStartY$, $sonEndX$, $sonEndY$, $saBoxSize$,'length',true,true)</query>
-						<query transformProjectionIn="true" transformProjectionOut="false">SELECT gid, AsText(the_geom) AS wkt FROM shootingstar_sp_smart('nrn_bc', X(transform(GeometryFromText('POINT($sonStartX$ $sonStartY$)',$sridIn$),$sridProvider$)), Y(transform(GeometryFromText('POINT($sonStartX$ $sonStartY$)',$sridIn$),$sridProvider$)), X(transform(GeometryFromText('POINT($sonEndX$ $sonEndY$)',$sridIn$),$sridProvider$)), Y(transform(GeometryFromText('POINT($sonEndX$ $sonEndY$)',$sridIn$),$sridProvider$)), $saBoxSize$,'length',true,true)</query>
-						<query transformProjectionIn="true" transformProjectionOut="true">SELECT gid, AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt FROM shootingstar_sp_smart('nrn_bc', X(transform(GeometryFromText('POINT($sonStartX$ $sonStartY$)',$sridIn$),$sridProvider$)), Y(transform(GeometryFromText('POINT($sonStartX$ $sonStartY$)',$sridIn$),$sridProvider$)), X(transform(GeometryFromText('POINT($sonEndX$ $sonEndY$)',$sridIn$),$sridProvider$)), Y(transform(GeometryFromText('POINT($sonEndX$ $sonEndY$)',$sridIn$),$sridProvider$)), $saBoxSize$,'length',true,true)</query>
-					</sql>
-					<parameters>
-						<parameter name="point_start" type="text" codename="start" required="true" />
-						<parameter name="point_end" type="text" codename="end" required="true" />
-						<parameter name="sridInput" type="integer" codename="sridIn" required="false" />
-						<parameter name="sridOutput" type="integer" codename="sridOut" required="false" />
-						<parameter name="bbox" type="integer" codename="bbox" required="false" default="3000" />
-						<parameter name="request_id" type="text" codename="request_id" required="false" />
-					</parameters>
-					<formats>
-						<format name="gml" input="true" output="true" template="multilinestring_gml" />
-						<format name="xml" input="false" output="true"  template="multilinestring_xml" />
-						<format name="html" input="false" output="true" template="multilinestring_html" />
-						<format name="geojson" input="true" output="true" template="multilinestring_geojson" />
-						<format name="lonlat" input="true" output="false" />
-						<format name="wkt" input="true" output="true" template="multilinestring_wkt" />
-						<format name="kml" input="true" output="true" srid="4326" template="multilinestring_kml" />
-					</formats>
-				</service>
-				
-				<service name="driving_distance" title="Driving Distance" enable="true">
-					<description>blabla</description>
-					<connection driver="org.postgresql.Driver">
-						<url>jdbc:postgresql://192.168.20.177:5432/geobase</url>
-						<user>postgres</user>
-						<password></password>
-					</connection>
-					<projection srid="900913"></projection>
-					<sql>
-						<query transformProjectionIn="false" transformProjectionOut="false">SELECT AsText(the_geom) AS wkt FROM points_as_polygon('SELECT a.vertex_id::integer AS id, b.x1::double precision AS x, b.y1::double precision AS y FROM driving_distance(''''SELECT gid AS id,source::integer,target::integer,length::double precision AS cost FROM nrn_bc'''',(select id from find_node_by_nearest_link_within_distance(''''POINT($sonPx$ $sonPy$)'''',$bbox$,''''nrn_bc'''')),$distance$,false,false) a, nrn_bc b WHERE a.vertex_id = b.source');</query>
-						<query transformProjectionIn="false" transformProjectionOut="true">SELECT AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt FROM points_as_polygon('SELECT a.vertex_id::integer AS id, b.x1::double precision AS x, b.y1::double precision AS y FROM driving_distance(''''SELECT gid AS id,source::integer,target::integer,length::double precision AS cost FROM nrn_bc'''',(select id from find_node_by_nearest_link_within_distance(''''POINT($sonPx$ $sonPy$)'''',$bbox$,''''nrn_bc'''')),$distance$,false,false) a, nrn_bc b WHERE a.vertex_id = b.source');</query>
-						<query transformProjectionIn="true" transformProjectionOut="false">SELECT AsText(the_geom) AS wkt FROM points_as_polygon('SELECT a.vertex_id::integer AS id, b.x1::double precision AS x, b.y1::double precision AS y FROM driving_distance(''''SELECT gid AS id,source::integer,target::integer,length::double precision AS cost FROM nrn_bc'''',(select id from find_node_by_nearest_link_within_distance(text2text_transform(''''POINT($sonPx$ $sonPy$)'''',$sridIn$,$sridProvider$),$bbox$,''''nrn_bc'''')),$distance$,false,false) a, nrn_bc b WHERE a.vertex_id = b.source');</query>
-						<query transformProjectionIn="true" transformProjectionOut="true">SELECT AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt FROM points_as_polygon('SELECT a.vertex_id::integer AS id, b.x1::double precision AS x, b.y1::double precision AS y FROM driving_distance(''''SELECT gid AS id,source::integer,target::integer,length::double precision AS cost FROM nrn_bc'''',(select id from find_node_by_nearest_link_within_distance(text2text_transform(''''POINT($sonPx$ $sonPy$)'''',$sridIn$,$sridProvider$),$bbox$,''''nrn_bc'''')),$distance$,false,false) a, nrn_bc b WHERE a.vertex_id = b.source');</query>
-					</sql>
-					<parameters>
-						<parameter name="point" type="text" codename="data" required="true" />
-						<parameter name="time" type="integer" codename="time" required="false" />
-						<parameter name="length" type="integer" codename="length" required="false" />
-						<parameter name="speed" type="integer" codename="speed" required="false" default="80" />
-						<parameter name="sridInput" type="integer" codename="sridIn" required="false" />
-						<parameter name="sridOutput" type="integer" codename="sridOut" required="false" />
-						<parameter name="bbox" type="integer" codename="bbox" required="false" default="3000" />
-						<parameter name="request_id" type="text" codename="request_id" required="false" />
-					</parameters>
-					<formats>
-						<format name="gml" input="true" output="true" />
-						<format name="xml" input="false" output="true" />
-						<format name="html" input="false" output="true" />
-						<format name="geojson" input="true" output="true" />>
-						<format name="lonlat" input="true" output="false" />
-						<format name="wkt" input="true" output="true" />
-						<format name="kml" input="true" output="true" srid="4326" />
-					</formats>
-				</service>
-				
-				<service name="traveling_sales_person" title="Traveling Sales Person" enable="true">
-					<description>blabla</description>
-					<connection driver="org.postgresql.Driver">
-						<url>jdbc:postgresql://192.168.20.177:5432/geobase</url>
-						<user>postgres</user>
-						<password></password>
-					</connection>
-					<projection srid="900913"></projection>
-					<sql>
-						<query transformProjectionIn="false" transformProjectionOut="false">SELECT gid, AsText(the_geom) AS wkt FROM tsp_astar_directed_smart('nrn_bc','$sesSteps$', (select id from find_node_by_nearest_link_within_distance('POINT($sonStartX$ $sonStartY$)',$bbox$,'nrn_bc')),$bbox$,false,false);</query>
-						<query transformProjectionIn="false" transformProjectionOut="true">SELECT gid, AsText(transform(setsrid(the_geom, $sridProvider$), $sridOut$)) AS wkt FROM tsp_astar_directed_smart('nrn_bc','$sesSteps$', (select id from find_node_by_nearest_link_within_distance('POINT($sonStartX$ $sonStartY$)',$bbox$,'nrn_bc')),$bbox$,false,false);</query>
-						<query transformProjectionIn="true" transformProjectionOut="false">SELECT gid, AsText(the_geom) AS wkt FROM tsp_astar_directed_smart('nrn_bc','$sesSteps$', (select id from find_node_by_nearest_link_within_distance(text2text_transform(''''POINT($sonStartX$ $sonStartY$)'''',$sridIn$,$sridProvider$),$bbox$,'nrn_bc')),$bbox$,false,false);</query>
-						<query transformProjectionIn="true" transformProjectionOut="true">SELECT gid, AsText(transform(setsrid(the_geom, $sridProvider$), $sridOut$)) AS wkt FROM tsp_astar_directed_smart('nrn_bc','$sesSteps$', (select id from find_node_by_nearest_link_within_distance(text2text_transform(''''POINT($sonStartX$ $sonStartY$)'''',$sridIn$,$sridProvider$),$bbox$,'nrn_bc')),$bbox$,false,false);</query>
-					</sql>
-					<parameters>
-						<parameter name="point_start" type="text" codename="start" required="true" />
-						<parameter name="points_step" type="text" codename="steps" required="true" />
-						<parameter name="sridInput" type="integer" codename="sridIn" required="false" />
-						<parameter name="sridOutput" type="integer" codename="sridOut" required="false" />
-						<parameter name="bbox" type="integer" codename="bbox" required="false" default="3000" />
-						<parameter name="findVertex" type="text" codename="findVertex" required="false" default="(select id from find_node_by_nearest_link_within_distance(''''POINT($sonPx$ $sonPy$)'''',$bbox$,''''nrn_bc''''))" />
-						<parameter name="findVertexTransf" type="text" codename="findVertexTransf" required="false" default="(select id from find_node_by_nearest_link_within_distance(text2text_transform(''''POINT($sonPx$ $sonPy$)'''',$sridIn$,$sridProvider$))" />
-						<parameter name="request_id" type="text" codename="request_id" required="false" />
-					</parameters>
-					<formats>
-						<format name="gml" input="true" output="true" />
-						<format name="xml" input="false" output="true" />
-						<format name="html" input="false" output="true" />
-						<format name="geojson" input="true" output="true" />>
-						<format name="lonlat" input="true" output="false" />
-						<format name="wkt" input="true" output="true" />
-						<format name="kml" input="true" output="true" srid="4326" />
-					</formats>
-				</service>
-			</services>
-		</provider>
-		
-		
-		<!--IPC-->
-		<provider name="ipc" title="IPC">
-			<description>blabla</description>
-			<services>
-				<service name="closest_edge" title="Closest Edge" enable="true">
-					<description>blabla</description>
-					<connection driver="org.postgresql.Driver">
-						<url>jdbc:postgresql://192.168.20.177:5432/ipc</url>
-						<user>postgres</user>
-						<password></password>
-					</connection>
-					<projection srid="900913"></projection>
-					<sql>
-						<query transformProjectionIn="false" transformProjectionOut="false">SELECT gid, source, target, AsText(the_geom) AS wkt, distance(the_geom, GeometryFromText('POINT($sonPx$ $sonPy$)',$sridProvider$)) AS dist FROM ipc_trn WHERE the_geom &amp;&amp; setsrid('BOX3D($sonPxM$ $sonPyM$,$sonPxP$ $sonPyP$)'::box3d, $sridProvider$) ORDER BY dist LIMIT 1</query>					
-						<query transformProjectionIn="false" transformProjectionOut="true">SELECT gid, source, target, AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt, distance(the_geom, GeometryFromText('POINT($sonPx$ $sonPy$)',$sridProvider$)) AS dist FROM ipc_trn WHERE the_geom &amp;&amp; setsrid('BOX3D($sonPxM$ $sonPyM$,$sonPxP$ $sonPyP$)'::box3d, $sridProvider$) ORDER BY dist LIMIT 1</query>
-						<query transformProjectionIn="true" transformProjectionOut="false">SELECT gid, source, target, AsText(the_geom) AS wkt, distance(the_geom, transform(GeometryFromText('POINT($sonPx$ $sonPy$)',$sridIn$),$sridProvider$)) AS dist FROM ipc_trn WHERE the_geom &amp;&amp; transform(setsrid('BOX3D($sonPxM$ $sonPyM$,$sonPxP$ $sonPyP$)'::box3d, $sridIn$), $sridProvider$) ORDER BY dist LIMIT 1</query>
-						<query transformProjectionIn="true" transformProjectionOut="true">SELECT gid, source, target, AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt, distance(the_geom, transform(GeometryFromText('POINT($sonPx$ $sonPy$)',$sridIn$),$sridProvider$)) AS dist FROM ipc_trn WHERE the_geom &amp;&amp; transform(setsrid('BOX3D($sonPxM$ $sonPyM$,$sonPxP$ $sonPyP$)'::box3d, $sridIn$), $sridProvider$) ORDER BY dist LIMIT 1</query>
-					</sql>
-					<parameters>
-						<parameter name="point" type="text" codename="data" required="true" />
-						<parameter name="sridInput" type="integer" codename="sridIn" required="false" />
-						<parameter name="sridOutput" type="integer" codename="sridOut" required="false" />
-						<parameter name="bbox" type="integer" codename="bbox" required="false" default="3000" />
-						<parameter name="request_id" type="text" codename="request_id" required="false" />
-					</parameters>
-					<formats>
-						<format name="gml" input="true" output="true" />
-						<format name="xml" input="false" output="true" />
-						<format name="html" input="false" output="true" />
-						<format name="geojson" input="true" output="true" />
-						<format name="id" input="false" output="true" />
-						<format name="lonlat" input="true" output="false" />
-						<format name="wkt" input="true" output="true" />
-						<format name="kml" input="true" output="true" srid="4326" />
-					</formats>
-				</service>
-				
-				<service name="shortest_path" title="Shortest Path" enable="true">
-					<description>blabla</description>
-					<connection driver="org.postgresql.Driver">
-						<url>jdbc:postgresql://192.168.20.177:5432/ipc</url>
-						<user>postgres</user>
-						<password></password>
-					</connection>
-					<projection srid="900913"></projection>
-					<sql>
-						<query transformProjectionIn="false" transformProjectionOut="false">SELECT gid, AsText(the_geom) AS wkt FROM shootingstar_sp_smart('ipc_trn', $sonStartX$, $sonStartY$, $sonEndX$, $sonEndY$, $saBoxSize$,'length',true,true)</query>
-						<query transformProjectionIn="false" transformProjectionOut="true">SELECT gid, AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt FROM shootingstar_sp_smart('ipc_trn', $sonStartX$, $sonStartY$, $sonEndX$, $sonEndY$, $saBoxSize$,'length',true,true)</query>
-						<query transformProjectionIn="true" transformProjectionOut="false">SELECT gid, AsText(the_geom) AS wkt FROM shootingstar_sp_smart('ipc_trn', X(transform(GeometryFromText('POINT($sonStartX$ $sonStartY$)',$sridIn$),$sridProvider$)), Y(transform(GeometryFromText('POINT($sonStartX$ $sonStartY$)',$sridIn$),$sridProvider$)), X(transform(GeometryFromText('POINT($sonEndX$ $sonEndY$)',$sridIn$),$sridProvider$)), Y(transform(GeometryFromText('POINT($sonEndX$ $sonEndY$)',$sridIn$),$sridProvider$)), $saBoxSize$,'length',true,true)</query>
-						<query transformProjectionIn="true" transformProjectionOut="true">SELECT gid, AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt FROM shootingstar_sp_smart('ipc_trn', X(transform(GeometryFromText('POINT($sonStartX$ $sonStartY$)',$sridIn$),$sridProvider$)), Y(transform(GeometryFromText('POINT($sonStartX$ $sonStartY$)',$sridIn$),$sridProvider$)), X(transform(GeometryFromText('POINT($sonEndX$ $sonEndY$)',$sridIn$),$sridProvider$)), Y(transform(GeometryFromText('POINT($sonEndX$ $sonEndY$)',$sridIn$),$sridProvider$)), $saBoxSize$,'length',true,true)</query>
-					</sql>
-					<parameters>
-						<parameter name="point_start" type="text" codename="start" required="true" />
-						<parameter name="point_end" type="text" codename="end" required="true" />
-						<parameter name="sridInput" type="integer" codename="sridIn" required="false" />
-						<parameter name="sridOutput" type="integer" codename="sridOut" required="false" />
-						<parameter name="bbox" type="integer" codename="bbox" required="false" default="3000" />
-						<parameter name="request_id" type="text" codename="request_id" required="false" />
-					</parameters>
-					<formats>
-						<format name="gml" input="true" output="true" />
-						<format name="xml" input="false" output="true" />
-						<format name="html" input="false" output="true" />
-						<format name="geojson" input="true" output="true" />
-						<format name="lonlat" input="true" output="false" />
-						<format name="wkt" input="true" output="true" />
-						<format name="kml" input="true" output="true" srid="4326" />
-					</formats>
-				</service>
-				
-				
-				<service name="driving_distance" title="Driving Distance" enable="true">
-					<description>blabla</description>
-					<connection driver="org.postgresql.Driver">
-						<url>jdbc:postgresql://192.168.20.177:5432/ipc</url>
-						<user>postgres</user>
-						<password></password>
-					</connection>
-					<projection srid="900913"></projection>
-					<sql>
-						<query transformProjectionIn="false" transformProjectionOut="false">SELECT AsText(the_geom) AS wkt FROM points_as_polygon('SELECT a.vertex_id::integer AS id, b.x1::double precision AS x, b.y1::double precision AS y FROM driving_distance(''''SELECT gid AS id,source::integer,target::integer,length::double precision AS cost FROM ipc_trn'''',(select id from find_node_by_nearest_link_within_distance(''''POINT($sonPx$ $sonPy$)'''',$bbox$,''''ipc_trn'''')),$distance$,false,false) a, ipc_trn b WHERE a.vertex_id = b.source');</query>
-						<query transformProjectionIn="false" transformProjectionOut="true">SELECT AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt FROM points_as_polygon('SELECT a.vertex_id::integer AS id, b.x1::double precision AS x, b.y1::double precision AS y FROM driving_distance(''''SELECT gid AS id,source::integer,target::integer,length::double precision AS cost FROM ipc_trn'''',(select id from find_node_by_nearest_link_within_distance(''''POINT($sonPx$ $sonPy$)'''',$bbox$,''''ipc_trn'''')),$distance$,false,false) a, ipc_trn b WHERE a.vertex_id = b.source');</query>
-						<query transformProjectionIn="true" transformProjectionOut="false">SELECT AsText(the_geom) AS wkt FROM points_as_polygon('SELECT a.vertex_id::integer AS id, b.x1::double precision AS x, b.y1::double precision AS y FROM driving_distance(''''SELECT gid AS id,source::integer,target::integer,length::double precision AS cost FROM ipc_trn'''',(select id from find_node_by_nearest_link_within_distance(text2text_transform(''''POINT($sonPx$ $sonPy$)'''',$sridIn$,$sridProvider$),$bbox$,''''ipc_trn'''')),$distance$,false,false) a, ipc_trn b WHERE a.vertex_id = b.source');</query>
-						<query transformProjectionIn="true" transformProjectionOut="true">SELECT AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt FROM points_as_polygon('SELECT a.vertex_id::integer AS id, b.x1::double precision AS x, b.y1::double precision AS y FROM driving_distance(''''SELECT gid AS id,source::integer,target::integer,length::double precision AS cost FROM ipc_trn'''',(select id from find_node_by_nearest_link_within_distance(text2text_transform(''''POINT($sonPx$ $sonPy$)'''',$sridIn$,$sridProvider$),$bbox$,''''ipc_trn'''')),$distance$,false,false) a, ipc_trn b WHERE a.vertex_id = b.source');</query>
-					</sql>
-					<parameters>
-						<parameter name="point" type="text" codename="data" required="true" />
-						<parameter name="time" type="integer" codename="time" required="false" />
-						<parameter name="length" type="integer" codename="length" required="false" />
-						<parameter name="speed" type="integer" codename="speed" required="false" default="80" />
-						<parameter name="sridInput" type="integer" codename="sridIn" required="false" />
-						<parameter name="sridOutput" type="integer" codename="sridOut" required="false" />
-						<parameter name="bbox" type="integer" codename="bbox" required="false" default="3000" />
-						<parameter name="request_id" type="text" codename="request_id" required="false" />
-					</parameters>
-					<formats>
-						<format name="gml" input="true" output="true" />
-						<format name="xml" input="false" output="true" />
-						<format name="html" input="false" output="true" />
-						<format name="geojson" input="true" output="true" />>
-						<format name="lonlat" input="true" output="false" />
-						<format name="wkt" input="true" output="true" />
-						<format name="kml" input="true" output="true" srid="4326" />
-					</formats>
-				</service>
-				
-				<service name="security" title="Security" enable="true">
-					<description>Authentication service</description>
-					<connection driver="org.postgresql.Driver">
-						<url>jdbc:postgresql://192.168.20.177:5432/auth</url>
-						<user>postgres</user>
-						<password></password>
-					</connection>
-					<projection />
-					<sql>
-						<query transformProjectionIn="false" transformProjectionOut="false">SELECT client_id, key FROM keys</query>					
-					</sql>
-					<parameters>
-						<parameter name="api_key" type="text" codename="api_key" required="true" />
-						<parameter name="signature" type="text" codename="signature" required="true" />
-						<parameter name="id" type="text" codename="id" required="true" />
-					</parameters>
-					<formats />
-				</service>				
-				
-			</services>
-		</provider>
-		
-		
-				<!--SUUCHI-->
-		<provider name="suuchi" title="Suuchi">
-			<description>no description</description>
-			<services>
-				<service name="closest_edge" title="Closest Edge" enable="true">
-					<description>>no description</description>
-					<connection driver="org.postgresql.Driver">
-						<url>jdbc:postgresql://192.168.20.177:5432/suuchi</url>
-						<user>postgres</user>
-						<password></password>
-					</connection>
-					<projection srid="54004"></projection>
-					<sql>
-						<query transformProjectionIn="false" transformProjectionOut="false">SELECT gid, source, target, AsText(the_geom) AS wkt, distance(the_geom, GeometryFromText('POINT($sonPx$ $sonPy$)',$sridProvider$)) AS dist FROM kanagawa WHERE the_geom &amp;&amp; setsrid('BOX3D($sonPxM$ $sonPyM$,$sonPxP$ $sonPyP$)'::box3d, $sridProvider$) ORDER BY dist LIMIT 1</query>					
-						<query transformProjectionIn="false" transformProjectionOut="true">SELECT gid, source, target, AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt, distance(the_geom, GeometryFromText('POINT($sonPx$ $sonPy$)',$sridProvider$)) AS dist FROM kanagawa WHERE the_geom &amp;&amp; setsrid('BOX3D($sonPxM$ $sonPyM$,$sonPxP$ $sonPyP$)'::box3d, $sridProvider$) ORDER BY dist LIMIT 1</query>
-						<query transformProjectionIn="true" transformProjectionOut="false">SELECT gid, source, target, AsText(the_geom) AS wkt, distance(the_geom, transform(GeometryFromText('POINT($sonPx$ $sonPy$)',$sridIn$),$sridProvider$)) AS dist FROM kanagawa WHERE the_geom &amp;&amp; transform(setsrid('BOX3D($sonPxM$ $sonPyM$,$sonPxP$ $sonPyP$)'::box3d, $sridIn$), $sridProvider$) ORDER BY dist LIMIT 1</query>
-						<query transformProjectionIn="true" transformProjectionOut="true">SELECT gid, source, target, AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt, distance(the_geom, transform(GeometryFromText('POINT($sonPx$ $sonPy$)',$sridIn$),$sridProvider$)) AS dist FROM kanagawa WHERE the_geom &amp;&amp; transform(setsrid('BOX3D($sonPxM$ $sonPyM$,$sonPxP$ $sonPyP$)'::box3d, $sridIn$), $sridProvider$) ORDER BY dist LIMIT 1</query>
-					</sql>
-					<parameters>
-						<parameter name="point" type="text" codename="data" required="true" />
-						<parameter name="sridInput" type="integer" codename="sridIn" required="false" />
-						<parameter name="sridOutput" type="integer" codename="sridOut" required="false" />
-						<parameter name="bbox" type="integer" codename="bbox" required="false" default="3000" />
-						<parameter name="request_id" type="text" codename="request_id" required="false" />
-					</parameters>
-					<formats>
-						<format name="gml" input="true" output="true" />
-						<format name="xml" input="false" output="true" />
-						<format name="html" input="false" output="true" />
-						<format name="geojson" input="true" output="true" />
-						<format name="id" input="false" output="true" />
-						<format name="lonlat" input="true" output="false" />
-						<format name="wkt" input="true" output="true" />
-						<format name="kml" input="true" output="true" srid="4326" />
-					</formats>
-				</service>
-							
-				<service name="shortest_path" title="Shortest Path" enable="true">
-					<description>blabla</description>
-					<connection driver="org.postgresql.Driver">
-						<url>jdbc:postgresql://192.168.20.177:5432/suuchi</url>
+						<url>jdbc:postgresql://127.0.0.1:5432/hcc</url>
 						<user>postgres</user>
 						<password></password>
 					</connection>
 					<projection srid="4612"></projection>
+					<limit distance="100000" />
 					<sql>
-						<query transformProjectionIn="false" transformProjectionOut="false">SELECT gid, AsText(the_geom) AS wkt FROM shootingstar_sp_smart('kanagawa', $sonStartX$, $sonStartY$, $sonEndX$, $sonEndY$, $saBoxSize$,'length',true,true)</query>
-						<query transformProjectionIn="false" transformProjectionOut="true">SELECT gid, AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt FROM shootingstar_sp_smart('kanagawa', $sonStartX$, $sonStartY$, $sonEndX$, $sonEndY$, $saBoxSize$,'length',true,true)</query>
-						<query transformProjectionIn="true" transformProjectionOut="false">SELECT gid, AsText(the_geom) AS wkt FROM shootingstar_sp_smart('kanagawa', X(transform(GeometryFromText('POINT($sonStartX$ $sonStartY$)',$sridIn$),$sridProvider$)), Y(transform(GeometryFromText('POINT($sonStartX$ $sonStartY$)',$sridIn$),$sridProvider$)), X(transform(GeometryFromText('POINT($sonEndX$ $sonEndY$)',$sridIn$),$sridProvider$)), Y(transform(GeometryFromText('POINT($sonEndX$ $sonEndY$)',$sridIn$),$sridProvider$)), $saBoxSize$,'length',true,true)</query>
-						<query transformProjectionIn="true" transformProjectionOut="true">SELECT gid, AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt FROM shootingstar_sp_smart('kanagawa', X(transform(GeometryFromText('POINT($sonStartX$ $sonStartY$)',$sridIn$),$sridProvider$)), Y(transform(GeometryFromText('POINT($sonStartX$ $sonStartY$)',$sridIn$),$sridProvider$)), X(transform(GeometryFromText('POINT($sonEndX$ $sonEndY$)',$sridIn$),$sridProvider$)), Y(transform(GeometryFromText('POINT($sonEndX$ $sonEndY$)',$sridIn$),$sridProvider$)), $saBoxSize$,'length',true,true)</query>
+						<query transformProjectionIn="false" transformProjectionOut="false">SELECT gid, source, target, AsText(the_geom) AS wkt, distance(the_geom, GeometryFromText('POINT($sonPx$ $sonPy$)',$sridProvider$)) AS dist FROM hcc_20090121 WHERE the_geom &amp;&amp; setsrid('BOX3D($sonPxM$ $sonPyM$,$sonPxP$ $sonPyP$)'::box3d, $sridProvider$) ORDER BY dist LIMIT 1</query>
+						<query transformProjectionIn="false" transformProjectionOut="true">SELECT gid, source, target, AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt, distance(the_geom, GeometryFromText('POINT($sonPx$ $sonPy$)',$sridProvider$)) AS dist FROM hcc_20090121 WHERE the_geom &amp;&amp; setsrid('BOX3D($sonPxM$ $sonPyM$,$sonPxP$ $sonPyP$)'::box3d, $sridProvider$) ORDER BY dist LIMIT 1</query>
+						<query transformProjectionIn="true" transformProjectionOut="false">SELECT gid, source, target, AsText(the_geom) AS wkt, distance(the_geom, transform(GeometryFromText('POINT($sonPx$ $sonPy$)',$sridIn$),$sridProvider$)) AS dist FROM hcc_20090121 WHERE the_geom &amp;&amp; transform(setsrid('BOX3D($sonPxM$ $sonPyM$,$sonPxP$ $sonPyP$)'::box3d, $sridIn$), $sridProvider$) ORDER BY dist LIMIT 1</query>
+						<query transformProjectionIn="true" transformProjectionOut="true">SELECT gid, source, target, AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt, distance(the_geom, transform(GeometryFromText('POINT($sonPx$ $sonPy$)',$sridIn$),$sridProvider$)) AS dist FROM hcc_20090121 WHERE the_geom &amp;&amp; transform(setsrid('BOX3D($sonPxM$ $sonPyM$,$sonPxP$ $sonPyP$)'::box3d, $sridIn$), $sridProvider$) ORDER BY dist LIMIT 1</query>
 					</sql>
 					<parameters>
-						<parameter name="point_start" type="text" codename="start" required="true" />
-						<parameter name="point_end" type="text" codename="end" required="true" />
-						<parameter name="sridInput" type="integer" codename="sridIn" required="false" />
-						<parameter name="sridOutput" type="integer" codename="sridOut" required="false" />
-						<parameter name="bbox" type="integer" codename="bbox" required="false" default="3000" />
-						<parameter name="request_id" type="text" codename="request_id" required="false" />
-					</parameters>
-					<formats>
-						<format name="gml" input="true" output="true" />
-						<format name="xml" input="false" output="true" />
-						<format name="html" input="false" output="true" />
-						<format name="geojson" input="true" output="true" />>
-						<format name="lonlat" input="true" output="false" />
-						<format name="wkt" input="true" output="true" />
-						<format name="kml" input="true" output="true" srid="4326" />
-					</formats>
-				</service>
-				
-				<service name="driving_distance" title="Driving Distance" enable="true">
-					<description>blabla</description>
-					<connection driver="org.postgresql.Driver">
-						<url>jdbc:postgresql://192.168.20.177:5432/suuchi</url>
-						<user>postgres</user>
-						<password></password>
-					</connection>
-					<projection srid="54004"></projection>
-					<sql>
-						<query transformProjectionIn="false" transformProjectionOut="false">SELECT AsText(the_geom) AS wkt FROM points_as_polygon('SELECT a.vertex_id::integer AS id, b.x1::double precision AS x, b.y1::double precision AS y FROM driving_distance(''''SELECT gid AS id,source::integer,target::integer,length::double precision AS cost FROM kanagawa'''',(select id from find_node_by_nearest_link_within_distance(''''POINT($sonPx$ $sonPy$)'''',$bbox$,''''kanagawa'''')),$distance$,false,false) a, kanagawa b WHERE a.vertex_id = b.source');</query>
-						<query transformProjectionIn="false" transformProjectionOut="true">SELECT AsText(transform(setsrid(the_geom, $sridProvider$), $sridOut$)) AS wkt FROM points_as_polygon('SELECT a.vertex_id::integer AS id, b.x1::double precision AS x, b.y1::double precision AS y FROM driving_distance(''''SELECT gid AS id,source::integer,target::integer,length::double precision AS cost FROM kanagawa'''',(select id from find_node_by_nearest_link_within_distance(''''POINT($sonPx$ $sonPy$)'''',$bbox$,''''kanagawa'''')),$distance$,false,false) a, kanagawa b WHERE a.vertex_id = b.source');</query>
-						<query transformProjectionIn="true" transformProjectionOut="false">SELECT AsText(the_geom) AS wkt FROM points_as_polygon('SELECT a.vertex_id::integer AS id, b.x1::double precision AS x, b.y1::double precision AS y FROM driving_distance(''''SELECT gid AS id,source::integer,target::integer,length::double precision AS cost FROM kanagawa'''',(select id from find_node_by_nearest_link_within_distance(text2text_transform(''''POINT($sonPx$ $sonPy$)'''',$sridIn$,$sridProvider$),$bbox$,''''kanagawa'''')),$distance$,false,false) a, kanagawa b WHERE a.vertex_id = b.source');</query>
-						<query transformProjectionIn="true" transformProjectionOut="true">SELECT AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt FROM points_as_polygon('SELECT a.vertex_id::integer AS id, b.x1::double precision AS x, b.y1::double precision AS y FROM driving_distance(''''SELECT gid AS id,source::integer,target::integer,length::double precision AS cost FROM kanagawa'''',(select id from find_node_by_nearest_link_within_distance(text2text_transform(''''POINT($sonPx$ $sonPy$)'''',$sridIn$,$sridProvider$),$bbox$,''''kanagawa'''')),$distance$,false,false) a, kanagawa b WHERE a.vertex_id = b.source');</query>
-					</sql>
-					<parameters>
-						<parameter name="point" type="text" codename="data" required="true" />
-						<parameter name="time" type="integer" codename="time" required="false" />
-						<parameter name="length" type="integer" codename="length" required="false" />
-						<parameter name="speed" type="integer" codename="speed" required="false" default="80" />
-						<parameter name="sridInput" type="integer" codename="sridIn" required="false" />
-						<parameter name="sridOutput" type="integer" codename="sridOut" required="false" />
-						<parameter name="bbox" type="integer" codename="bbox" required="false" default="3000" />
-						<parameter name="request_id" type="text" codename="request_id" required="false" />
-					</parameters>
-					<formats>
-						<format name="gml" input="true" output="true" />
-						<format name="xml" input="false" output="true" />
-						<format name="html" input="false" output="true" />
-						<format name="geojson" input="true" output="true" />>
-						<format name="lonlat" input="true" output="false" />
-						<format name="wkt" input="true" output="true" />
-						<format name="kml" input="true" output="true" srid="4326" />
-					</formats>
-				</service>
-			</services>
-		</provider>
-		
-		<!--PGROUTING-->
-		<provider name="pgrouting" title="pgRouting">
-			<description>no description</description>
-			<services>
-				<service name="closest_edge" title="Closest Edge" enable="true">
-					<description>>no description</description>
-					<connection driver="org.postgresql.Driver">
-						<url>jdbc:postgresql://192.168.20.177:5432/pgrouting</url>
-						<user>postgres</user>
-						<password></password>
-					</connection>
-					<projection srid="4612"></projection>
-					<sql>
-						<query transformProjectionIn="false" transformProjectionOut="false">SELECT gid, source, target, AsText(the_geom) AS wkt, distance(the_geom, GeometryFromText('POINT($sonPx$ $sonPy$)',$sridProvider$)) AS dist FROM suuchi_kanagawa_topo WHERE the_geom &amp;&amp; setsrid('BOX3D($sonPxM$ $sonPyM$,$sonPxP$ $sonPyP$)'::box3d, $sridProvider$) ORDER BY dist LIMIT 1</query>					
-						<query transformProjectionIn="false" transformProjectionOut="true">SELECT gid, source, target, AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt, distance(the_geom, GeometryFromText('POINT($sonPx$ $sonPy$)',$sridProvider$)) AS dist FROM suuchi_kanagawa_topo WHERE the_geom &amp;&amp; setsrid('BOX3D($sonPxM$ $sonPyM$,$sonPxP$ $sonPyP$)'::box3d, $sridProvider$) ORDER BY dist LIMIT 1</query>
-						<query transformProjectionIn="true" transformProjectionOut="false">SELECT gid, source, target, AsText(the_geom) AS wkt, distance(the_geom, transform(GeometryFromText('POINT($sonPx$ $sonPy$)',$sridIn$),$sridProvider$)) AS dist FROM suuchi_kanagawa_topo WHERE the_geom &amp;&amp; transform(setsrid('BOX3D($sonPxM$ $sonPyM$,$sonPxP$ $sonPyP$)'::box3d, $sridIn$), $sridProvider$) ORDER BY dist LIMIT 1</query>
-						<query transformProjectionIn="true" transformProjectionOut="true">SELECT gid, source, target, AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt, distance(the_geom, transform(GeometryFromText('POINT($sonPx$ $sonPy$)',$sridIn$),$sridProvider$)) AS dist FROM suuchi_kanagawa_topo WHERE the_geom &amp;&amp; transform(setsrid('BOX3D($sonPxM$ $sonPyM$,$sonPxP$ $sonPyP$)'::box3d, $sridIn$), $sridProvider$) ORDER BY dist LIMIT 1</query>
-					</sql>
-					<parameters>
-						<parameter name="point" type="text" codename="data" required="true" />
-						<parameter name="sridInput" type="integer" codename="sridIn" required="false" />
-						<parameter name="sridOutput" type="integer" codename="sridOut" required="false" />
-						<parameter name="bbox" type="integer" codename="bbox" required="false" default="0.0015" />
-						<parameter name="request_id" type="text" codename="request_id" required="false" />
-					</parameters>
-					<formats>
-						<format name="gml" input="true" output="true" />
-						<format name="xml" input="false" output="true" />
-						<format name="html" input="false" output="true" />
-						<format name="geojson" input="true" output="true" />
-						<format name="id" input="false" output="true" />
-						<format name="lonlat" input="true" output="false" />
-						<format name="wkt" input="true" output="true" />
-						<format name="kml" input="true" output="true" srid="4326" />
-					</formats>
-				</service>
-							
-				<service name="shortest_path" title="Shortest Path" enable="true">
-					<description>blabla</description>
-					<connection driver="org.postgresql.Driver">
-						<url>jdbc:postgresql://192.168.20.177:5432/pgrouting</url>
-						<user>postgres</user>
-						<password></password>
-					</connection>
-					<projection srid="4612"></projection>
-					<sql>
-						<query transformProjectionIn="false" transformProjectionOut="false">SELECT gid, AsText(the_geom) AS wkt FROM shootingstar_sp_smart('suuchi_kanagawa_topo', $sonStartX$, $sonStartY$, $sonEndX$, $sonEndY$, $saBoxSize$,'length',true,true)</query>
-						<query transformProjectionIn="false" transformProjectionOut="true">SELECT gid, AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt FROM shootingstar_sp_smart('suuchi_kanagawa_topo', $sonStartX$, $sonStartY$, $sonEndX$, $sonEndY$, $saBoxSize$,'length',true,true)</query>
-						<query transformProjectionIn="true" transformProjectionOut="false">SELECT gid, AsText(the_geom) AS wkt FROM shootingstar_sp_smart('suuchi_kanagawa_topo', X(transform(GeometryFromText('POINT($sonStartX$ $sonStartY$)',$sridIn$),$sridProvider$)), Y(transform(GeometryFromText('POINT($sonStartX$ $sonStartY$)',$sridIn$),$sridProvider$)), X(transform(GeometryFromText('POINT($sonEndX$ $sonEndY$)',$sridIn$),$sridProvider$)), Y(transform(GeometryFromText('POINT($sonEndX$ $sonEndY$)',$sridIn$),$sridProvider$)), $saBoxSize$,'length',true,true)</query>
-						<query transformProjectionIn="true" transformProjectionOut="true">SELECT gid, AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt FROM shootingstar_sp_smart('suuchi_kanagawa_topo', X(transform(GeometryFromText('POINT($sonStartX$ $sonStartY$)',$sridIn$),$sridProvider$)), Y(transform(GeometryFromText('POINT($sonStartX$ $sonStartY$)',$sridIn$),$sridProvider$)), X(transform(GeometryFromText('POINT($sonEndX$ $sonEndY$)',$sridIn$),$sridProvider$)), Y(transform(GeometryFromText('POINT($sonEndX$ $sonEndY$)',$sridIn$),$sridProvider$)), $saBoxSize$,'length',true,true)</query>
-					</sql>
-					<parameters>
-						<parameter name="point_start" type="text" codename="start" required="true" />
-						<parameter name="point_end" type="text" codename="end" required="true" />
-						<parameter name="sridInput" type="integer" codename="sridIn" required="false" />
-						<parameter name="sridOutput" type="integer" codename="sridOut" required="false" />
-						<parameter name="bbox" type="integer" codename="bbox" required="false" default="0.0015" />
-						<parameter name="request_id" type="text" codename="request_id" required="false" />
-					</parameters>
-					<formats>
-						<format name="gml" input="true" output="true" />
-						<format name="xml" input="false" output="true" />
-						<format name="html" input="false" output="true" />
-						<format name="geojson" input="true" output="true" />>
-						<format name="lonlat" input="true" output="false" />
-						<format name="wkt" input="true" output="true" />
-						<format name="kml" input="true" output="true" srid="4326" />
-					</formats>
-				</service>
-				
-				<service name="driving_distance" title="Driving Distance" enable="true">
-					<description>blabla</description>
-					<connection driver="org.postgresql.Driver">
-						<url>jdbc:postgresql://192.168.20.177:5432/pgrouting</url>
-						<user>postgres</user>
-						<password></password>
-					</connection>
-					<projection srid="4612"></projection>
-					<sql>
-						<query transformProjectionIn="false" transformProjectionOut="false">SELECT AsText(the_geom) AS wkt FROM points_as_polygon('SELECT a.vertex_id::integer AS id, b.x1::double precision AS x, b.y1::double precision AS y FROM driving_distance(''''SELECT gid AS id,source::integer,target::integer,length::double precision AS cost FROM suuchi_kanagawa_topo'''',(select id from find_node_by_nearest_link_within_distance(''''POINT($sonPx$ $sonPy$)'''',$bbox$,''''suuchi_kanagawa_topo'''')),$distance$,false,false) a, suuchi_kanagawa_topo b WHERE a.vertex_id = b.source');</query>
-						<query transformProjectionIn="false" transformProjectionOut="true">SELECT AsText(transform(setsrid(the_geom, $sridProvider$), $sridOut$)) AS wkt FROM points_as_polygon('SELECT a.vertex_id::integer AS id, b.x1::double precision AS x, b.y1::double precision AS y FROM driving_distance(''''SELECT gid AS id,source::integer,target::integer,length::double precision AS cost FROM suuchi_kanagawa_topo'''',(select id from find_node_by_nearest_link_within_distance(''''POINT($sonPx$ $sonPy$)'''',$bbox$,''''suuchi_kanagawa_topo'''')),$distance$,false,false) a, suuchi_kanagawa_topo b WHERE a.vertex_id = b.source');</query>
-						<query transformProjectionIn="true" transformProjectionOut="false">SELECT AsText(the_geom) AS wkt FROM points_as_polygon('SELECT a.vertex_id::integer AS id, b.x1::double precision AS x, b.y1::double precision AS y FROM driving_distance(''''SELECT gid AS id,source::integer,target::integer,length::double precision AS cost FROM suuchi_kanagawa_topo'''',(select id from find_node_by_nearest_link_within_distance(text2text_transform(''''POINT($sonPx$ $sonPy$)'''',$sridIn$,$sridProvider$),$bbox$,''''suuchi_kanagawa_topo'''')),$distance$,false,false) a, suuchi_kanagawa_topo b WHERE a.vertex_id = b.source');</query>
-						<query transformProjectionIn="true" transformProjectionOut="true">SELECT AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt FROM points_as_polygon('SELECT a.vertex_id::integer AS id, b.x1::double precision AS x, b.y1::double precision AS y FROM driving_distance(''''SELECT gid AS id,source::integer,target::integer,length::double precision AS cost FROM suuchi_kanagawa_topo'''',(select id from find_node_by_nearest_link_within_distance(text2text_transform(''''POINT($sonPx$ $sonPy$)'''',$sridIn$,$sridProvider$),$bbox$,''''suuchi_kanagawa_topo'''')),$distance$,false,false) a, suuchi_kanagawa_topo b WHERE a.vertex_id = b.source');</query>
-					</sql>
-					<parameters>
-						<parameter name="point" type="text" codename="data" required="true" />
-						<parameter name="time" type="integer" codename="time" required="false" />
-						<parameter name="length" type="integer" codename="length" required="false" />
-						<parameter name="speed" type="integer" codename="speed" required="false" default="80" />
-						<parameter name="sridInput" type="integer" codename="sridIn" required="false" />
-						<parameter name="sridOutput" type="integer" codename="sridOut" required="false" />
-						<parameter name="bbox" type="integer" codename="bbox" required="false" default="0.0015" />
-						<parameter name="request_id" type="text" codename="request_id" required="false" />
-					</parameters>
-					<formats>
-						<format name="gml" input="true" output="true" />
-						<format name="xml" input="false" output="true" />
-						<format name="html" input="false" output="true" />
-						<format name="geojson" input="true" output="true" />>
-						<format name="lonlat" input="true" output="false" />
-						<format name="wkt" input="true" output="true" />
-						<format name="kml" input="true" output="true" srid="4326" />
-					</formats>
-				</service>
-			</services>
-		</provider>
-		
-		
-		<!--HCC-->
-		<provider name="hcc" title="hcc">
-			<description>no description</description>
-			<services>
-				<service name="closest_edge" title="Closest Edge" enable="true">
-					<description>>no description</description>
-					<connection driver="org.postgresql.Driver">
-						<url>jdbc:postgresql://192.168.20.177:5432/hcc</url>
-						<user>postgres</user>
-						<password></password>
-					</connection>
-					<projection srid="4301"></projection>
-					<sql>
-						<query transformProjectionIn="false" transformProjectionOut="false">SELECT gid, source, target, AsText(the_geom) AS wkt, distance(the_geom, GeometryFromText('POINT($sonPx$ $sonPy$)',$sridProvider$)) AS dist FROM road_link_5339 WHERE the_geom &amp;&amp; setsrid('BOX3D($sonPxM$ $sonPyM$,$sonPxP$ $sonPyP$)'::box3d, $sridProvider$) ORDER BY dist LIMIT 1</query>					
-						<query transformProjectionIn="false" transformProjectionOut="true">SELECT gid, source, target, AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt, distance(the_geom, GeometryFromText('POINT($sonPx$ $sonPy$)',$sridProvider$)) AS dist FROM road_link_5339 WHERE the_geom &amp;&amp; setsrid('BOX3D($sonPxM$ $sonPyM$,$sonPxP$ $sonPyP$)'::box3d, $sridProvider$) ORDER BY dist LIMIT 1</query>
-						<query transformProjectionIn="true" transformProjectionOut="false">SELECT gid, source, target, AsText(the_geom) AS wkt, distance(the_geom, transform(GeometryFromText('POINT($sonPx$ $sonPy$)',$sridIn$),$sridProvider$)) AS dist FROM road_link_5339 WHERE the_geom &amp;&amp; transform(setsrid('BOX3D($sonPxM$ $sonPyM$,$sonPxP$ $sonPyP$)'::box3d, $sridIn$), $sridProvider$) ORDER BY dist LIMIT 1</query>
-						<query transformProjectionIn="true" transformProjectionOut="true">SELECT gid, source, target, AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt, distance(the_geom, transform(GeometryFromText('POINT($sonPx$ $sonPy$)',$sridIn$),$sridProvider$)) AS dist FROM road_link_5339 WHERE the_geom &amp;&amp; transform(setsrid('BOX3D($sonPxM$ $sonPyM$,$sonPxP$ $sonPyP$)'::box3d, $sridIn$), $sridProvider$) ORDER BY dist LIMIT 1</query>
-					</sql>
-					<parameters>
-						<parameter name="point" type="text" codename="data" required="true" />
+						<parameter name="point" type="text" codename="point" required="true" />
 						<parameter name="sridInput" type="integer" codename="sridIn" required="false" />
 						<parameter name="sridOutput" type="integer" codename="sridOut" required="false" />
@@ -532,18 +44,19 @@
 					</formats>
 				</service>
-							
+
 				<service name="shortest_path" title="Shortest Path" enable="true">
-					<description>blabla</description>
+					<description>Returns the shortest path between two arbitrary points</description>
 					<connection driver="org.postgresql.Driver">
-						<url>jdbc:postgresql://192.168.20.177:5432/hcc</url>
+						<url>jdbc:postgresql://127.0.0.1:5432/hcc</url>
 						<user>postgres</user>
 						<password></password>
 					</connection>
-					<projection srid="4301"></projection>
+					<projection srid="4612"></projection>
+					<limit distance="10000.0" />
 					<sql>
-						<query transformProjectionIn="false" transformProjectionOut="false">SELECT gid, AsText(the_geom) AS wkt FROM shootingstar_sp_smart('road_link_5339', $sonStartX$, $sonStartY$, $sonEndX$, $sonEndY$, $saBoxSize$,'length',true,true)</query>
-						<query transformProjectionIn="false" transformProjectionOut="true">SELECT gid, AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt FROM shootingstar_sp_smart('road_link_5339', $sonStartX$, $sonStartY$, $sonEndX$, $sonEndY$, $saBoxSize$,'length',true,true)</query>
-						<query transformProjectionIn="true" transformProjectionOut="false">SELECT gid, AsText(the_geom) AS wkt FROM shootingstar_sp_smart('road_link_5339', X(transform(GeometryFromText('POINT($sonStartX$ $sonStartY$)',$sridIn$),$sridProvider$)), Y(transform(GeometryFromText('POINT($sonStartX$ $sonStartY$)',$sridIn$),$sridProvider$)), X(transform(GeometryFromText('POINT($sonEndX$ $sonEndY$)',$sridIn$),$sridProvider$)), Y(transform(GeometryFromText('POINT($sonEndX$ $sonEndY$)',$sridIn$),$sridProvider$)), $saBoxSize$,'length',true,true)</query>
-						<query transformProjectionIn="true" transformProjectionOut="true">SELECT gid, AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt FROM shootingstar_sp_smart('road_link_5339', X(transform(GeometryFromText('POINT($sonStartX$ $sonStartY$)',$sridIn$),$sridProvider$)), Y(transform(GeometryFromText('POINT($sonStartX$ $sonStartY$)',$sridIn$),$sridProvider$)), X(transform(GeometryFromText('POINT($sonEndX$ $sonEndY$)',$sridIn$),$sridProvider$)), Y(transform(GeometryFromText('POINT($sonEndX$ $sonEndY$)',$sridIn$),$sridProvider$)), $saBoxSize$,'length',true,true)</query>
+						<query transformProjectionIn="false" transformProjectionOut="false">SELECT gid, AsText(the_geom) AS wkt FROM shootingstar_sp_smart('hcc_20090121', $sonStartX$, $sonStartY$, $sonEndX$, $sonEndY$, $saBoxSize$,'length',true,true)</query>
+						<query transformProjectionIn="false" transformProjectionOut="true">SELECT gid, AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt FROM shootingstar_sp_smart('hcc_20090121', $sonStartX$, $sonStartY$, $sonEndX$, $sonEndY$, $saBoxSize$,'length',true,true)</query>
+						<query transformProjectionIn="true" transformProjectionOut="false">SELECT gid, AsText(the_geom) AS wkt FROM shootingstar_sp_smart('hcc_20090121', X(transform(GeometryFromText('POINT($sonStartX$ $sonStartY$)',$sridIn$),$sridProvider$)), Y(transform(GeometryFromText('POINT($sonStartX$ $sonStartY$)',$sridIn$),$sridProvider$)), X(transform(GeometryFromText('POINT($sonEndX$ $sonEndY$)',$sridIn$),$sridProvider$)), Y(transform(GeometryFromText('POINT($sonEndX$ $sonEndY$)',$sridIn$),$sridProvider$)), $saBoxSize$,'length',true,true)</query>
+						<query transformProjectionIn="true" transformProjectionOut="true">SELECT gid, AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt FROM shootingstar_sp_smart('hcc_20090121', X(transform(GeometryFromText('POINT($sonStartX$ $sonStartY$)',$sridIn$),$sridProvider$)), Y(transform(GeometryFromText('POINT($sonStartX$ $sonStartY$)',$sridIn$),$sridProvider$)), X(transform(GeometryFromText('POINT($sonEndX$ $sonEndY$)',$sridIn$),$sridProvider$)), Y(transform(GeometryFromText('POINT($sonEndX$ $sonEndY$)',$sridIn$),$sridProvider$)), $saBoxSize$,'length',true,true)</query>
 					</sql>
 					<parameters>
@@ -556,27 +69,27 @@
 					</parameters>
 					<formats>
-						<format name="gml" input="true" output="true" />
-						<format name="xml" input="false" output="true" />
-						<format name="html" input="false" output="true" />
-						<format name="geojson" input="true" output="true" />>
+						<format name="gml" input="true" output="true" template="multilinestring_gml" />
+						<format name="xml" input="false" output="true" template="multilinestring_xml" />
+						<format name="html" input="false" output="true" template="multilinestring_html" />
+						<format name="geojson" input="true" output="true" template="multilinestring_geojson" />
 						<format name="lonlat" input="true" output="false" />
-						<format name="wkt" input="true" output="true" />
-						<format name="kml" input="true" output="true" srid="4326" />
+						<format name="wkt" input="true" output="true" template="multilinestring_wkt" />
+						<format name="kml" input="true" output="true" srid="4326" template="multilinestring_kml" />
 					</formats>
 				</service>
-				
+
 				<service name="driving_distance" title="Driving Distance" enable="true">
-					<description>blabla</description>
+					<description>Returns a driving distance polygon</description>
 					<connection driver="org.postgresql.Driver">
-						<url>jdbc:postgresql://192.168.20.177:5432/hcc</url>
+						<url>jdbc:postgresql://127.0.0.1:5432/hcc</url>
 						<user>postgres</user>
 						<password></password>
 					</connection>
-					<projection srid="4301"></projection>
+					<projection srid="4612"></projection>
 					<sql>
-						<query transformProjectionIn="false" transformProjectionOut="false">SELECT AsText(the_geom) AS wkt FROM points_as_polygon('SELECT a.vertex_id::integer AS id, b.x1::double precision AS x, b.y1::double precision AS y FROM driving_distance(''''SELECT gid AS id,source::integer,target::integer,length::double precision AS cost FROM road_link_5339'''',(select id from find_node_by_nearest_link_within_distance(''''POINT($sonPx$ $sonPy$)'''',$bbox$,''''road_link_5339'''')),$distance$,false,false) a, road_link_5339 b WHERE a.vertex_id = b.source');</query>
-						<query transformProjectionIn="false" transformProjectionOut="true">SELECT AsText(transform(setsrid(the_geom, $sridProvider$), $sridOut$)) AS wkt FROM points_as_polygon('SELECT a.vertex_id::integer AS id, b.x1::double precision AS x, b.y1::double precision AS y FROM driving_distance(''''SELECT gid AS id,source::integer,target::integer,length::double precision AS cost FROM road_link_5339'''',(select id from find_node_by_nearest_link_within_distance(''''POINT($sonPx$ $sonPy$)'''',$bbox$,''''road_link_5339'''')),$distance$,false,false) a, road_link_5339 b WHERE a.vertex_id = b.source');</query>
-						<query transformProjectionIn="true" transformProjectionOut="false">SELECT AsText(the_geom) AS wkt FROM points_as_polygon('SELECT a.vertex_id::integer AS id, b.x1::double precision AS x, b.y1::double precision AS y FROM driving_distance(''''SELECT gid AS id,source::integer,target::integer,length::double precision AS cost FROM road_link_5339'''',(select id from find_node_by_nearest_link_within_distance(text2text_transform(''''POINT($sonPx$ $sonPy$)'''',$sridIn$,$sridProvider$),$bbox$,''''road_link_5339'''')),$distance$,false,false) a, road_link_5339 b WHERE a.vertex_id = b.source');</query>
-						<query transformProjectionIn="true" transformProjectionOut="true">SELECT AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt FROM points_as_polygon('SELECT a.vertex_id::integer AS id, b.x1::double precision AS x, b.y1::double precision AS y FROM driving_distance(''''SELECT gid AS id,source::integer,target::integer,length::double precision AS cost FROM road_link_5339'''',(select id from find_node_by_nearest_link_within_distance(text2text_transform(''''POINT($sonPx$ $sonPy$)'''',$sridIn$,$sridProvider$),$bbox$,''''road_link_5339'''')),$distance$,false,false) a, road_link_5339 b WHERE a.vertex_id = b.source');</query>
+						<query transformProjectionIn="false" transformProjectionOut="false">SELECT AsText(the_geom) AS wkt FROM points_as_polygon('SELECT a.vertex_id::integer AS id, b.x1::double precision AS x, b.y1::double precision AS y FROM driving_distance(''''SELECT gid AS id,source::integer,target::integer,length::double precision AS cost FROM hcc_20090121'''',(select id from find_node_by_nearest_link_within_distance(''''POINT($sonPx$ $sonPy$)'''',$bbox$,''''hcc_20090121'''')),$distance$,false,false) a, hcc_20090121 b WHERE a.vertex_id = b.source');</query>
+						<query transformProjectionIn="false" transformProjectionOut="true">SELECT AsText(transform(setsrid(the_geom, $sridProvider$), $sridOut$)) AS wkt FROM points_as_polygon('SELECT a.vertex_id::integer AS id, b.x1::double precision AS x, b.y1::double precision AS y FROM driving_distance(''''SELECT gid AS id,source::integer,target::integer,length::double precision AS cost FROM hcc_20090121'''',(select id from find_node_by_nearest_link_within_distance(''''POINT($sonPx$ $sonPy$)'''',$bbox$,''''hcc_20090121'''')),$distance$,false,false) a, hcc_20090121 b WHERE a.vertex_id = b.source');</query>
+						<query transformProjectionIn="true" transformProjectionOut="false">SELECT AsText(the_geom) AS wkt FROM points_as_polygon('SELECT a.vertex_id::integer AS id, b.x1::double precision AS x, b.y1::double precision AS y FROM driving_distance(''''SELECT gid AS id,source::integer,target::integer,length::double precision AS cost FROM '''',(select id from find_node_by_nearest_link_within_distance(text2text_transform(''''POINT($sonPx$ $sonPy$)'''',$sridIn$,$sridProvider$),$bbox$,''''hcc_20090121'''')),$distance$,false,false) a, hcc_20090121 b WHERE a.vertex_id = b.source');</query>
+						<query transformProjectionIn="true" transformProjectionOut="true">SELECT AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt FROM points_as_polygon('SELECT a.vertex_id::integer AS id, b.x1::double precision AS x, b.y1::double precision AS y FROM driving_distance(''''SELECT gid AS id,source::integer,target::integer,length::double precision AS cost FROM hcc_20090121'''',(select id from find_node_by_nearest_link_within_distance(text2text_transform(''''POINT($sonPx$ $sonPy$)'''',$sridIn$,$sridProvider$),$bbox$,''''hcc_20090121'''')),$distance$,false,false) a, hcc_20090121 b WHERE a.vertex_id = b.source');</query>
 					</sql>
 					<parameters>
@@ -594,113 +107,5 @@
 						<format name="xml" input="false" output="true" />
 						<format name="html" input="false" output="true" />
-						<format name="geojson" input="true" output="true" />>
-						<format name="lonlat" input="true" output="false" />
-						<format name="wkt" input="true" output="true" />
-						<format name="kml" input="true" output="true" srid="4326" />
-					</formats>
-				</service>
-			</services>
-		</provider>						   
-		
-		
-		<!--SUUCHI2-->
-		<provider name="suuchi2" title="Suuchi2">
-			<description>no description</description>
-			<services>
-				<service name="closest_edge" title="Closest Edge" enable="true">
-					<description>>no description</description>
-					<connection driver="org.postgresql.Driver">
-						<url>jdbc:postgresql://192.168.20.177:5432/suuchi</url>
-						<user>postgres</user>
-						<password></password>
-					</connection>
-					<projection srid="4612"></projection>
-					<sql>
-						<query transformProjectionIn="false" transformProjectionOut="false">SELECT gid, source, target, AsText(the_geom) AS wkt, distance(the_geom, GeometryFromText('POINT($sonPx$ $sonPy$)',$sridProvider$)) AS dist FROM tohoku_chihou WHERE the_geom &amp;&amp; setsrid('BOX3D($sonPxM$ $sonPyM$,$sonPxP$ $sonPyP$)'::box3d, $sridProvider$) ORDER BY dist LIMIT 1</query>					
-						<query transformProjectionIn="false" transformProjectionOut="true">SELECT gid, source, target, AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt, distance(the_geom, GeometryFromText('POINT($sonPx$ $sonPy$)',$sridProvider$)) AS dist FROM tohoku_chihou WHERE the_geom &amp;&amp; setsrid('BOX3D($sonPxM$ $sonPyM$,$sonPxP$ $sonPyP$)'::box3d, $sridProvider$) ORDER BY dist LIMIT 1</query>
-						<query transformProjectionIn="true" transformProjectionOut="false">SELECT gid, source, target, AsText(the_geom) AS wkt, distance(the_geom, transform(GeometryFromText('POINT($sonPx$ $sonPy$)',$sridIn$),$sridProvider$)) AS dist FROM tohoku_chihou WHERE the_geom &amp;&amp; transform(setsrid('BOX3D($sonPxM$ $sonPyM$,$sonPxP$ $sonPyP$)'::box3d, $sridIn$), $sridProvider$) ORDER BY dist LIMIT 1</query>
-						<query transformProjectionIn="true" transformProjectionOut="true">SELECT gid, source, target, AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt, distance(the_geom, transform(GeometryFromText('POINT($sonPx$ $sonPy$)',$sridIn$),$sridProvider$)) AS dist FROM tohoku_chihou WHERE the_geom &amp;&amp; transform(setsrid('BOX3D($sonPxM$ $sonPyM$,$sonPxP$ $sonPyP$)'::box3d, $sridIn$), $sridProvider$) ORDER BY dist LIMIT 1</query>
-					</sql>
-					<parameters>
-						<parameter name="point" type="text" codename="data" required="true" />
-						<parameter name="sridInput" type="integer" codename="sridIn" required="false" />
-						<parameter name="sridOutput" type="integer" codename="sridOut" required="false" />
-						<parameter name="bbox" type="integer" codename="bbox" required="false" default="0.011" />
-						<parameter name="request_id" type="text" codename="request_id" required="false" />
-					</parameters>
-					<formats>
-						<format name="gml" input="true" output="true" />
-						<format name="xml" input="false" output="true" />
-						<format name="html" input="false" output="true" />
 						<format name="geojson" input="true" output="true" />
-						<format name="id" input="false" output="true" />
-						<format name="lonlat" input="true" output="false" />
-						<format name="wkt" input="true" output="true" />
-						<format name="kml" input="true" output="true" srid="4326" />
-					</formats>
-				</service>
-							
-				<service name="shortest_path" title="Shortest Path" enable="true">
-					<description>blabla</description>
-					<connection driver="org.postgresql.Driver">
-						<url>jdbc:postgresql://192.168.20.177:5432/suuchi</url>
-						<user>postgres</user>
-						<password></password>
-					</connection>
-					<projection srid="4612"></projection>
-					<sql>
-						<query transformProjectionIn="false" transformProjectionOut="false">SELECT gid, AsText(the_geom) AS wkt FROM shootingstar_sp_smart('tohoku_chihou', $sonStartX$, $sonStartY$, $sonEndX$, $sonEndY$, $saBoxSize$,'length',true,true)</query>
-						<query transformProjectionIn="false" transformProjectionOut="true">SELECT gid, AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt FROM shootingstar_sp_smart('tohoku_chihou', $sonStartX$, $sonStartY$, $sonEndX$, $sonEndY$, $saBoxSize$,'length',true,true)</query>
-						<query transformProjectionIn="true" transformProjectionOut="false">SELECT gid, AsText(the_geom) AS wkt FROM shootingstar_sp_smart('tohoku_chihou', X(transform(GeometryFromText('POINT($sonStartX$ $sonStartY$)',$sridIn$),$sridProvider$)), Y(transform(GeometryFromText('POINT($sonStartX$ $sonStartY$)',$sridIn$),$sridProvider$)), X(transform(GeometryFromText('POINT($sonEndX$ $sonEndY$)',$sridIn$),$sridProvider$)), Y(transform(GeometryFromText('POINT($sonEndX$ $sonEndY$)',$sridIn$),$sridProvider$)), $saBoxSize$,'length',true,true)</query>
-						<query transformProjectionIn="true" transformProjectionOut="true">SELECT gid, AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt FROM shootingstar_sp_smart('tohoku_chihou', X(transform(GeometryFromText('POINT($sonStartX$ $sonStartY$)',$sridIn$),$sridProvider$)), Y(transform(GeometryFromText('POINT($sonStartX$ $sonStartY$)',$sridIn$),$sridProvider$)), X(transform(GeometryFromText('POINT($sonEndX$ $sonEndY$)',$sridIn$),$sridProvider$)), Y(transform(GeometryFromText('POINT($sonEndX$ $sonEndY$)',$sridIn$),$sridProvider$)), $saBoxSize$,'length',true,true)</query>
-					</sql>
-					<parameters>
-						<parameter name="point_start" type="text" codename="start" required="true" />
-						<parameter name="point_end" type="text" codename="end" required="true" />
-						<parameter name="sridInput" type="integer" codename="sridIn" required="false" />
-						<parameter name="sridOutput" type="integer" codename="sridOut" required="false" />
-						<parameter name="bbox" type="integer" codename="bbox" required="false" default="0.011" />
-						<parameter name="request_id" type="text" codename="request_id" required="false" />
-					</parameters>
-					<formats>
-						<format name="gml" input="true" output="true" />
-						<format name="xml" input="false" output="true" />
-						<format name="html" input="false" output="true" />
-						<format name="geojson" input="true" output="true" />>
-						<format name="lonlat" input="true" output="false" />
-						<format name="wkt" input="true" output="true" />
-						<format name="kml" input="true" output="true" srid="4326" />
-					</formats>
-				</service>
-				
-				<service name="driving_distance" title="Driving Distance" enable="true">
-					<description>blabla</description>
-					<connection driver="org.postgresql.Driver">
-						<url>jdbc:postgresql://192.168.20.177:5432/suuchi</url>
-						<user>postgres</user>
-						<password></password>
-					</connection>
-					<projection srid="4612"></projection>
-					<sql>
-						<query transformProjectionIn="false" transformProjectionOut="false">SELECT AsText(the_geom) AS wkt FROM points_as_polygon('SELECT a.vertex_id::integer AS id, b.x1::double precision AS x, b.y1::double precision AS y FROM driving_distance(''''SELECT gid AS id,source::integer,target::integer,length::double precision AS cost FROM tohoku_chihou'''',(select id from find_node_by_nearest_link_within_distance(''''POINT($sonPx$ $sonPy$)'''',$bbox$,''''tohoku_chihou'''')),$distance$,false,false) a, tohoku_chihou b WHERE a.vertex_id = b.source');</query>
-						<query transformProjectionIn="false" transformProjectionOut="true">SELECT AsText(transform(setsrid(the_geom, $sridProvider$), $sridOut$)) AS wkt FROM points_as_polygon('SELECT a.vertex_id::integer AS id, b.x1::double precision AS x, b.y1::double precision AS y FROM driving_distance(''''SELECT gid AS id,source::integer,target::integer,length::double precision AS cost FROM tohoku_chihou'''',(select id from find_node_by_nearest_link_within_distance(''''POINT($sonPx$ $sonPy$)'''',$bbox$,''''tohoku_chihou'''')),$distance$,false,false) a, tohoku_chihou b WHERE a.vertex_id = b.source');</query>
-						<query transformProjectionIn="true" transformProjectionOut="false">SELECT AsText(the_geom) AS wkt FROM points_as_polygon('SELECT a.vertex_id::integer AS id, b.x1::double precision AS x, b.y1::double precision AS y FROM driving_distance(''''SELECT gid AS id,source::integer,target::integer,length::double precision AS cost FROM tohoku_chihou'''',(select id from find_node_by_nearest_link_within_distance(text2text_transform(''''POINT($sonPx$ $sonPy$)'''',$sridIn$,$sridProvider$),$bbox$,''''tohoku_chihou'''')),$distance$,false,false) a, tohoku_chihou b WHERE a.vertex_id = b.source');</query>
-						<query transformProjectionIn="true" transformProjectionOut="true">SELECT AsText(transform(setSRID(the_geom,$sridProvider$), $sridOut$)) AS wkt FROM points_as_polygon('SELECT a.vertex_id::integer AS id, b.x1::double precision AS x, b.y1::double precision AS y FROM driving_distance(''''SELECT gid AS id,source::integer,target::integer,length::double precision AS cost FROM tohoku_chihou'''',(select id from find_node_by_nearest_link_within_distance(text2text_transform(''''POINT($sonPx$ $sonPy$)'''',$sridIn$,$sridProvider$),$bbox$,''''tohoku_chihou'''')),$distance$,false,false) a, tohoku_chihou b WHERE a.vertex_id = b.source');</query>
-					</sql>
-					<parameters>
-						<parameter name="point" type="text" codename="data" required="true" />
-						<parameter name="time" type="integer" codename="time" required="false" />
-						<parameter name="length" type="integer" codename="length" required="false" />
-						<parameter name="speed" type="integer" codename="speed" required="false" default="80" />
-						<parameter name="sridInput" type="integer" codename="sridIn" required="false" />
-						<parameter name="sridOutput" type="integer" codename="sridOut" required="false" />
-						<parameter name="bbox" type="integer" codename="bbox" required="false" default="0.011" />
-						<parameter name="request_id" type="text" codename="request_id" required="false" />
-					</parameters>
-					<formats>
-						<format name="gml" input="true" output="true" />
-						<format name="xml" input="false" output="true" />
-						<format name="html" input="false" output="true" />
-						<format name="geojson" input="true" output="true" />>
 						<format name="lonlat" input="true" output="false" />
 						<format name="wkt" input="true" output="true" />
Index: /tools/routingservice/trunk/start.sh
===================================================================
--- /tools/routingservice/trunk/start.sh (revision 195)
+++ /tools/routingservice/trunk/start.sh (revision 252)
@@ -1,1 +1,1 @@
-java -cp .:jp/co/orkney/restlet:lib/antlrworks-1.1.3.jar:lib/org.restlet.ext.json_2.0.jar:lib/com.noelios.restlet.ext.simple_3.1.jar:lib/org.restlet.jar:lib/com.noelios.restlet.jar:lib/org.simpleframework.jar:lib/jdom.jar:lib/postgresql-8.2-508.jdbc3.jar:lib/org.json.jar:lib/commons-dbcp-1.2.2.jar:lib/commons-pool-1.4.jar:lib/com.noelios.restlet.ext.jdbc_3.0.jar jp.co.orkney.restlet.WebRouting &
+java -cp .:jp/co/orkney/restlet:lib/antlrworks-1.1.3.jar:lib/org.restlet.ext.json_2.0.jar:lib/com.noelios.restlet.ext.simple_3.1.jar:lib/org.restlet.jar:lib/com.noelios.restlet.jar:lib/org.simpleframework.jar:lib/jdom.jar:lib/postgresql-8.1-413.jdbc3.jar:lib/org.json.jar:lib/commons-dbcp-1.2.2.jar:lib/commons-pool-1.4.jar:lib/com.noelios.restlet.ext.jdbc_3.0.jar jp.co.orkney.restlet.WebRouting &
Index: /tools/routingservice/trunk/security/extractor/Base64Coder.java
===================================================================
--- /tools/routingservice/trunk/security/extractor/Base64Coder.java (revision 252)
+++ /tools/routingservice/trunk/security/extractor/Base64Coder.java (revision 252)
@@ -0,0 +1,143 @@
+/**
+* A Base64 Encoder/Decoder.
+*
+* <p>
+* This class is used to encode and decode data in Base64 format as described in RFC 1521.
+*
+* <p>
+* This is "Open Source" software and released under the <a href="http://www.gnu.org/licenses/lgpl.html">GNU/LGPL</a> license.<br>
+* It is provided "as is" without warranty of any kind.<br>
+* Copyright 2003: Christian d'Heureuse, Inventec Informatik AG, Switzerland.<br>
+* Home page: <a href="http://www.source-code.biz">www.source-code.biz</a><br>
+*
+* <p>
+* Version history:<br>
+* 2003-07-22 Christian d'Heureuse (chdh): Module created.<br>
+* 2005-08-11 chdh: Lincense changed from GPL to LGPL.<br>
+* 2006-11-21 chdh:<br>
+*  &nbsp; Method encode(String) renamed to encodeString(String).<br>
+*  &nbsp; Method decode(String) renamed to decodeString(String).<br>
+*  &nbsp; New method encode(byte[],int) added.<br>
+*  &nbsp; New method decode(String) added.<br>
+*/
+
+public class Base64Coder {
+
+// Mapping table from 6-bit nibbles to Base64 characters.
+private static char[]    map1 = new char[64];
+   static {
+      int i=0;
+      for (char c='A'; c<='Z'; c++) map1[i++] = c;
+      for (char c='a'; c<='z'; c++) map1[i++] = c;
+      for (char c='0'; c<='9'; c++) map1[i++] = c;
+      map1[i++] = '+'; map1[i++] = '/'; }
+
+// Mapping table from Base64 characters to 6-bit nibbles.
+private static byte[]    map2 = new byte[128];
+   static {
+      for (int i=0; i<map2.length; i++) map2[i] = -1;
+      for (int i=0; i<64; i++) map2[map1[i]] = (byte)i; }
+
+/**
+* Encodes a string into Base64 format.
+* No blanks or line breaks are inserted.
+* @param s  a String to be encoded.
+* @return   A String with the Base64 encoded data.
+*/
+public static String encodeString (String s) {
+   return new String(encode(s.getBytes())); }
+
+/**
+* Encodes a byte array into Base64 format.
+* No blanks or line breaks are inserted.
+* @param in  an array containing the data bytes to be encoded.
+* @return    A character array with the Base64 encoded data.
+*/
+public static char[] encode (byte[] in) {
+   return encode(in,in.length); }
+
+/**
+* Encodes a byte array into Base64 format.
+* No blanks or line breaks are inserted.
+* @param in   an array containing the data bytes to be encoded.
+* @param iLen number of bytes to process in <code>in</code>.
+* @return     A character array with the Base64 encoded data.
+*/
+public static char[] encode (byte[] in, int iLen) {
+   int oDataLen = (iLen*4+2)/3;       // output length without padding
+   int oLen = ((iLen+2)/3)*4;         // output length including padding
+   char[] out = new char[oLen];
+   int ip = 0;
+   int op = 0;
+   while (ip < iLen) {
+      int i0 = in[ip++] & 0xff;
+      int i1 = ip < iLen ? in[ip++] & 0xff : 0;
+      int i2 = ip < iLen ? in[ip++] & 0xff : 0;
+      int o0 = i0 >>> 2;
+      int o1 = ((i0 &   3) << 4) | (i1 >>> 4);
+      int o2 = ((i1 & 0xf) << 2) | (i2 >>> 6);
+      int o3 = i2 & 0x3F;
+      out[op++] = map1[o0];
+      out[op++] = map1[o1];
+      out[op] = op < oDataLen ? map1[o2] : '='; op++;
+      out[op] = op < oDataLen ? map1[o3] : '='; op++; }
+   return out; }
+
+/**
+* Decodes a string from Base64 format.
+* @param s  a Base64 String to be decoded.
+* @return   A String containing the decoded data.
+* @throws   IllegalArgumentException if the input is not valid Base64 encoded data.
+*/
+public static String decodeString (String s) {
+   return new String(decode(s)); }
+
+/**
+* Decodes a byte array from Base64 format.
+* @param s  a Base64 String to be decoded.
+* @return   An array containing the decoded data bytes.
+* @throws   IllegalArgumentException if the input is not valid Base64 encoded data.
+*/
+public static byte[] decode (String s) {
+   return decode(s.toCharArray()); }
+
+/**
+* Decodes a byte array from Base64 format.
+* No blanks or line breaks are allowed within the Base64 encoded data.
+* @param in  a character array containing the Base64 encoded data.
+* @return    An array containing the decoded data bytes.
+* @throws    IllegalArgumentException if the input is not valid Base64 encoded data.
+*/
+public static byte[] decode (char[] in) {
+   int iLen = in.length;
+   if (iLen%4 != 0) throw new IllegalArgumentException ("Length of Base64 encoded input string is not a multiple of 4.");
+   while (iLen > 0 && in[iLen-1] == '=') iLen--;
+   int oLen = (iLen*3) / 4;
+   byte[] out = new byte[oLen];
+   int ip = 0;
+   int op = 0;
+   while (ip < iLen) {
+      int i0 = in[ip++];
+      int i1 = in[ip++];
+      int i2 = ip < iLen ? in[ip++] : 'A';
+      int i3 = ip < iLen ? in[ip++] : 'A';
+      if (i0 > 127 || i1 > 127 || i2 > 127 || i3 > 127)
+         throw new IllegalArgumentException ("Illegal character in Base64 encoded data.");
+      int b0 = map2[i0];
+      int b1 = map2[i1];
+      int b2 = map2[i2];
+      int b3 = map2[i3];
+      if (b0 < 0 || b1 < 0 || b2 < 0 || b3 < 0)
+         throw new IllegalArgumentException ("Illegal character in Base64 encoded data.");
+      int o0 = ( b0       <<2) | (b1>>>4);
+      int o1 = ((b1 & 0xf)<<4) | (b2>>>2);
+      int o2 = ((b2 &   3)<<6) |  b3;
+      out[op++] = (byte)o0;
+      if (op<oLen) out[op++] = (byte)o1;
+      if (op<oLen) out[op++] = (byte)o2; }
+   return out; }
+
+// Dummy constructor.
+private Base64Coder() {}
+
+} // end class Base64Coder
Index: /tools/routingservice/trunk/security/extractor/ExportPriv.java
===================================================================
--- /tools/routingservice/trunk/security/extractor/ExportPriv.java (revision 252)
+++ /tools/routingservice/trunk/security/extractor/ExportPriv.java (revision 252)
@@ -0,0 +1,70 @@
+// How to export the private key from keystore?
+// Does keytool not have an option to do so?
+// This example use the "testkeys" file that comes with JSSE 1.0.3
+// Alexey Zilber: Ported to work with Base64Coder: http://www.source-code.biz/snippets/java/2.htm
+
+import java.security.cert.Certificate;
+import java.security.*;
+import java.io.File;
+import java.io.FileInputStream;
+
+class ExportPriv {
+    public static void main(String args[]) throws Exception{
+		if (args.length < 2) {
+			//Yes I know this sucks (the password is visible to other users via ps
+			// but this was a quick-n-dirty fix to export from a keystore to pkcs12
+			// someday I may fix, but for now it'll have to do.
+			System.err.println("Usage: java ExportPriv <keystore> <alias> <password>");
+			System.exit(1);
+		}
+		ExportPriv myep = new ExportPriv();
+		myep.doit(args[0], args[1], args[2]);
+    }
+
+    public void doit(String fileName, String aliasName, String pass) throws Exception{
+
+	KeyStore ks = KeyStore.getInstance("JKS");
+
+	char[] passPhrase = pass.toCharArray();
+	//BASE64Encoder myB64 = new BASE64Encoder();
+
+	File certificateFile = new File(fileName);
+	ks.load(new FileInputStream(certificateFile), passPhrase);
+
+	KeyPair kp = getPrivateKey(ks, aliasName, passPhrase);
+		
+	PrivateKey privKey = kp.getPrivate();
+
+	char[] b64 = Base64Coder.encode(privKey.getEncoded());
+
+	System.out.println("-----BEGIN PRIVATE KEY-----");
+	System.out.println(b64);
+	System.out.println("-----END PRIVATE KEY-----");
+
+	}
+
+// From http://javaalmanac.com/egs/java.security/GetKeyFromKs.html
+
+   public KeyPair getPrivateKey(KeyStore keystore, String alias, char[] password) {
+        try {
+            // Get private key
+            Key key = keystore.getKey(alias, password);
+            if (key instanceof PrivateKey) {
+                // Get certificate of public key
+                Certificate cert = keystore.getCertificate(alias);
+    
+                // Get public key
+                PublicKey publicKey = cert.getPublicKey();
+    
+                // Return a key pair
+                return new KeyPair(publicKey, (PrivateKey)key);
+            }
+        } catch (UnrecoverableKeyException e) {
+        } catch (NoSuchAlgorithmException e) {
+        } catch (KeyStoreException e) {
+        }
+        return null;
+    }
+
+}
+
Index: /tools/routingservice/trunk/security/extractor/README
===================================================================
--- /tools/routingservice/trunk/security/extractor/README (revision 252)
+++ /tools/routingservice/trunk/security/extractor/README (revision 252)
@@ -0,0 +1,1 @@
+java ExportPriv <keystore> <alias> <password> > exported-pkcs8.key
Index: /tools/routingservice/trunk/security/README
===================================================================
--- /tools/routingservice/trunk/security/README (revision 252)
+++ /tools/routingservice/trunk/security/README (revision 252)
@@ -0,0 +1,18 @@
+1. Creating the keypair
+keytool -keystore wrs -export -alias <alias> > <certfilename>
+
+2. Convert to PEM
+openssl x509 -out <cacert.pem> -outform pem -text -in <certfilename> -inform der
+
+3. Extract public key for encryption
+openssl x509 -inform pem -in <cacert.pem> -pubkey -noout > <publickey.pem>
+
+4. Extract private key for signing
+   !!!MUST BE DELETED AFTER MAKING A SIGNATURE!!!
+see extractor/README
+
+5. Encrypting
+more <key> | openssl rsautl -encrypt -inkey standard_pub.pem -pubin | openssl enc -base64 > encrypted_base64
+
+6. Signing 
+more <key> | openssl rsautl -sign -inkey <exported-pkcs8.key> | openssl enc -base64 > signature2_base64
