The way I try to think of color management is this:
A digital image only contains numbers. A number like 255,0,0 means nothing unless you tell what colorspace it is from. Sure, it's most likely a red color, but it can be many different red colors. To print a digital image each number must be translated to ink amounts (or, to show in a monitor, it must be translated to RGB values for that monitor). To do that TWO translations are needed, first from the image numbers to a "virtual" color in a very wide and high resolution colorspace, then from that colorspace into the colorspace of the output device. The problem is that the output device sometimes can not produce the color needed, it is "out of gamut". No matter how you mix the C, M, Y and K inks of the printer will you be able to get this color. The same thing goes for creating digital images (from a camera or scanner). The "analog" colors must be translated into numbers using a color profile. But the input device might not be able to translate every color of the image into numbers within the colorspace used. Using a wide colorspace makes the problem smaller, but they will still exist.
