There's nothing about attributes in the ArchiMate spec. What you could try is create a UML class diagram, put a UML class on it, select it, Ctrl+I to create a generalization to the ArchiMate element, then Ctrl+Shift+Y to show inherited attributes.
KP - after a bit of trial and error, I did get this to work in that :-
- the UML Class object generalised the Archimate Role instance
- on the diagram, the Class object could be set to show
both its own attributes and attributes inherited from the ArchiMate role. It also can show only the Class' attributes on their own, but you can't seem to show the Inherited attributes on their own - the Class ones always have to be there as well (except when there are no attributes for the class, then the inherited ones do show on their own).
- the Class object can also display its own tags, but any tags on the ArchiMate role object are not inherited and displayed on the Class
- If you change the Class to be a stereotype of the Achimate Role, then it loses the ability to show the attributes and tags.
Now, this is of limited use to me though because I don't want to have to duplicate all ArchiMate objects using UML Classes just to be able to show their attributes. I would also have to do this for other objects that have attributes, like those in BPMN diagrams.
Even though I may not be able to show the attributes of an ArchiMate object, I may still use them to set values that I can then access using queries against the database.
Therefore, what is the best way to easily and (hopefully) automatically add the same core attributes to a set of objects? For instance, my ArchiMate roles all have 4 attributes and 1 tag value, whereas ArchiMate Application Components may have 3 attributes and 4 tags.
How could I ensure that the attributes are automatically added each time I create a new Role or Application Component ? As well as easily being able to add them to all the objects I have already created ?