OBO files should have a way to uniquely identify a version of the data contained in an obo file. This version is different from the obo format version and the software version being used to create the file. The version number should be part of the header. In addition, OBOEdit should display this version number in the editor to provide the user a means to check which version he or she is editing (date and time stamp should be included).
It appears that the OBOEdit library can read two different tags
yet we should agree on a single tag name to ensure that there is always a unique number and not two conflicting ones.
In addition to reading the version we also need to have a process for incrementing version numbers. Official version numbers should be created when an obo file is checked into source control, at least the major and minor versions. Two ways to do this:
1) OBOEdit has a button that increments the minor version (and a separate button to increment the major version which happens less often and then needs to reset the minor version) when a user is done with his modifications and ready to check the file into cvs.
2) A more automatic way would be to write a script that is executed to check a file into cvs. This script would increment the version numbers in the obo file before checking it into cvs (probably keep the version numbers in a separate file as well to make this easier to implement without parsing the whole obo file).
If somebody else had already committed changes to the file the user is forced to update (merge) his file first and resolve all conflicts including the version numbers.
History: Currently, neither GO nor Zebrafish AO obo files contain a version yet it is important to keep versions and have them displayed to users so that they know what data they are using. This applies to OBOEdit as well as Phenote and any program that would read obo files. In fact, data versions should be independent of the format of a file. In future, we may have various formats of the same data, all of which should be labeled with the same version.