[OSM-dev] disputed areas
rob at robreid.co.nz
Sun Feb 10 05:56:42 GMT 2008
Mikel Maron wrote the following on 10/02/2008 00:24:
> You may remember OSM's first edit war in Cyprus, last November ..
> It's still going on and we need a technical solution, now. Dialogue
> has not been effective and banning users is not effective.
> The solution in mind is something analogous to protected pages in
> Wikipedia. Edits would be checked against a list of "protected" bbox's.
> In those area, users without permission to edit would be denied, and
> given warning that they should apply for access.
> There would be an admin panel for selected moderators to
> approve/revoke access for users.
> That's (very sketchily) the full package, and it could take some time
> to implement. Right now, there's an immediate need to protect Cyprus.
> A quick fix could just apply protection for Cyprus, and access granted
> in some manual fashion.
> A developer is needed now to implement the quick solution, and later
> the full solution. Please speak up if you can help.
I'm afraid I'm not at all familiar with the api code but would it be
possible to implement some form of protected nodes and ways.
Protected nodes and ways could be identified by converting them to have
a reserved range of way/node id's for which the api does not accept
deletes or modifications unless it is from an approved admin/arbiter.
If an edit is attempted on a protected way/node by a normal user then
the api returns an error indicating that object is protected.
This would stop existing protected data from being modified but would
not stop someone from adding new nodes and ways to deface the area so a
second stage would probably be required which runs on a manual or
scheduled basis to delete all non protected data from an agreed bounding
box. This may not handle ways with all nodes outside the bbox so I'm not
sure how to deal with that.
If someone wants to make changes to the protected area they can still
download and edit in JOSM and then submit the resulting .osm to an
admin/arbiter for upload.
I guess having a protected range of id's could also be achieved with a
protected=yes tag or a protected relation that contains all the affected
nodes and ways, it depends on which is easier to implement and administer.
More information about the dev