My tests tell me that, as of Unicode 6.2, all characters in full compatibility decompositions have the property NFD_Quick_Check=Yes.
This leads me to believe that isNFKD(x) implies isNFD(x), and isNFKC(x) implies isNFC(x).
Are my conclusions correct? And what about stability? Are these implications guaranteed to hold for future versions of the Unicode standard?
Your conclusions are correct. Section Design Goals of Unicode Standard Annex #15 states:
toNFKC(x) = toNFC(toNFKC(x))
toNFKD(x) = toNFD(toNFKD(x))
With regard to stability, this will hold true for future versions of Unicode if the normalized string doesn't contain any unassigned code points.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With