always us lower case for type label