Source: http://www.mbrunot.com/files/isima/ZZ2/TC/uml/UML2_1023.pdf