A key concern in network analysis is the study of social positions and roles of actors in a network. The notion of "position" refers to an equivalence class of nodes that have similar ties to other nodes, whereas a "role" is an equivalence class of compound relations that connect the same pairs of nodes. An open question in network science is whether it is possible to simultaneously perform role and positional analysis. Motivated by the principle of functoriality in category theory we propose a new method that allows to tie role and positional analysis together. We illustrate our methods on two well-studied data sets in network science.