There is a need to clearly communicate the maturity of a language resource code base. For this four categories are used (+ unknown/undefined), as defined below:
These categories are used as labels in README files, on the documentation front page for each resource, as well as in the registry. The labels should look as follows:
(The badge text
Maturity is shortened to just
M in the registry, to keep the width of the badge reasonable.)
The criterias for the various levels (some of these criterias do not apply to keyboards, for obvious reasons) are:
Used when the maturity is not definable, or has not yet been defined/tagged.
This category also covers student exercises (published with permission). The point of such exercises is not to make a working system, but to explore the possibilities for language technology. Such work can of course be extended and in the end result in a fully working, production tool.
1.0.0or higher of either speller or analyser/
Maturity badges in README’s, documentation and the registry are presently maintained manually. But the maturity level is also used to group languages automatically in the keyboard and language resource lists, in which case it is taken automatically from a correesponding topic tag in the github repo. Over time, all instances of maturity badges should be generated from these topic tags.
Adding maturity tags is done via GitHub topics, and can only be done by repo or organisation owners or admins. The topic tags corresponding to the labels above are as follows:
The category is of course unlabeled - that is the definition of the category. It should ideally be empty.