decompose takes as its argument a string in any datatype and returns a Unicode string after decomposition in the same character set as the input. For example, an o-umlaut codepoint will be returned as the &o& codepoint followed by an umlaut codepoint.

decompose is valid only for Unicode characters.