À partir de la version 7.0.0, les numéros de version utilisent le versionnement sémantique. Les 3 nombres sont intitulés majeure.mineure.correctif.
Une nouvelle version majeure peut apporter des modifications arbitraires à la spécification. Les différentes versions majeures ne sont généralement ni compatibles entre elles, ni avec les versions antérieures ni avec les versions ultérieures.
Une nouvelle version mineure préserve la validité des données de toutes les versions mineures précédentes. Elle peut rendre valides des données supplémentaires, par exemple en ajoutant de nouveaux types de structures, en autorisant les structures existantes dans de nouveaux contextes ou en ajoutant de nouvelles valeurs énumérées ou de nouveaux calendriers. Une version mineure ne modifie pas la signification sémantique des données des versions mineures précédentes; ainsi, un document 7.0 est également un document 7.1 valide et représente la même information dans les deux versions.
Une nouvelle version corrective est une spécification clarifiée ou améliorée pour les mêmes données, sans modifier ces dernières. Tout logiciel implémentant correctement X.Y.Z implémente également correctement X.Y.W. En cas d'ambiguïté ou de contradiction dans la spécification, celle-ci sera résolue par une version corrective, sauf s'il est avéré que les implémentations ont interprété la spécification différemment et que la clarification du sens voulu entraînerait des incompatibilités entre elles.
Il est recommandé que les implémentations acceptent toutes les données à leur propre version mineure ou à une version antérieure, quelle que soit la version du correctif. Il est également recommandé qu'elles importent les données des versions mineures ultérieures en traitant les structures, énumérations ou calendriers inattendus comme s'il s'agissait d'extensions.