Taken from LMCS documentation:
It's out of scope of this document to define the exact meaning of rendering intents. I will try to make a quick explanation here, but often the meaning of intents depends on the profile manufacturer.
Hue hopefully maintained (but not required), lightness and saturation sacrificed to maintain the perceived color. White point changed to result in neutral grays. Intended for images.
Within and outside gamut; same as Absolute Colorimetric. White point changed to result in neutral grays.
Hue and saturation maintained with lightness sacrificed to maintain saturation. White point changed to result in neutral grays. Intended for business graphics (make it colorful charts, graphs, overheads, ...)
Within the destination device gamut; hue, lightness and saturation are maintained. Outside the gamut; hue and lightness are maintained, saturation is sacrificed. White point for source and destination; unchanged. Intended for spot colors (Pantone, TruMatch, logo colors, ...)
Not all profiles do support all intents. If you specify an intent that the profile doesn't handle, lcms will select default intent instead. Usually perceptual. This will force to "look nice", no matter the intent is not the one really desired.