We wish for the Unified Astronomy Thesaurus to become an open reference vocabulary for the Astronomy community at large. In response to our community needs and as our knowledge of the field evolves, we expect that the UAT will undergo regular revisions and updates. This short document details our plans for managing releases so as to minimize disruptions while providing needed updates to the users of the Thesaurus.
We expect that the Thesaurus will be reviewed and potentially updated at least once a year, to ensure that it is still current with respect to the latest research in our fields. This schedule should allow us to perform analysis of the literature published in a calendar year to detect whether any new concepts have appeared. Community feedback and use cases may dictate a more frequent update cycle, which could be as frequent as quarterly updates.
We expect the UAT to be used by several information providers in a variety of applications and contexts. In order to facilitate the deployment of a new version of the UAT, we will follow a versioning policy which allows users to consistently determine the scope of the change in the UAT and whether a version upgrade may require changes in the application business logic.
The versioning model we propose is adopted from the Semantic Versioning pattern used for software (http://semver.org), but which has also being adopted to track changes in datasets (see e.g. http://www.ands.org.au/working-with-data/data-management/data-versioning).
Semantic Versioning prescribes naming releases using the pattern: MAJOR.MINOR.PATCH, where MAJOR, MINOR, and PATCH are digits. In the case of the UAT, the following rules will govern the changes in the three categories:
MAJOR changes impact the structure of the thesaurus in a backwards-incompatible way, requiring existing users to review and possibly modify the thesaurus before an upgrade. These include:
- Modification in concept hierarchy (concepts are moved from one branch to another)
- Addition of branches (possibly indicating that a whole new research field has now been added)
- Deletion of concepts (this is discouraged but may happen in the case errors are discovered)
MINOR changes are generally backwards-compatible, allowing the users to simply drop a new version of the thesaurus into their application with the expectation that the system will continue to operate without modifications. These include:
- Addition of concepts (URI)
- Addition of relationships between existing concepts
- Deprecation (but not deletion) of concepts
PATCH level changes are of minor nature and provide updates which fix minor mistakes or simply enhance existing functionality in a backwards-compatible way. These include:
- Addition of alternates to existing concepts
- Change in preferred terms (but not concepts)
- Update in documentation, scope notes