definitions
definitions copied to clipboard
Feature/extend romanization rules
This adds precision to the transformed language forms, to solve the conflation of iso-1995 as the specific "ISO:9 from 1995, for Cyrillic to Latin script".
It is unclear if it is manageable and informative (or complicating) to do like this in general. At least in part, assessing this comes from how we use this data in the romanization feature.
If the rules are just informative support data, this is reasonably a good addition. But if we want to use these definitions in runtime algorithms (specifically to build BCP47 tags from code components), by this design, the algorithm would have to "climb up" via broader until if finds a code (though probably, as here, just one step). Might be OK, but it is more complex. For maintaining predefined codes I believe it is OK. But if we are to generate new :TransformedLanguageForm:s when the romanization API is called, we need to assess the complexity when using these definitions.
I've added some more data to be used, and some comments on what we may still need (e.g. using the libris-t-rules collection as the source for what we can romanize).