Abstract. The Unified Modeling Language (UML) is the de facto industrial standard of an object-oriented modeling language. It consists of several sublanguages which are suited to model structural and behavioral aspects of a software system. The UML was developed as a general-purpose language together with intrinsic features to extend the UML towards problem domain-specific profiles. The paper illustrates the language features of the UML and its adaptation mechanisms. As a conclusion, we show that the UML or an appropriate, to be defined core UML, respectively, may serve as a universal base of an object-oriented modeling language. But this core has to be adapted according to problem domain-specific requirements to yield an expressive and intuitive modeling language for a certain problem domain.