[OSM-dev] dropping segments

Matthew Newton matthew-osm at newtoncomputing.co.uk
Thu Jul 26 17:46:01 BST 2007


Hi,

On Fri, Jul 27, 2007 at 12:55:11AM +0100, Steve Coast wrote:
> Over in the current data model thread Frederik declared consensus in  
> dropping segments. Is that really the case? I've thought it was  
> before and been wrong.

I certainly think it's the way to go.

> Dropping segments should be approximately trivial if we make a break  
> with the past. Here's Steves n-point plan to success:
<snip>

I suggested the following a while back; I think it would be less disruptive
for all clients, etc, although I don't know about the underlying data
structure.

Convert all segments to 2-node paths. (Still allow 2-node paths to be
  accessed as a "from->to", i.e. don't break existing clients yet.)

Run an external script (or use an upgraded path-capable JOSM) to merge
  adjacent paths to make them longer. This avoids the problem of how to
  cope with branched ways.

Ways are now, by definition, groups - a branched road that was a way before
  now consists of a collection of paths.

Rename "ways" to "groups".

Convert renderers that need it to use paths instead of ways.


Backwards compatibility for clients that don't understand paths:

  allow downloading of areas that contain two-node paths only
  only allow upload of a path if it currently has two-nodes in the db

> Our data model is then nodes and paths.

This way you get nodes, paths and groups, which neatly solves boundary,
bus-route, branched roads, etc.

> We would begin without any history for paths. I don't think this will  
> really matter.

We would keep history this way - all existing segments are just 2-node paths.

> I'd bet money that we could get all this done in a weekend with a few  
> key people in a room, much like the dev day in Oxford.

Yes, sounds good. I'd love to be able to hack on the back-end more - I need
more time than I currently have though :-(.

Thanks,

-- 
Matthew




More information about the dev mailing list