How to show the route with Mapserver

The shortest path function (i.e. “dijkstra_sp()”) can be used inside Mapserver to draw the shortest path directly:

LAYER
        NAME "europe"
        TYPE LINE

        STATUS DEFAULT
        CONNECTIONTYPE postgis
            CONNECTION "user=postgres host=localhost dbname=geo"
            DATA "the_geom from (SELECT the_geom, gid from
              dijkstra_sp('bahnlinien_europa_polyline', 2629, 10171)) AS
              foo using unique gid using srid=-1"

        TEMPLATE "t"
        CLASS
          NAME "0"
          STYLE
            SYMBOL "circle"
            SIZE 10
            COLOR 50 50 100
          END
        END
END

Notice however, that this function will be called at each map display, computing the shortest path every time.

A better approach would be to generate the shortest path in a temporary table.