# Interactive 3D Exploration of RDF Graphs through Semantic Planes
## 3 Use Cases
### Use Case #1: Teaching through FOAF  
From the didactic point of view, Tarsier may help to face the learning curve of Semantic Web technologies. Tarsier allows visualizing an RDF graph, being it an ontology or the content of a store and isolate the concepts of interest, while still maintaining a view to the rest of the data. It is not intended to build or modify RDF stores, but rather to explore and debug. It can then be considered as part of a student or developer toolkit, together with ontology editors, dashboards and APIs. The default color scheme, also visible in the following examples, is based on the one proposed by the well-known ontology editor Protege ([[https://protege.stanford.edu/](https://protege.stanford.edu/)]([https://protege.stanford.edu/](https://protege.stanford.edu/))). Classes are depicted with the orange color, datatype and object properties, respectively, with green and blue, while the color dark purple is used to draw individuals. A little modification consists in the adoption of the color red to mark the property rdf:type, which is, in our opinion, very important to quickly identify the relationship between a class and its instances. Lastly, blank nodes are represented with light purple. Based on the FOAF ontology ([[http://xmlns.com/foaf/spec/](http://xmlns.com/foaf/spec/)]([http://xmlns.com/foaf/spec/](http://xmlns.com/foaf/spec/))) (one of the first met by students approaching Semantic Web technologies), we propose a simple knowledge base representing people, projects and relations among them. For the sake of clarity, the size of the knowledge base will be kept small. This is not limiting, since the UI proposes intuitive filtering functions to hide unwanted items. Displaying only a small-sized graph, the potentiality of Tarsier may emerge even through static images. Using Tarsier, we want to visually answer to the following questions:  
1. Is there a person without friends? 2. Is there any un-assigned project? 3. Do Person1 and Person2 share any projects? Before answering the questions, it is important to introduce the knowledge base adopted in these examples. To do so, Table 1 briefly summarizes the content of the knowledge base. The graphical representation of the full graph is instead proposed by Figure 6.  
**Question 1**: _Is there a person without friends?_ This question can be answered in multiple ways. For example, we may issue a SPARQL query such as the following one:
```
PBREFIXrdf:<[[http://www.w3.org/1999/02/22-rdf-syntax-ns#](http://www.w3.org/1999/02/22-rdf-syntax-ns#)]([http://www.w3.org/1999/02/22-rdf-syntax-ns#](http://www.w3.org/1999/02/22-rdf-syntax-ns#))> PBREFIXfsoaf:<[[http://xmlns.com/foaf/0.1/](http://xmlns.com/foaf/0.1/)]([http://xmlns.com/foaf/0.1/](http://xmlns.com/foaf/0.1/))> SELECT?p1 WHERE{?p1 rdf:typefoaf:Person. ?p2 rdf:typefoaf:Person. FILTERNOTEXISTS{?p1 foaf:knows?p2}. FILTERNOTEXISTS{?p2 foaf:knows?p1}. FILTER(?p1!=?p2) }
```
However, [PERSON] provides an even simpler way to achieve this scope through the creation of the following semantic planes. In order, the user should:  
1. Create a first semantic plane containing all the instances of the class foaf:Person. This causes the instances and their datatype properties to be moved above the rest of the knowledge base. 2. Create a second semantic plane containing all the instances of the class foaf:Person that are involved in a friendship relationship (i.e., being either the subject or the object of a foaf:knows \begin{table}
\begin{tabular}{l l} \hline \hline
**OWL Ontology T-Box Content** & \\ \hline Classes (Person, Project \(\in\) foaf) & 2 \\ Object Properties (knows, currentProject \(\in\) foaf) & 2 \\ Database Properties (name, surname, status \(\in\) foaf) & 2 \\ \hline
**OWL Ontology A-Box Content** & \\ \hline Persons & 25 \\ Projects & 5 \\ Links among persons (i.e., foaf:knows) & 250 \\ Links persons-projects (i.e., foaf:currentProject) & 125 \\ \hline \hline \end{tabular}
\end{table} 
Table 1: Use Case #1: Summary of the knowledge base.