Data Package Version
| Authors | Rufus Pollock | 
|---|
Specification
The Data Package version format follows the Semantic Versioning specification format: MAJOR.MINOR.PATCH
The version numbers, and the way they change, convey meaning about how the data package has been modified from one version to the next.
Given a Data Package version number MAJOR.MINOR.PATCH, increment the:
MAJOR version when you make incompatible changes, e.g.
- Change the data package, resource or field 
nameoridentifier - Add, remove or re-order fields
 - Change a field 
typeorformat - Change a field 
constraintto be more restrictive - Combine, split, delete or change the meaning of data that is referenced by another data resource
 
MINOR version when you add data or change metadata in a backwards-compatible manner, e.g.
- Add a new data resource to a data package
 - Add new data to an existing data resource
 - Change a field 
constraintto be less restrictive - Update a reference to another data resource
 - Change data to reflect changes in referenced data
 
PATCH version when you make backwards-compatible fixes, e.g.
- Correct errors in existing data
 - Change descriptive metadata properties
 
Scenarios
- You are developing your data though public consultation. Start your initial data release at 0.1.0
 - You release your data for the first time. Use version 1.0.0
 - You append last months data to an existing release. Increment the MINOR version number
 - You append a column to the data. Increment the MAJOR version number
 - You relocate the data to a new 
URLorpath. No change in the version number - You change a 
title,description, or other descriptive metadata. Increment the PATCH version - You fix a data entry error by modifying a value. Increment the PATCH version
 - You split a row of data in a foreign key reference table. Increment the MAJOR version number
 - You update the data and schema to refer to a new version of a foreign key reference table. Increment the MINOR version number