@petyakangalova has noted that Codelists have a boolean
complete attribute which impacts usage in a way relevant to this proposal.
The documentation on this attribute is:
Some codelists, such as the ISO country codes, are not ‘complete’ lists of all possible values that might be used. In the case of countries, publishers may use extra user defined codes (such as ‘XK’ for Kosovo) or valid historical values that are not on our maintained list.
For other codelists, such as the DescriptionType codelist, if the value is not on the codelist the data doesn’t make any sense - it is invalid. This is an example of a ‘complete’ codelist.
We distinguish between these two types of codelists by the use of an xml attribute:
complete - boolean that describes whether the codelist is 'complete' ie. having a value not on the codelist is definitely invalid. An example of an incomplete codelist is country codes, where extra codes may exist for disputed countries.
Reading through this, it appears that:
complete="1" - use of values from this Codelist is mandatory - using other values makes the data invalid
complete="0" - use of values from this Codelist is recommended, though using other values is absolutely fine (but might lead to a warning in a validation tool)
The Language Codelist is marked as
complete="0". As such, this proposal appears redundant in its current state.
An alternative course of action would be to improve documentation around the