From Wikidata
Jump to navigation Jump to search

This page explains how to upload your edits to Wikidata. It assumes you already have a created a Wikidata schema in your OpenRefine project.

Uploading with OpenRefine[edit]

  • Click WikidataUpload edits to Wikidata.
  • Log in with your personal account or your bot account depending on which account you want to use to make the edits.
  • Supply a meaningful edit summary. This is especially important because OpenRefine condenses all your changes on the same item as one edit: if you are making multiple changes, the edit summary generated by Wikidata will not indicate clearly what sort of change you made. If you are making atomic changes, such as adding a single alias or statement, the automatic edit summaries will be more meaningful. At the end of your edit summary, OpenRefine will append a link to the EditGroups tool, which lets you track and analyze your edit batch after upload.
  • Click Perform edits and wait for the operation to complete. You can watch your edits being made by checking your contributions or the EditGroups tool.

Because performing edits in OpenRefine counts as an operation, you can extract this operation and reapply it to other projects. If you do so, you should also include the operation that saves the schema (only the last one is required), and make sure that the column names in the schema match those of the OpenRefine project where you are applying the operation.

Uploading with QuickStatements[edit]

  • Click WikidataExport to QuickStatements and copy the contents of the file;
  • Click Version 1 format;
  • Paste the generated changes in the text area;
  • Perform the edits with Run or Run in background.

Notable differences between the two methods[edit]

Merging strategy for statements[edit]

OpenRefine checks for existing statements which match not only the property and the target value, but also the qualifiers. On the other hand, QuickStatements ignores qualifiers when matching statements. Both merging strategies can be useful depending on the properties. It is forecast to let the user configure the matching method in OpenRefine.

If references are provided, both tools merge references in matching statements.

New item creation[edit]

OpenRefine supports creating new items with arbitrary relations between them.

QuickStatements supports creating new items with the CREATE instruction, and subsequent instructions can use the LAST placeholder to use the Qid of the last created item. When generating QuickStatements instructions, OpenRefine reorders your edits so that this syntax can be used. In rare cases, such as when a statement links two newly-created items, it is impossible to use QuickStatements to perform the edit. In this case, no QuickStatements script will be generated.

Speed and number of edits[edit]

OpenRefine generally performs one edit per item touched by an edit batch and at most two in general (in the case where new items contain links between them). This was chosen to minimize server load, speed up the upload and keep item histories compact. The downside is that the edit summaries can be less meaningful - it is therefore important that users supply informative summaries when uploading their batches. OpenRefine asymptotically edits at the rate of 60 edits per minute (so, usually 60 items per minute).[1] The first edits are made more quickly, which is convenient for small batches.

QuickStatements performs incremental edits (for instance, when adding a statement with a qualifier and a reference, it will make three edits). That generally means lower speed, but more explicit item histories.

Statistics for edit groups can be obtained on the EditGroups tool.


  1. In versions 3.0 and 3.1, this rate was 30 edits per minute.