[OSM-talk] Topology (was: OSM the mediocre alternative)
Frederik Ramm
frederik at remote.org
Sun Apr 22 08:13:58 BST 2007
Hi,
> OSM uses topology as its base storage. Topology is good for making
> graphs, which is important when you need to do routing. For this
> reason, (it seems to me) that OSM was built towards the goal of
> creating driving directions. Great.
Until now I was a big fan of topology and thought it was not only a
requirement for routing or other logical analysis, but also richer in
information.
If you have a junction described in "features", what you get are two
roads that somehow happen to meet in one place (two lines crossing, or
meeting). Right? In terms of storage, both lines will usually have their
own coordinates in the data base; the information that they intersect,
or meet, is not there explicitly, it just comes from the maths applied
when drawing them, and if your database has spatial support you can ask
the database for the point where they intersect.
However if someone wants to move that intersection, he will have to edit
each feature separately - if you move one road away from the junction,
then the junction is no more.
This is not a problem in read-only environments like the interim PostGIS
database created for Mapnik rendering - nobody can move a node there.
But in our live data we need the functionality, and we cannot allow a
junction to cease to exist just because one of the roads is moved a bit.
How would you deal with things like that in FeatureServer, or any
feature-based approach? Would you not have to add a topology component
to allow editing without accidentally breaking stuff?
Jochen and I tried to outline the probem in our paper with suggestions
for a new data model (here:
http://www.remote.org/frederik/tmp/towards-a-new-data-model-for-osm.pdf,
it was meant as an input for Essen and hasn't been changed since but the
stuff about topology is still valid).
As far as I understand, Oracle actually has a database that has combined
GIS and topology support, and PostGIS tried to add it but hasn't
succeeded yet (albeit I heard that they're still working on it).
Bye
Frederik
--
Frederik Ramm ## eMail frederik at remote.org ## N49°00.09' E008°23.33'
More information about the talk
mailing list