Osmsync

Osmsync is an automated edits software library that can be used to synchronized an external dataset with osm. It loads data from the external source, loads the matching data from osm and from these prepares a "diff" or difference report and a JOSM compatible changeset which allows the proposed changes to be reviewed prior to upload. As with any other automated edit, it is essential that people read and adhere to the Automated Edits code of conduct.

It can be used for the initial import, for adding records later and to alter or rename keys. It can also be used to feed community edits back to the external source, although you should be mindful that data retrieved from OpenStreetMap is covered by the Open Database License which may be incompatible with the licensing restrictions associated with the external data source.

Contents

Operation

Osmsync loads both datasets and compares. Certain keys are defined as "master" in the external dataset. In the case of a chain store this might be the hours of operation, or the phone number of the store. Other keys are mastered in osm. In almost all cases osm is master for the exact coordinates, though an osmsync plugin may flag locations differ by more than 100 meters. Thus osm mappers can significantly enhance osmsync data without interfering with the conflation or data freshness updates.

How it works

Osmsync stores a "conflation key" with each osm object, and uses it to match up data later:

source:pkey=xxxx
source=osmsync:yyyy

The source:pkey tag documents the primary key in the original dataset (if there is no primary key in the original dataset a hash is used instead). If these keys are left alone by future mappers, the import will proceed smoothly. Deletion of these keys can lead to duplicates.