# Multi-Purpose Ontology-Based Visualization of Spatio-Temporal Data: A Case Study on Silk Heritage
## 3 STMaps Visualization Tool
### Multipurpose Ontology-Based Spatio-Temporal Visualization
The format of this file is shown next:  
\"SceneList\": { \"Scene\": { \"name\":\"<name>\", \"based\":\"<URI_DynamicMap>\"|\"<URI_TimeMap>\", \"mapData\":\"<data_Source\":\"<data_source_key\">\", \"acomLLevels\":\"<zcom_Levels_on_map>\", \"rieucs\":\"2013141\", \"clusters\":{ \"fromLevel\":\"<level_from_the_clusters_will_be_shown>\", \"toLevel\":\"<level_to_the_clusters_will_be_shown\">, \"fromDataLevel\":\"<level_from_the_point_markers_will_be_showns\", \"numQuads\":\"<num_of_quads_for_clustering_on_the_top_level>\" }, \"timeIntervals\":\"2131415\" } } \"ClassesList\": { \"Class\": { \"LIRI\":\"<URI>\", \"SceneConfiguration\": { \"sceneName\":\"<name_of_the_scene>\", \"pointRepresentation\":\"<URI_File>|Sphere|Cube|Cylinder\", \"pointColor\":\"<color>\", \"clusterRepresentation\":\"<URI_File>|Sphere|Cube|Cylinder\", \"spatialDataProperties\":\"long\";\"<longitude_name_on_DataFile>\", \"lat\":\"<latitude_name_on_DataFile\" } \"timeDataProperties\":{ \"from\":\"<from_name_on_DataFile>\", \"to\":\"<to_name_on_DataFile>\" } \"nameProperty\":\"<name_on_DataFile>\", \"relatedToProperty\":\"<relation_name_on_DataFile>\", \"relation\":| \"based\":\"<URI_Direct_Linking>\",\"<URI_Relation_Ring>\", \"color\":\"<color>\" } } } } } } } } ```  
A key aspect of STMaps is that the stylesheet file can easily change the way data are visualized and also relates to VISO. Although VISO is meant to be linked to RVL, STMaps does not use RVL. The use of RVL in an ontology-based visualization system implies the modification of the DO in order to incorporate the attributes RVL needs to perform the mapping. As this solution is invasive and cumbersome, we have taken a different approach. Instead, we use the VISO ontology to define the ways in which the elements could be visualized, but we map these visualization-related semantic data with the items to be visualized by means of the stylesheet file. With this file, we provide the information STMaps needs to link each visual element defined in VISO with the corresponding property in the datasets. An important assumption here is that there should be spatio-temporal data. Therefore, space and time should be provided for each item. In addition, we have extended the VISO ontology in order to make it more suitable for the goals intended for STMaps. VISO is a fantastic way to formalize any visualization system, but it was created to represent how to visualize data in a device-independent way. This is a great idea, but it has problems. One problem is related to this device independence, which avoids there being a concrete specification about how to visualize the data. For instance, very important aspects such as position, height, width, scale or resolution are not included in the formalization. We propose the definition of specific stylesheets to define those and other specific details. Each specific visualization will use its stylesheet (_fromDataLevel property_) in order to adapt to the device. In addition, the VISO ontology is highly oriented to a 2D visualization. Hence, it is necessary to extend the current classes in order to formalize a 3D graphic visualization. Table 1 lists the main extensions added to VISO to manage 3D graphic visualization and other concepts needed for STMaps. STMaps uses WGS84 (World Geodetic System 1984) coordinates to create a map onto where the objects of the DO will be represented. These coordinates are interpreted and mapped into a texture representing a world map in Unity. The spatial data received by STMaps are used to narrow down this map. If there are no data to represent, STMaps will display a world map. However, if there are data, the map will be zoomed in and only the geographical area covering the data will be shown. From the section of the world map defined by the spatial coordinates received from the objects of the DO, STMaps creates a quadtree-based representation. This allows dividing the map in clusters and grouping the data according to the zoom level (as in [76; 77; 78]).