AssociationClass''''''es can be adapted, with some UML tools, to represent an AssociativeArray. Others, like Together/*, don't provide 'em. Just having a map member in a class, with no visible dependencies between the class and the key and item classes, seems pretty bad. AssociativeArray''''''s are extremely common in all OO languages. So what's the most intuitive way to show an AssociativeArray in UML? ''OK. It depends whose intuition you are using. To my intuition AssociationClass''''''es are so wooly that they are basically no use, for associative arrays or for anything else. Meanwhile, the QualifiedAssociation seems to have ''exactly'' the properties of a member of a class that's an associative array (in one direction only, so you also need to know what you want the associative array for...). For this view to work, you need to be sophisticated enough to recognise that the hard distinction that the UML forces between data members, operations that return values, and associations is desperately unhelpful. But then, some people have UmlIssuesWithQualifiedAssociation.''