A profile is a stereotyped package that contains Unified Modeling Language (UML) diagram elements that you can customize for a specific domain or purpose by using extension mechanisms, such as stereotypes.
A stereotype is a UML extension mechanism that broadens the UML vocabulary and gives more specific meaning to an artifact in a UML diagram.
Stereotypes do not change the underlying semantics of artifacts. For example, you can modify the appearance of a stereotype of a Java™ class by adding a decoration icon, a diagram element image-based icon, or text in double angle brackets (<< >>), but the semantics of the class do not change. The class still has the same attributes, operations, and properties.
As the following figure illustrates, a stereotype is displayed as a name enclosed in double angle brackets (<< >>). Some profile elements, such as stereotypes, enumerations, classes, and class and stereotype attributes, must be valid Java identifiers to avoid name collisions.