I saw the page on OSM Protocol Version 0.6 at OSM Wiki… It seems to me it would be beneficial to use the anchor-concept (as e.g. used in SyncML) for the querying API: a client normally wants to get update what has been changed on the server since last session. Since the timestamp concept can not be directly used (client and server may have not synchronized clocks), SyncML (I beleive following also the older IrMC Sync protocol) introduces the concept of anchor, which in fact is the timestamp of the last synchronization, but using the server clock (server anchor). The server transmits the anchor to the client, and client stores this until the next session. Next time the client transmits the anchor back to the server to inform it from which point in time it needs the update.
IMHO, an interface that allows to download only changes to the map and automatically merge them with the map downloaded earlier would be quite beneficial in terms of download waiting time
What do you think?