I have recently launched a new site (www.hydrantwiki.com) that is designed to facilitate the collection of Fire Hydrant data. It has a web and a Mobile component (html5).
The site is designed to allow anyone with a modern smart phone to walk up to a hydrant and tag it’s location. After the tag is collected a reviewer validates the data and can match that tag to existing known hydrants. This helps to insure that duplicate hydrant’s are not created. All data is collected with the same ODbL license now used by OSM.
I have been working on a import of data from OSM to HydrantWiki. I have this currently running manually but this process can be automated in the future to capture new OSM sourced information. During the import the data OSM data is compared to know hydrant locations. If no matches (hydrants within 100 feet or about 33 meters) are found the hydrant is accepted into the system as a new hydrant. Hydrants with potential matches are then queued for review just like new hydrants. The reviewer can then attempt to determine if there are just two hydrants that are close, or if they are really the same hydrant.
This semi-automatic process seems to work well. So I am trying to find existing code examples of similar processes for loading data back into OSM. Where each new hydrant is reviewed for matches in OSM prior to being imported back up to OSM. If none is found the hydrant is added to the change set, if a potential match is found it must be reconciled for correctness.
I realize that an import such as this is a long term process, and I am reviewing the wiki and am going to engage my local community efforts to gain a better foundation of knowledge before any attempt to load data into OSM is made. So this is really just a getting started note. Any code suggestions or other source recommendations would be appreciated.