[OSM-dev] Diff Upload - possible task for osmosis, bulk uploader?
Frederik Ramm
frederik at remote.org
Fri Nov 9 00:36:38 GMT 2007
Hi,
> presumably using the current api
> it is possible to create two relations, each referencing the other (a
> circular dependency) where both must have id substitution performed,
> there is no way of sorting the input file to make this work correctly.
> It would be nice if the API could prevent this scenario from occurring,
That would mean that any time a relation is changed, all relations
using that relation would have to be identified and checked, at a high
performance cost.
> but I suspect it doesn't do so currently. I guess in practice this is
> very unlikely to occur so probably not a huge deal.
I think so too. I can't think of a good use for circular relations but
if someone else can, let them have their fun ;-)
> I like the relation concept, but it has thrown a few tricky problems
> into the mix ;-)
Yes I know. It was easy when you could count on having a maximum of
two indirections (way->segment->node)... those were the times!
To upload a pair of circular relations, you'd have to upload one of
them without members and update it later. A dumb bulk-uploader could
probably do this:
1. for each relation, upload a relation with no members and just one
tag e.g. "note=temporary object", whatever, thus obtaining the id
for each.
2. upload all nodes and ways.
3. change all relations created in 1. to their intended tags/members.
Which would always work, circular relations or no.
Bye
Frederik
--
Frederik Ramm ## eMail frederik at remote.org ## N49°00.09' E008°23.33'
More information about the dev
mailing list