Skip to content

Contribute an existing dataset to osm

Christine White edited this page Jul 25, 2013 · 4 revisions

If you're reading this, you likely have data existing in a feature class that you'd like to contribute to OpenStreetMap. This topic will guide you through steps on how to do so; however, it is very important that you first understand some things about contributing to OSM this way.

Table of Contents

Very Important Note about Imports

In the OSM community, contributing an existing dataset to OSM is called Importing. In general, importing data into to OSM is not encouraged by the OSM community for a variety of reasons (see the OpenStreetMap article on Importing). If you understand the reasons and still believe your dataset will enhance the OSM dataset, then please also do the following before you import:

  1. Read the Import Guidelines topic on the OpenStreetMap documentation site. Verify that your contribution follows those guidelines. It is especially important to look at the latest edits in the area to which you will import your edits, and not import your dataset if it will overwrite existing OSM data that is more detailed, accurate, and/or up-to-date than yours.
  2. Get permission from the OSM community first before importing. The Import Guidelines require you to do this by posting to the Imports mailing list, and advising you also to communicate with the local OSM community at the location of the dataset you want contribute. The community will appreciate your openness to feedback, and opening the conversation can head off problems before they occur.

Steps Using ArcGIS Editor for OSM Desktop

  • First, make sure you read the Very Important Note about Imports above.
  • Next, check that your dataset is free from licensing restrictions that would prevent you from contributing it to OSM.
  • Now you are ready to proceed. What you will do at a high level is prepare your dataset for uploading to OSM by appending it to a container dataset with an OSM-enabled structure. During the append process, the ArcGIS Editor for OSM tools will track the append into the revision table (auto-created when you download data from OSM using these ArcGIS tools) that will be uploaded to OSM to officially contribute your data. So, here are the steps: Download OSM data for the extent of your dataset, use OSM Attribute Selector to add additional relevant fields to the OSM dataset, use the Append tool to append your data to the OSM dataset, run Combing OSM Attributes tool to map the new fields to the OSM tag schema, and then use the Upload OSM Data tool to upload the revision table. Note: if the data you are contributing to OSM was created using the ArcGIS Editor for OSM Toolbox (e.g., the desktop or server component) then its recommended that you contact our team first, as we can help you remove the underlying OSM node ids from your dataset before the appending step, and avoid this issue.
Details for these high level steps are below.

Step 1: Download an area from OSM

OSM data has a specific structure that your existing ArcGIS feature class likely does not have. You will need to get a skeleton OSM-enabled ArcGIS dataset into your ArcMap environment to which you can add your dataset. The ArcGIS Editor for OSM tools translate the OSM data into an OSM-enabled ArcGIS feature class. To get this OSM-enabled ArcGIS feature class, use one of the methods for Downloading data from OSM as described in the Download Data from OSM documentation. Note, if you used the .OSM file method, you'll need to run the "Load OSM File" tool afterwards. Once you have finished downloading data from OSM with the ArcGIS Editor for OSM tools, the result should be that you have a feature dataset that will be the "Target" OSM-enabled ArcGIS feature dataset to which you will append your data.

From this point on, we will refer to this resulting OSM-enabled dataset as the Target, and the data you want to contribute as the Source. Now, add your source data to the map document, such that you can now see your source data and the downloaded OSM feature classes in the same view.

Step 2: Recalculate the Spatial Grid Index of your Target dataset (optional)

It is possible that the target feature classes do not contain features that are as large as your source data. To avoid errors later on, you may need to recalculate the spatial grid index of the target dataset. This step is optional, but if you don't do it and you get an error about the spatial grid index, then remember to come back to this step. To recalculate the spatial grid index, follow the instructions at the Esri Knowledge Base Article 35007.

Step 3: Investigate field mappings and Add missing fields to the target

Identify what type of feature class is your source data - point, line, or polygon. Open the Attribute table for the target feature class that corresponds to that type - e.g., targetDatasetName_pt, targetDatasetName_ln, or targetDatasetName_ply. Now open the Attribute table for your source dataset. Compare the attributes for each dataset. Does the information in your source table map to any of the columns defined by OSM in the target dataset? Write down these mappings. Is there data in your source dataset that you know exists as a tag in OSM but is not in the table? If so and you want that information to be added to OSM, use the OSM Attribute Selector tool to browse to the target feature class and select tags from OSM that should be added to the target's table. Add this mapping from your source dataset to this new column in the list of mappings you're writing down.

IMPORTANT: if your source dataset contains fields that won't be used in the OSM dataset and are not basic fields for features in ArcGIS (e.g., ObjectID, shape length, shape area...), then remove these fields from your source dataset before proceeding to the appending step.

Step 4: Append the Source to the Target

After adding any missing fields to the target feature class, you are ready to append your source data to the target. In the ArcToolbox Window, Open the 'Data Management Tools' toolbox, and then the 'General' toolset. Select the 'Append' tool. In the 'Append' dialog, fill in the following:

  • Input Datasets: browse to your source feature class
  • Target Dataset: browse to your target feature class (e.g., targetDatasetName_ln, pt, or ply)
  • Schema Type: select 'NO_TEST' from the drop down
  • Field Map: if you identified mappings between your source and target it in Step3, here is where you make that mapping clear. Right click on the first field name in the list for which you wrote down a mapping and select 'Add Input Field'. From the list of available fields shown from the source dataset, select the one that maps to this field. Click OK. Repeat for each field in the list for which you identified a mapping. When finished with this field mapping, you can skip the next parameter -Subtype- and click OK to initiate the Append.
When the Append has finished successfully, open your Attribute table for the target feature class, and note that the data from your source has been added to the bottom of the table.

Step 5: Make further data edits to the target feature class (optional)

If there are edits that you want to add to the data you appended to the target, start an editing session and proceed with editing. If not, proceed with the next step.

Step 6: Run the "Combine OSM Attributes" tool - mandatory if you added tags/columns to your Target

If you ran the "OSM Attribute Selector" tool earlier, or if you manually added a field to your Target feature dataset, then you will need to run the "Combine OSM Attributes" tool on all added tags/fields before Uploading to OSM. If you do not run the tool on the fields, it is possibly that your data will not upload or that it will upload but you'll lose the values of those fields. The "Combine OSM Attributes" ports standalone attributes back to the data structure uploadable to OSM.

Step 7: Upload OSM Data

Now that your dataset is integrated with an OSM-enabled feature class, you can upload it to OpenStreetMap. Click the Upload OSM Data tool, and follow instructions at the Upload to OSM documentation. Note that in this step you are not re-uploading the data that you downloaded from OSM; what really happens is the information in the table that tracked the revisions, including your append and any of the edits afterwards, is uploaded.

If this workflow was unsuccessful...

If the workflow was unsuccessful, try this workflow again with a brand new map document, and use only one OSM Dataset in this map document, e.g., don't have a couple OSM datasets open or in use, and don't run this workflow after doing an edit session with a different OSM dataset.

If still not successful, contact us and we'll help.


Back to Documentation