yup. lowercase and uppercase operations depend on language. It's rough.
In some apis this distinction shows through - e.g. javascript's Intl.Collator is a language-aware sorting interface in JS.
In practice, the best bet is usually to try to not do any casing conversions and just let the users handle uppercase vs lowercase on their own. But if you have to do case-insensitive operations, lots more questions about which normalization you should use, and if you want to match user intuition you are going to want to take the language of the text into consideration.
In some apis this distinction shows through - e.g. javascript's Intl.Collator is a language-aware sorting interface in JS.
In practice, the best bet is usually to try to not do any casing conversions and just let the users handle uppercase vs lowercase on their own. But if you have to do case-insensitive operations, lots more questions about which normalization you should use, and if you want to match user intuition you are going to want to take the language of the text into consideration.