Keywords

1 Introduction

Although in recent years the number of digital systems and solutions providing location based services for everyday activities has been massively growing, accompanied by an increasingly wider spectrum of final applications from general tourism to specific sports, the design of the information systems that support them is still very much problem-oriented. In most cases, each application is supported by its own geographic information system. Lately there are some approaches that try to combine data from multiple sources to provide a better user experience. Most often than not, these extra sources of input are not meaningful and act merely as an extension or augmentation of the user’s physical context, providing extra data that not always adds extra value to the service. Other recent approaches extend the services they provide by adding new services that when integrated, significantly enrich the user experience. One example of this is the inclusion of data from public transport systems into route calculation, which not only enriches the service provided but also extends the target audience. Although very successful in their implementation, these approaches focus only on adding new value by adding new integrated services, as new services usually mean new audience. But they are still rigid internally, being designed with a very specific purpose in mind.

In this work, a new approach on the design of geographic information systems is presented which focus on reaching new audiences by adding versatility in terms of target users to its database internal design. This approach does not exclude the idea of adding and integrating new services as seen in similar works, but is focused on designing an information system capable of storing data in a way in which different sets of users may access different sets of information according to their needs, or limitations. Accessibility is one of the major examples of how adding new services not always leads to a greater audience, as new services are usually designed to reach new individuals of the same audience. As an example, visually impaired users are one type of users with disability that represent a target audience with different characteristics, needs and limitations than users with motor impairment. These two types of audience are also very different from users who use geographic information systems for tourism. These are three examples of audiences that would greatly benefit from one versatile geographic information system, which, by design, could be used to reach different audiences, using different client applications, but of course this concept may very well extend to other types of audience.

In this paper, Sect. 2 briefly describes the most common approaches for storing and delivering geographic information to ‘domestic’ users (non-professional). Section 3 describes the proposed design approach to enhance accessibility and universal access. This section describes the features intended, as well as the way the geographic information system is implemented to provide them. Finally, Sect. 4 presents some final remarks.

2 Related Work

Although some progress has been made in extending geographic information system technologies to include spatial analytic techniques, methods which involve relations and accessible connections between locations have rarely been developed [1]. The main cause for this is that the typical ways of data representation depends on representing all geographic information using simple points, lines and polygons, or some combination of them, and phenomena which builds relationships on top of these elements adds complexity to analysis which GIS vendors regard as being too specific to the wide range of applications. However, the extension of GIS systems to include analysis and modeling methods, which directly deal with these spatial interactions, is essential to achieve potential as a general-purpose tool [2]. In this sense, some works have been developed to include such considerations into GIS systems and data analysis [3]. Although some approaches have been created to simplify some of the techniques, typically these systems have some complexity.

Another consideration when designing a GIS for all, is the right for everyone to be able to use them, regardless of their physical limitations. In this sense, visually impaired users, or people with mobility limitations find themselves at big disadvantage, mainly due to the lack of information specifically directed to them assist them. In the last decades some approaches and guidelines have been suggested to create such systems [4]. These systems are, usually, very problem-oriented and use proprietary geographic information systems, as proposed by the models typically proposed in the field [5,6,7,8].

The idea that information can be stored in one place for different applications has generated the idea of creating information systems that use layers to store data with multi-purpose in mind [9]. However, the actual implementations of this concept usually try to combine data from multiple sources to provide a better user experience. Most often than not, these extra sources of input are not meaningful and act merely as an extension or augmentation of the user’s physical context, providing extra data that not always adds extra value to the service [10, 11].

Using the experience and input from the concepts reviewed in this section, as well as continuing previous work [12] by the authors, in this work a web-based geographic information system that promotes accessibility and universal access is proposed.

3 The Proposed Geographic Information System

This work presents the design of a geographic information system that can be used to store points of interest beyond the scope of what is considered as traditional, like monuments, buildings, streets or touristic attractions. It is also intended to store special points of interest like zebra crossings, stairs or dangerous zones (areas). In fact, any point of interest, of any kind, may be added using the approach presented in this section. An awareness level is also an attribute of each point of interest as obviously a user with motor or visual impairment must be much more aware of some obstacles than of other spatial features. Route branch classification is another concept used in this work, as a user with motor impairment has different limitations and requirements than users with other mobility restrictions. Using the concepts of awareness and route classification, all the information can be grouped into lists of layers that have been stored with a specific audience in mind. Together with an appropriate interface, client applications can use filtered data from the information system to provide customized experiences for different target users, according to their limitations, disability or general application purpose. The web interface designed to manage the all the information is also described in this section, showing practical examples of how a list of points of interest and special routes can be designed to feed the client application developed for the CE4Blind project, helping blind users to navigate.

All the concepts described in this work can be used to extend the number of different audiences, showing how one single geographic information system can be designed with universal access in mind, allowing to reach different audiences, with distinct purposes.

3.1 System Architecture

The platform’s implementation is based in three fundamental parts: the definition of a well-organized database structure where the information stored can be adequately managed; the development of an intuitive, user-friendly, back office where a system administrator can manage the information stored; and, a communication channel where the different mobile application (user side) can access the filtered information, according to the use case (Fig. 1).

Fig. 1.
figure 1

System architecture.

The practical implementation of the system has been made using recent technologies directed to the development of web-based applications. On the server side, the programming language used was PHP (Hypertext Preprocessor) and the Laravel framework. On the client side, Bootstrap is used to provide for a user-friendly and responsive interface. Responsiveness allows for data visualization across many different devices. Being a web application, in addition to the technologies already enumerated, Javascript and jQuery are also used to add fluidity to the dynamic interface. The API Javascript Google Maps is used for geo-referencing purposes. All data is stored in a MySQL database.

3.2 Information Management – Back Office

The back office offers access to different types of users, with different access levels, or permissions. For the practical implementation, two types of users have been created: an ‘administrator’ type, with a very large set of permissions, and an ‘editor’ with less permissions. An authentication system was implemented to control the access, adding security to the platform, allowing only for registered users to make changes to the information. The administrator is allowed to manage users (editors). He also has at his service functionalities specially designed to introduce new geo-referenced data, edit it or remove it.

For the geo-referencing of POIs, as well as the geo-referencing of areas (polygons), the process is described as follows: to geo-reference a POI the user must select the option “Insert Tag/Object” to mark the position on the map. In the case of areas, the user must select the option “Insert Polygon”, and draw the desired shape on the map. A polygon is defined by a set of points (coordinates) which, combined, draws any geometric shape (Fig. 2). Polygons can be used to represent areas like buildings or zebra crossings. To enrich the descriptions associated to a POI, it is common to draw an area using the polygon tool, and then associate the POIs with the area they are contained by.

Fig. 2.
figure 2

Back office is used to see and manage geo-referenced items

A practical example of this is the geo-referencing of a zebra crossing. If a zebra crossing is stored using only a POI feature, only its coordinates are known. But if an area is drawn for storing the POI, the final user can be informed about the zebra crossing’s location as well as the area it is contained by.

Together with the geo-referencing process, another functionality is implemented in the proposed system specifically oriented to promote accessibility and universal access. The concept is referred in this work as “awareness”. It tries to mimic the way humans naturally interface with the real world while moving around, being more, or less, aware of their surroundings, by choice. For this purpose, a set of information layers are hierarchically defined to establish awareness levels and contain the corresponding information associated with each level. When a POI (or polygon) is georeferenced, the layers to which it is associated must be defined, and a separate description of the same POI is given to each of the selected layers. In a practical final application, while navigating, the user can define the current awareness level he desires, and receive the corresponding descriptions, filtered from the hierarchical layer description system. When a POI is associated with a polygon, this association may be also described (according to the awareness levels defined).

3.3 Overall Database Design

To address all the features proposed, the database needs to be designed in a way that it stores categorized data, according to the feature implemented. For example, storing a point of interest (POI) requires much more than just storing information about its geographic coordinates. Information like POI type, or the layer it refers to, must also be stored. The same applies to other features being stored, like areas (zones), layers, etc. Spanning this level of categorization to all the features intended creates the overall database design presented in Fig. 3.

Fig. 3.
figure 3

Overall design of the database of the geographic information system.

Each feature implemented is supported by a set of database tables, and the different features, and corresponding sets of tables, have relations between them that provide for the overall functionality and flexibility in the delivery of the information. Some examples are described in the following subsections.

In the context of the proposed database for the geographic information system, points of interest are tagged by their location (Fig. 4). In this sense, a central table named “tags” store information about a POI’s geographic coordinates, altitude and a set of general descriptions associated with the corresponding awareness levels (layering system, as described in Sect. 3.2).

Fig. 4.
figure 4

Tables that store POI information (tags).

The concept used in the tagging of points of interest applies to the geo-referencing of areas (polygons), as well. Information about location, altitude, the relation to the hierarchical layering system and polygon categorization are stored in the tables marked in color in Fig. 5. According to the overall database scheme presented in Fig. 3, information about general objects present in and specific location can be stored using the same concept and methodology. Objects can relate to polygons and layers, and describe elements physically present in an environment that are not POI. These objects can store (e.g.) visual features for computer vision systems.

Fig. 5.
figure 5

Tables that store information about areas (polygons).

Figure 6 represents the data structure used to manage the hierarchical layering system. Each layer is linked above and below (father/son) to another layer. Each layer represents an awareness level and can be linked to tags, objects and polygons.

Fig. 6.
figure 6

Tables that store the hierarchical layering system.

Paths that a user can safely navigate are stored in the geographical information system as well. Paths connect points-of-interest. Naturally, humans can determine multiple paths to a destination based on their preferences and/or limitations. An example of this is the path that a user in wheelchair chooses to reach a destination. The routing system defined in this work uses weights to differentiate between how accessible a path between two consecutive points of interest is (Fig. 7). To create detailed routes between points of interest, a distinction must be made about general points of interest and points that compose a route. Intersections, curves, etc., are stored in the “tags” table. The distinction is that these points, used to connect points of interest, are “invisible” in the map and are used only as support the mechanisms of routing algorithms. This is the main reason why points of interest are not stored in a dedicated “poi” table. POI and route points share similar attributes and are stored in the same “tags” table, with different visibility to the user, using the hierarchical layering system.

Fig. 7.
figure 7

Tables that store the routing information.

4 Conclusion

The main goal of this information system is to promote accessibility and universal access. For this purpose, using the hierarchical layering system, lists of layers can be used to export data for different purposes. An example of this is the application of this concept with visually impaired users and users with mobility restrictions. Some of the information that can be stored in the GIS is common to these two types of users (e.g., services, toilets, building entrances), but they also have different requirements. By using different lists of layers to feed different client applications, users can access filtered data from the geographic system that perfectly suits their needs, or restrictions. This concept can be used to promote accessibility. Another application of this concept is tourism. Lists of layers can be created specifically for touristic purposes, as well, promoting universal access and extending the financial support, at the same time.

The current implementation of this work is already under test at the campus of the University of Trás-os-Montes e Alto Douro, in Portugal. This geographic information system is the source of data for testing an application specifically designed for blind users, under the CE4BLIND project (UTAP-EXPL/EEI-SII/0043/2014). Results from these tests will be released in a follow-up publication.

For the purpose of touristic application, collaboration with the City of Porto, Portugal, has already been planned. The current implementation of this system has been designed in a way that geographic information is stored using different levels of detail (“awareness”). Different lists of layers can be created for different purposes (user profiles), so, different packages of information can be created from this one single pool of data for different final purposes, for groups of people with different requirements or physical limitations, assuring for the promotion of universal access, as proposed in the main goal of this work.