## 3 Analysis of the Collaboration in AR Context
### Conceptual Framework to Define Collaboration  
Based on the collaboration characteristics in Section 3.1, we next abstract three service layers where collaboration constructs are managed, from less to more enriched interactive scenarios: (i) the _visualization_ of the Augmented Reality content, (ii) the _interaction_ with the AR elements and (iii) the high-level orchestration of first-two components. Figure 1 shows an outline of the three layers and how they would be instantiated within an example application: the voxel-based collaborative game that will be later detailed in Section 6. Below, each layer is explained in detail. **Layer 0: Visualization. ** This is the most basic level, since there can be no collaboration in AR if users cannot share AR digital elements. This level refers both _information sharing_ and _alignment_ of AR content. First of all, it is possible for all users to share exactly the same AR elements, i.e., that everyone can see exactly the same. However, it is also possible for the sharing process to be _filtered_ according to some rules (e.g., based on hierarchical roles where the user who is at the top of the hierarchy has access to all the information levels while others can only see specific levels depending on the permissions based on their position in the hierarchy). Second, it is also possible that the _shared_ AR elements present the same characteristics (e.g., position in the real world, rotation or scale) for all the users, or on the contrary that they are personalized for each one. At this point, the organization of the collaboration fully relies on the participants. Blocking and interaction have to be accorded by the users during their own collaboration. In this case, speech may be a useful way to regulate collaboration. In other words, the collaboration model is not restricted. **Layer 1: Interaction. ** Once the digital elements are shared among participants, the next step is to allow the users to _interact_ with them. With that, we understand that the AR elements are able to detect user inputs and react accordingly. Let us suppose an AR cube that is positioned in front of the user, who is using a smartphone to visualize it. When the user _touches_ the cube on the screen, it should be able to detect that touch and if necessary, e.g., to execute some application logic such as changing its color. It is also possible that instead of touching, the user performs a _drag_ gesture, which could have a different associated logic, such as making the cube rotate on itself. Therefore, different ways of interacting with the AR elements can be present for a single device. Likewise, for each type of AR device, the ways of interaction with the AR content will be adapted to them. As was the case at level 0, the collaboration model does not present any restrictions. Users will have to organize themselves to regulate the interaction. Thus, the next layer emerges with the aim of automatically orchestrating the collaboration. **Layer 2: Collaboration Management. ** With layer 1, participants are given the ability to interact with AR content. It may be the case that several users decide to interact with the same element at the same time. In principle, there is nothing that prohibits or regulates this situation. How should a hypothetical AR cube react when one user moves it up and another user tells it to move down? in this case the logic of the application is wrapped with an external element, a _Collaboration Model_ (CM). A Collaboration Model is compounded by a set of rules that control all the elements of the collaboration, which can be both visualization and interaction capabilities. The most basic Collaboration Model would be the _Unconstrained_ one, in which no rules are specified. Thus, even in the case that the collaboration management is not explicitly defined, that situation can be associated with a Collaboration model. Another example may be the use of a _Turn-based_ model. In this case, the interaction with the AR elements is restricted only to the user whose turn it is.