Dans les modèles UML, les attributs représentent les informations, données ou propriétés appartenant à des instances d'un discriminant.
Un discriminant peut posséder un nombre indéfini d'attributs ou n'en posséder aucun. Les attributs décrivent une valeur ou une plage de valeurs pouvant être donnée aux instances d'un discriminant. Vous pouvez définir le type de l'attribut (entier ou booléen, par exemple) et sa valeur initiale. Vous pouvez également lier une contrainte à un attribut pour définir la plage de valeurs qu'il peut prendre.
Les noms des attributs sont des noms courts ou des phrases nominales décrivant l'attribut. La syntaxe UML d'un nom d'attribut contient, en plus du nom de l'attribut, des informations sur sa visibilité, son type et sa valeur initiale, comme dans l'exemple ci-dessous.
nom «stéréotype» visibilité : type-expression = valeur-initiale
Dans une application de commerce électronique, une classe Client possède un attribut qui détient le montant dans le solde du client, comme indiqué dans l'exemple suivant.
- balance : MoneyType = 0.00