For information on UDFs with UDT input and LOB return parameters, see Defining Functions that Use UDT Types and Defining Functions that Use LOB Types.
When writing a scalar UDF that compresses supported distinct UDT LOB types, follow the instructions for Compressing BLOB and CLOB Types, except you must call FNC_GetDistinctInputLob to get a LOB_LOCATOR before you call FNC_LobOpen to open reading of the source LOB.
For information about the FNC functions, see UDT Interface and LOB Access.
To see sample code for compressing distinct UDT LOB types, see C Scalar Function for Compressing Distinct UDT LOB Types.