Next Article in Journal
Adjustment and Assessment of the Measurements of Low and High Sampling Frequencies of GPS Real-Time Monitoring of Structural Movement
Next Article in Special Issue
The Performance Analysis of Space Resection-Aided Pedestrian Dead Reckoning for Smartphone Navigation in a Mapped Indoor Environment
Previous Article in Journal
Spatiotemporal Information Extraction from a Historic Expedition Gazetteer
Previous Article in Special Issue
Indexing for Moving Objects in Multi-Floor Indoor Spaces That Supports Complex Semantic Queries
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Indoor Multi-Dimensional Location GML and Its Application for Ubiquitous Indoor Location Services

1
Faculty of Geosciences and Environmental Engineering of Southwest Jiaotong University, 999 Xi’an Road, Chengdu 611756, China
2
State-Province Joint Engineering Laboratory of Spatial Information Technology for High-Speed Railway Safety, 999 Xi’an Road, Chengdu 611756, China
3
Collaborative Innovation Center for Geospatial Technology, 129 Luoyu Road, Wuhan 430072, China
4
State Key Laboratory of Information Engineering in Surveying Mapping and Remote Sensing, Wuhan University, 129 Luoyu Road, Wuhan 430072, China
5
3D Geoinformation, Urbanism, Delft University of Technology, Julianalaan 134, 2628 BL Delft, The Netherlands
6
School of Resources and Environment, University of Electric Science and Technology of China, 2006 Xiyuan Avenue, West Hi-tech Zone, Chengdu 611731, China
*
Author to whom correspondence should be addressed.
ISPRS Int. J. Geo-Inf. 2016, 5(12), 220; https://doi.org/10.3390/ijgi5120220
Submission received: 18 August 2016 / Revised: 9 November 2016 / Accepted: 24 November 2016 / Published: 29 November 2016
(This article belongs to the Special Issue 3D Indoor Modelling and Navigation)

Abstract

:
The Open Geospatial Consortium (OGC) Geography Markup Language (GML) standard provides basic types and a framework for defining geo-informational data models such as CityGML and IndoorGML, which provide standard information models for 3D city modelling and lightweight indoor network navigation. Location information, which is the semantic engine that fuses big geo-information data, is however, discarded in these standards. The Chinese national standard of Indoor Multi-Dimensional Location GML (IndoorLocationGML) presented in this study can be used in ubiquitous indoor location intelligent applications for people and robots. IndoorLocationGML is intended as an indoor multi-dimensional location information model and exchange data format standard, mainly for indoor positioning and navigation. This paper introduces the standard’s main features: (1) terminology; (2) indoor location information model using a Unified Modeling Language (UML) class diagram; (3) indoor location information markup language based on GML; and (4) use cases. A typical application of the standard is then discussed. This standard is applicable to the expression, storage, and distribution of indoor multi-dimensional location information, and to the seamless integration of indoor–outdoor location information. The reference and basis are therefore relevant to publishers, managers, users, and developers of indoor navigation and location-based services (LBS).

1. Defining IndoorLocationGML

The technology of navigation and positioning services is vital for national security, economic development, and livelihood. It supports the Internet of Things (IoT), Smart Earth, and disaster mitigation and relief through the supply of fundamental information models, infrastructures, and services. The requirements for highly accurate indoor–outdoor seamless navigation and positioning services are rapidly growing as the use of smart portable devices and mobile Internet increases. The indoor environment differs from the outdoors in many aspects. By default the outdoor spatial information is handled by traditional geographic information science, which needs various adaptations for indoor environments. The third dimension is a major factor in indoor spatial information, as the environment consists of multiple surfaces, whereas the outdoors can be represented by one common surface. Unlike the outdoors, indoor spaces are closed, narrow, private, and have obstacles, hidden objects, and no global positioning system (GPS satellite signals do not reach indoors) [1]. The basic concepts, data models, and standards for outdoor information are therefore not suitable [2,3], but end-users still require seamless, useful, and reliable indoor information.
The International Organization for Standardization (ISO), the OGC, and many national standards throughout the world focus on standardising spatial information and models that support geo-information-related applications. The OGC has established three standards relevant to our study. The first, the OpenGIS Geography Markup Language (GML) Encoding Standard absorbed many previous ISO standards and provides ubiquitous geographical models [4]. The second, the OGC City Geography Markup Language (CityGML) Encoding Standard, based on GML, defines a multiresolution three-dimensional model containing geometrical information, semantics, topology, and the appearance of artificial structures in urban or regional contexts. This standard can be used for advanced analysis and visualisation, and supports applications such as indoor–outdoor navigation [5]. The Levels-of Detail (LOD) 4 of CityGML defines very detailed indoor objects, which can be used to support indoor-related applications. The third, the IndoorGML standard, focuses on representing the properties and connectivity of indoor space and providing spatial feature references, instead of representing architectural components [3].
Several 3D building modelling standards such as CityGML, Keyhole Markup Language (KLM), and Industry Foundation Classes (IFC) deal with the interior space of building from geometric, cartographic, and semantic points of view. Even the most relevant standard, IndoorGML, only focuses on modelling indoor space for lightweight navigation purposes, required for the components of navigation networks. These existing standards lack the means to express the most basic indoor location information. Indoor location information constitutes the semantic engine that integrates big data, aggregates resources, fuses information, and produces values, and is an important consideration in the context of emergency response [6,7]. Typical use cases of indoor location information are indoor map representation, e.g., [8,9,10], navigation for humans and robots, e.g., [11,12,13,14], and indoor facility management. To enable people and robots to be more aware of the indoor environment, indoor multi-dimensional location models have been developed and their potential applications investigated [15,16,17], but the existing indoor location description models only provide basic absolute and relative location concepts; they are lacking rigorous sematic relationship description, which limits their broader user-oriented applications. Several Chinese positioning systems have recently been developed, including the Beidou Xihe system, which provides seamless indoor–outdoor and real-time positioning services but no means of relative localisation. The standardisation of indoor location information is therefore required. The Chinese national standard Indoor Multi-Dimensional Location GML (IndoorLocationGML) has recently been initiated, aimed at facilitating the development of ubiquitous indoor location intelligent applications for both people and robots. The goal is to create an indoor multi-dimensional location information model and exchange data format standard for indoor positioning and navigation. Details of the main concepts, models, definitions, and application of IndoorLocationGML are discussed in this paper.

2. Description Model of Multi-Dimensional Indoor Location Information

The indoor multi-dimensional location information model is the basis of indoor navigation and location-based services and the foundation of indoor map expression. It defines the components of location information, and describes a multi-dimensional location model based on space and event. It covers relevant definitions and supports indoor location-based applications.

2.1. Terminology

Terms and definitions used in the standard are listed in Table 1.

2.2. Indoor Location Information Model Using UML Diagram

The indoor location information model in the IndoorLocationGML standard is shown in Figure 1, using the UML class diagram.
This model follows the conventions of the UML schema of GML 3.2.1, and many of the types are directly or indirectly inherited from GML types.
AbstractIndoorLocation is defined as an abstract class in this model. Two classes, indoor absolute location and indoor relative location, are subclasses of this abstract class. AbstractIndoorLocation class has three basic attributes:
  • life: Represents the timeliness of indoor locations.
  • trs: Represents the temporal characteristic of indoor locations.
  • crs: Represents the local coordinate reference system of indoor locations. The coordinate reference system used in indoor geometrical location measurement should be the three-dimensional Cartesian coordinate system.
IndoorAbsoluteLocation is a specialisation of AbstractIndoorLocation representing an indoor location that is non-changeable. It is described by a geometrical coordinate in the given coordinate reference system.
IndoorRelativeLocation is another specialisation of AbstractIndoorLocation. To describe a relative location, at least one reference location must be specified. To specify a reference location, the existing absolute location can be used. It is composed of:
  • Relative Geometrical Location: Described by values of distance and direction (horizontal and vertical angles) relative to a reference object.
  • Relative Semantic Location: Described by semantics such as direction description (e.g., up, down, left, right, front, back), distance description (including a numerical value of distance and a semantic description such as: “Two meters away from the reference object“), order description (previous and next), and topology description (contain, adjacency and connectivity) relative to one or more reference object(s).

2.3. Indoor Location Information Markup Language Using GML

The XML schema for the Indoor Location Information data model is defined as an application schema of GML. The rules defined in GML3.2.1 is complied with when mapping from UML schema to XML Schema.

2.3.1. IndoorLocation

<AbstractIndoorLocationType> is an abstract class inherited from gml:AbstractFeatureType; it act as the base class for classes that represent indoor locations. Its content model contains three element properties for attaching a temporal reference system and a spatial reference system and specifying the life cycle to an indoor location object. <IndoorLocation> is a root element of IndoorLocationGML. It is aggregated with IndoorAbsoluteLocation and IndoorRelativeLocation.
Ijgi 05 00220 i001a
Ijgi 05 00220 i001b

2.3.2. IndoorAbsoluteLocation

<IndoorAbsoluteLocation> is an element representing an absolute location in indoor space (enclosed space), and is derived from the class <AbstractIndoorLocation>. It contains a “coordinate”, which is GeometricalCoordinateType type. GeometricalCoordinateType contains a coordinate element which is of type gml:DirectPositionType. gml:DirectPositionType has two abbributes, srsName and srsDimension. The former one is optional and can be used to refer to an existing coordinate reference system, and the latter one can be used to specify the dimension of a point.
Ijgi 05 00220 i002

2.3.3. IndoorRelativeLocation

<IndoorRelativeLocation> is an element representing a location in indoor space relative to a specified reference object. Its content model contains two properties describing a relative location from geometrical and semantic perspectives.
Ijgi 05 00220 i003

2.3.4. RelativeGeometricalLocation

<RelativeGeometricalLocation> is an element used to represent the geometrical part of a relative location. It is an aggregation of a list of geometrical location descriptions, each of which is described by the distance from and the horizontal and vertical angle to a reference object.
Ijgi 05 00220 i004a
Ijgi 05 00220 i004b

2.3.5. SemanticLocation

<SemanticLocation> is an element used to represent the semantic part of a relative location. It includes:
  • The floor property is an xs:int number representing the floor the location object is on.
  • The function property is used to describe the function of the location object, and is defined as gml:CodeType type.
  • The name property is an xs:string representing the name of an indoor location.
  • The roomNumber is an xs:string that is restricted to a string of combination of digits and letters.
  • The semanticDescription is SemanticLocationDescription type; it is composed of several semantics to describe a location relative to a reference object, which are:
    • directionDescription, which is DirectionDescriptionType type, and is a list of enumeration values of strings to describe direction relative to the reference such as UP, DOWN, LEFT, RIGHT, FRONT, and BACK.
    • distanceDescription is described by a gml:description type and a gml:LengthType. The former is described semantically and the latter is an xs:double value with a gml:uom attached.
    • orderDescription uses NEXT and PREVIOUS to describe the sequential relative location to the reference object.
    • topologyDescription uses CONTAIN, ADJACENCY, and CONNECTIVITY to describe the topology relationships of a location to the reference object.
Ijgi 05 00220 i005a
Ijgi 05 00220 i005b

2.3.6. ReferenceObject

<ReferenceObject> is an element used as a reference to describe a relative location in indoor space. Its content model contains a geometricalDescription element property to describe the absolute geometrical location of the reference object.
Ijgi 05 00220 i006

3. Use Cases of IndoorLocationGML

In the context of indoor applications, we may be concerned about the location of a cellular space, a person or robot, an object (facility, exhibit, etc.), or the location of nodes of a navigational path. Some of these locations are static while others are dynamic. Indoor locations may be divided into the location of observers and of reference objects. Hence, a matrix can be derived from this classification method (Figure 2).
From this point of view, the following use cases can be concluded (Table 2):
To demonstrate the standard, we use a model of the 4th teaching building on the Xipu campus of Southwest Jiaotong University (Figure 3), and typical use cases are given in the following sections.

3.1. Use Case of Indoor Location Maps

Indoor location maps are typically represented with networks composed of nodes and edges, which usually contain multiple layers of indoor space (Figure 4).
A node usually represents a cellular element of indoor space (e.g., rooms, corridors, doors, etc.), and an edge represents the topology relationship between two nodes, such as connectivity and adjacency. In addition to the basic cellular network of indoor space, more information can be provided by IndoorLocationGML, such as distance, directional relationship, and order relationship between two nodes. Semantics such as floor, function, and the name of nodes can be integrated in this framework to create a semantic-rich indoor location map.
Nodes are fixed and non-changeable elements of the framework of an indoor location map, therefore IndoorAbsoluteLocation is suitable for representing the geometric characteristics of nodes. The gml:id property of IndoorAbsoluteLocation that is inherited from gml:AbstractFeature, can be specified to guarantee that each node has a unique identifier, in case of later reference. A node can thus be described with the following XML document.
< IndoorAbsoluteLocation gml:id="0010">
    <life gml:id="TP01">
        <gml:TimePeriod>
            <gml:begin>
                <gml:TimeInstant gml:id="TI01">
                    <gml:timePosition>2005-04-06</gml:timePosition>
                </gml:TimeInstant>
            </gml:begin>
            <gml:end>
                <gml:TimeInstant gml:id="TI02">
                    <gml:timePosition>2035-04-06</gml:timePosition>
                </gml:TimeInstant>
            </gml:end>
        </gml:TimePeriod>
    </life>
    <coordinate srsName="#mycrs" srsDimension="3">
        <gml:pos>12.5 6.4 22.0</gml:pos>
    </coordinate>
</IndoorAbsoluteLocation>
A node is represented by a coordinate in a given coordinate reference system. “#mycrs” here is the unique identifier of a coordinate reference system defined in a CRS dictionary or elsewhere. The node also contains information describing its duration from a time position.
Edges between two nodes contain information describing their relative relationships, and thus can be represented by IndoorRelativeLocation. Suppose we have two nodes whose IDs are “0010” and “0011”. Node “0011” is chosen as the reference, and the IndoorRelativeLocation of node “0010” can be described as follows.
<IndoorRelativeLocation gml:id="0010-0011">
    <geometricLocation>
        <geometricDescription>
            <reference xlinks:href="#0011"/>
            <direction>
                <horizontalAngle>
                    <Degree>270</Degree>
                    <ReferenceDirection>North</ReferenceDirection>
                </horizontalAngle>
                <verticalAngle>
                    <Degree>0</Degree>
                    <ReferenceDirection>Up</ReferenceDirection>
                </verticalAngle>
            </direction>
            <distance >5</distance>
        </geometricDescription>
    </geometricLocation>
    <semanticLocation>
        <semanticDescription>
            <reference xlinks:href="#0011"/>
            <description >Node 0011 is the door node of room 4520</description>
            <direction>FRONT</direction>
            <order>NEXT</order>
            <distance>
                <description>There are 6 meters from the center of room 4520 to the back door</description>
                <distance>6</distance>
            </distance>
        </semanticDescription>
        <floor>5</floor>
        <function>Meeting room</function>
        <name>RoomNode0010</name>
        <roomNumber>4520</roomNumber>
    </semanticLocation>
</IndoorAbsoluteLocation>
The entire indoor location map can then be represented with nodes and the possible relations between nodes.

3.2. Use Case of Indoor Navigation for Humans and Robots

Indoor navigation for humans and robots may differ from the objects they are interested in. In the situation of a large shopping mall, humans may be concerned about shops, handrails, elevators, etc. and robots may be concerned about obstacles (non-navigable objects), doors, sensors (AP, RFID), etc. In emergency situations, objects that humans or robots are concerned with may differ from those in normal situations, e.g., the location of escape ladders, extinguishers, fire spots, the tendency of fire to spread, etc. Robots may also be concerned about the location of humans, and trying to rescue them. Humans can understand the environment more easily than robots, so, different indoor location maps and navigation paths should be provided for humans and robots.
A navigation path is derived from the indoor location map by calculating the best path from the start point to destination. It consists of nodes and directional edges, and to represent it is similar to the representation of indoor location maps. Additional reference objects can be included in the path as landmarks. For example, navigation for humans can add easily recognisable rooms as reference objects at a corner of the path, to help people easily recognise the path node. Information on the location of obstacles and sensors (AP, RFID) is more relevant to robots, enabling them to better understand the environment (see Figure 5).
A navigation path for humans is demonstrated in the following code list; the navigation path for robots is similar to the navigation path for humans, except that there are more nodes on the path and different references are selected such as APs and RFIDs.
<IndoorLocation gml:id="IndoorPath-Human">
    <!--Nodes of path are described with IndoorAbsoluteLocation-->
    <IndoorAbsoluteLocation gml:id="HP01" crs="#indoorCRS">
        <coordinate srsDimension="3">
            <gml:pos>7.22 115.13 17.00</gml:pos>
        </coordinate>
    </IndoorAbsoluteLocation>
    <IndoorAbsoluteLocation gml:id=" HP02" crs="#indoorCRS">
        <coordinate srsDimension="3">
            <gml:pos>7.22 107.11 19.00</gml:pos>
        </coordinate>
    </IndoorAbsoluteLocation>
    <IndoorAbsoluteLocation gml:id=" HP03" crs="#indoorCRS">
        <coordinate srsDimension="3">
            <gml:pos>8.22 107.11 19.00</gml:pos>
        </coordinate>
    </IndoorAbsoluteLocation>
    <IndoorAbsoluteLocation gml:id=" HP03" crs="#indoorCRS">
        <coordinate srsDimension="3">
            <gml:pos>8.22 8.12 19.00</gml:pos>
        </coordinate>
    </IndoorAbsoluteLocation>
    <IndoorAbsoluteLocation gml:id=" HP03" crs="#indoorCRS">
        <coordinate srsDimension="3">
            <gml:pos>11.00 8.12 19.00</gml:pos>
        </coordinate>
    </IndoorAbsoluteLocation>
    <!-- Indoor relative location of HP03 relative to room 4548-->
    <IndoorRelativeLocation gml:id="HP03-4548">
        <geometricLocation>
            <geometricDescription>
                <reference xlinks:href="#F5-4548"/>
                    <direction>
                        <horizontalAngle>
                            <Degree>120</Degree>
                            <ReferenceDirection>North</ReferenceDirection>
                        </horizontalAngle>
                        <verticalAngle>
                            <Degree>0</Degree>
                            <ReferenceDirection>Up</ReferenceDirection>
                        </verticalAngle>
                    </direction>
                    <distance >5</distance>
              </geometricDescription>
        </geometricLocation>
        <semanticLocation>
            <semanticDescription>
                <reference xlinks:href="#F5-4548"/>
                <description >Node F5-4548 is a office in the 5th floor of office area</description>
                <direction>LEFT</direction>
                <order>PREVIOUS</order>
                <distance>
                    <description>There are 5 meters from node HP03 to room 4548</description>
                    <distance>5</distance>
                </distance>
            </semanticDescription>
            <floor>5</floor>
            <function>Path node</function>
            <name>HP03</name>
            <roomNumber>0000</roomNumber>
        </semanticLocation>
    </IndoorRelativeLocation>
    ...Other relative locations
</IndoorLocation>
The location of humans or robots changes constantly in the process of navigation, and is therefore dynamic. The location of moving objects should be updated in a fixed frequency, which can be represented by a location sequence where each location corresponds to a time instance. Indoor location as defined in IndoorLocationGML has a life property represented by gml:TimePeriod, so it is suitable for describing the dynamic location sequence by specifying each location’s start and end time points.

3.3. Use Case of Indoor Objects Management

Location information is a key factor in indoor objects management. Indoor objects refer to indoor facilities in a building, books in a library, exhibits in a museum, etc. Facilities are objects such as extinguishers, circuit controllers, and smoke detectors (see Figure 6), which are an important part of indoor installations in both normal and emergency situations. Precisely tracking the location of an indoor facility at any time is important in the operation process of a building.
For demonstrating the example above, a code list is given as follow:
<IndoorLocation gml:id="Facilities">
    <!—Location of indoor facilities are described with IndoorAbsoluteLocation-->
    <!—Air conditioner-->
    <IndoorAbsoluteLocation gml:id="AC01" crs="#indoorCRS">
        <coordinate srsDimension="3">
            <gml:pos>14.00 13.12 19.00</gml:pos>
        </coordinate>
    </IndoorAbsoluteLocation>
  …
    <!—Extinguisher-->
    <IndoorAbsoluteLocation gml:id=" EX01" crs="#indoorCRS">
        <coordinate srsDimension="3">
            <gml:pos>8.00 17.00 19.50</gml:pos>
        </coordinate>
    </IndoorAbsoluteLocation>
  …
    <!-- Indoor relative location of AC01 relative to room 4520-->
    <IndoorRelativeLocation gml:id="AC01-4520">
        <geometricLocation>
            <geometricDescription>
                <reference xlinks:href="#F5-4520"/>
                    <direction>
                        <horizontalAngle>
                            <Degree>120</Degree>
                            <ReferenceDirection>North</ReferenceDirection>
                        </horizontalAngle>
                        <verticalAngle>
                            <Degree>0</Degree>
                            <ReferenceDirection>Up</ReferenceDirection>
                        </verticalAngle>
                    </direction>
                    <distance >3</distance>
              </geometricDescription>
        </geometricLocation>
        <semanticLocation>
            <semanticDescription>
                <reference xlinks:href="#F5-4520"/>
                <description >AC01 is in room 4520 and placed near the back window of room 4520</description>
                <direction>LEFT</direction>
                <order>NEXT</order>
                <distance>
                    <description>There are 3 meters from AC01 to the centre of room 4520</description>
                    <distance>3</distance>
                </distance>
                <topology>CONTAIN<topology>
            </semanticDescription>
            <floor>5</floor>
            <function>Air conditioner</function>
            <name>AC01</name>
            <roomNumber>4520</roomNumber>
        </semanticLocation>
    </IndoorRelativeLocation>
	...Other relative locations
</IndoorLocation>
The library, floors, bookshelves, and books can be arranged topologically, as demonstrated in Figure 7. The precise indoor location (spatial or temporal) of the books can be described by using IndoorLocationGML.

4. Seamless Indoor–Outdoor Navigation Example

IndoorLocationGML and IndoorGML or any other standards defined by utilising the basic types follow the inheritance hierarchical structures of GML and are known as the application schema of GML. GML defines a framework of geo-information by providing basic types, the principles of class definition and inheritance, and describing the relationships between classes. Thus, different GML application schemas are easily integrated. Elements in different XML documents can have an gml:id property, and can then be referenced as external objects facilitated by xlink:href.
IndoorLocationGML itself is used to describe indoor multi-dimensional location information. Navigating from outdoors to indoors requires a combination of outdoor and indoor paths. Every indoor space contains at least one entrance connecting it with the outdoor space. In IndoorGML, an entrance is represented by an anchor node, which is used for connecting and representing the topology relationship between the outdoor and indoor spaces. An anchor node can also contain parameters for coordinating transformations, enabling a seamless location transformation from outdoors to indoors (see Figure 8).
The IndoorGML document, the dataset of outdoor ground transportation network, and the IndoorLocationGML document can be combined to provide seamless indoor–outdoor LBS. The anchor node should be defined in both the IndoorGML document and the outdoor dataset to connect the indoor space to the outdoors. Though IndoorGML supports indoor multi-layered networks for indoor navigation, IndoorLocationGML can provide more precise indoor multi-dimension location information and rich semantics, as a complement to IndoorGML, applying location information to indoor LBS. As discussed in Section 3.2, dynamic localisation and navigation can be achieved by using IndoorLocationGML.
The navigation path is composed of an outdoor and an indoor section. Outdoor navigation is typically facilitated by road networks, which consist of road segments. A road segment can be represented by a list of nodes, and each node has a unique ID and a pair (longitude, latitude) or a trio (longitude, latitude, altitude) of coordinates. The indoor section is instead represented by a list of three-dimensional coordinates in a Cartesian coordinate system. An example of navigating from the starting point to the destination (Room 4520) is given below (Figure 9). In this example, we create three pieces of GML code: the first part is described with GML and represents the outdoor section of the path; the second is the indoor section of the path, which is described with IndoorLocationGML; a series of nodes are represented with IndoorAbsoluteLocation and the relative location is also provided for demonstration of this standard; the third part is described with IndoorGML, and an anchor node is used to connect the indoor and outdoor section of the path.
<!-- Outdoor transportation network data set, filename: OutdoorExp.xml-->
<gml:Point srsName="#geodeticCRS" id="NodeListofOutdoor" axisLabels="lat long alt" uomLabels="deg deg m">
    <gml:pos id="Start-point">30.766376990623694 103.9879810720322 524</gml:pos>
    <gml:pos id="Outdoor-P2">30.766458439227996 103.9882126539487 524</gml:pos>
    <gml:pos id="Outdoor-P3">30.766341659288557 103.9882716625471 524</gml:pos>
    <gml:pos id="Outdoor-Entrance">30.766320156242887 103.9882323145866 524</gml:pos>
</gml:Point>
<!-- IndoorLocationGML data set, filename: IndoorLocationExp.xml-->
<IndoorLocation gml:id="IndoorPath">
        <!--Nodes of path are described with IndoorAbsoluteLocation-->
        <IndoorAbsoluteLocation gml:id="F1-Entrance" crs="#indoorCRS">
    <coordinate srsDimension="3">
    <gml:pos>7.22 115.13 0.74</gml:pos>
    </coordinate>
        </IndoorAbsoluteLocation>
        <IndoorAbsoluteLocation gml:id="F1-P2" crs="#indoorCRS">
    <coordinate srsDimension="3">
    <gml:pos>7.22 107.11 0.74</gml:pos>
    </coordinate>
        </IndoorAbsoluteLocation>
		...Nodes F1-P3, F1-P4, F1-P5, F2-P6, F2-P7, F2-P8, F2-P9,
		F3-P10, F3-P11, F3-P12, F3-P13, F4-P14, F4-P15, F4-P16,
		F4-P17, F5-P18, F5-C-P19, F5-C-P20, F5-C-P21 are omitted here
		<IndoorAbsoluteLocation gml:id="F5-C-P22" crs="#indoorCRS">
    <coordinate srsDimension="3">
    <gml:pos>7.22 8.12 19.00</gml:pos>
    </coordinate>
        </IndoorAbsoluteLocation>
        <IndoorAbsoluteLocation gml:id="F5-Room5420" crs="#indoorCRS">
    <coordinate srsDimension="3">
    <gml:pos>11.00 8.12 19.00</gml:pos>
    </coordinate>
        </IndoorAbsoluteLocation>
        <!-- Indoor relative location of F5-C-P20 relative to restroom1-->
        <IndoorRelativeLocation gml:id="F5-C-P20-F5-Restroom1">
    <geometricLocation>
    <geometricDescription>
    <reference xlinks:href="#F5-Restroom1"/>
    <direction>
    <horizontalAngle>
    <Degree>300</Degree>
    <ReferenceDirection>North</ReferenceDirection>
              </horizontalAngle>
    <verticalAngle>
    <Degree>0</Degree>
    <ReferenceDirection>Up</ReferenceDirection>
              </verticalAngle>
            </direction>
            <distance >5</distance>
          </geometricDescription>
        </geometricLocation>
    <semanticLocation>
    <semanticDescription>
    <reference xlinks:href="#F5-Restroom1"/>
    <description >Node F5-Restroom1 is a restroom in the 5th floor of office area</description>
    <direction>Right</direction>
    <order>NEXT</order>
    <distance>
    <description>There are 5 meters from node F5-C-P20 to the restroom1</description>
    <distance>5</distance>
    </distance>
          </semanticDescription>
    <floor>5</floor>
          <function>Path node</function>
          <name>F5-C-P20</name>
    <roomNumber>0000</roomNumber>
        </semanticLocation>
    </IndoorRelativeLocation>
	    ...Other relative locations
</IndoorLocation>
<!-- IndoorGML data set, filename: IndoorGMLExp.xml-->
<AnchorSpace>
    <externalReference>
        <externalObject>
            <name>Outdoor-Entrance</name>
        </externalObject>
        <externalObject>
            <name>F1-Entrance</name>
        </externalObject>
    </externalReference>
</AnchorSpace>

5. Concluding Remarks

The rapid development of Chinese navigation and positioning systems means that standardizing indoor–outdoor seamless navigation and LBS geo-information is necessary. CityGML focuses on representing the geometry, semantics, and appearance of urban-related objects, such as buildings, building parts, installations, bridges, tunnels, etc. Instead of representing building architectural components, IndoorGML is concerned with the spaces defined by architectural components, where objects can be located and navigated, and is also concerned with the relationships (e.g., topology) between spaces. Representing multi-layered networks of cellular space is the main objective of the IndoorGML standard. However, no universal standard for indoor location information currently exists, and only rudimentary indoor navigation and positioning information is supplied in correlation studies.
The proposed IndoorLocationGML standard in this paper has given a framework of ubiquitous indoor location information description for both accurate consideration (Indoor absolute location) and rough consideration (Indoor relative location) and their relations, hence it is complete. Together with other companion standards that have been proposed in recent years, including interface standards for indoor and outdoor multimodal co-location services, data specifications of electronic maps for web services, and data model and exchange formats for navigable spatial databases, this standard addresses the current urgent requirements and provides support to industrial applications.

Acknowledgments

This paper was supported by the National Nature Science Foundation of China (No. 41471320 and 41471332) and the National High Technology Research and Development Program of China (2015AA123901). Dr. Lei Niu’s suggestions during the revision stage of this paper is appreciated.

Author Contributions

Qing Zhu, Qing Xiong, Yulin Ding, Yeting Zhang, Yan Zhou, and Yun Li contributed to the IndoorLocationGML standard. The use cases is designed by Yun Li. The application section is designed by Yun Li and Yan Zhou. This paper is written by Yun Li. Qing Zhu and Sisi Zlatanova also provided guidance and advice on the study.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Zlatanova, S.; Sithole, G.; Nakagawa, M.; Zhu, Q. Problems in indoor mapping and modelling. ISPRS Arch. Photogramm. Remote Sens. Spat. Inf. Sci. 2013, 4, 51–55. [Google Scholar] [CrossRef]
  2. Winter, S. Indoor spatial information. Int. J. 3D Inf. Model. 2012, 3, 25–42. [Google Scholar] [CrossRef]
  3. Lee, J.; Li, K.; Zlatanova, S.; Kolbe, T.H.; Nagel, C.; Becher, T. OGC IndoorGML. Version 1.0. OGC Doc. No. 14-005r1; Open Geospatial Consortium: 35 Main Street, Suite 5, Wayland, MA, USA, 2014. [Google Scholar]
  4. Clemens, P. OpenGIS Geography Markup Language (GML) Encoding Standard. Version 3.2.1. OGC Doc. No. 07-036; Open Geospatial Consortium: 35 Main Street, Suite 5, Wayland, MA, USA, 2014. [Google Scholar]
  5. Gröger, G.; Plümer, L. CityGM—Interoperable semantic 3D city models. ISPRS J. Photogramm. Remote Sens. 2012, 5, 12–33. [Google Scholar] [CrossRef]
  6. Li, N.; Burcin, B.; Krishnamachari, B.; Soibelman, L. A BIM centered indoor localization algorithm to support building fire emergency response operations. Autom. Constr. 2014, 3, 78–89. [Google Scholar] [CrossRef]
  7. Tashakkori, H.; Rajabifard, A.; Kalantari, M. A new 3D indoor/outdoor spatial model for indoor emergency response facilitation. Build. Environ. 2014, 3, 170–182. [Google Scholar] [CrossRef]
  8. Yang, L.; Worboys, M. Generation of navigation graphs for indoor space. Int. J. Geogr. Inf. Sci. 2015, 5, 1737–1756. [Google Scholar] [CrossRef]
  9. Salveson-Nossum, A. IndoorTubes a novel design for indoor maps. Cartogr. Geogr. Inf. Sci. 2013, 3, 192–200. [Google Scholar]
  10. Lorenz, A.; Thierbach, C.; Baur, N.; Holbe, T.H. Map design aspects, route complexity, or social background? Factors influencing user satisfaction with indoor navigation maps. Cartogr. Geogr. Inf. Sci. 2013, 6, 201–209. [Google Scholar] [CrossRef]
  11. Link, J.Á.B.; Smith, P.; Viol, N.; Wehrle, K. Accurate map-based indoor navigation on the mobile. J. Locat. Based Serv. 2012, 7, 23–43. [Google Scholar] [CrossRef]
  12. Bhargava, P.; Krishnamoorthy, S.; Shrivastava, A.; Nakshathri, A.; Mah, M.; Agrawala, A. Locus: Robust and calibration-free indoor localization, tracking and navigation for multistory buildings. J. Locat. Based Serv. 2015, 11, 187–208. [Google Scholar] [CrossRef]
  13. Kostavelis, I.; Gasteratos, A. Semantic mapping for mobile robotics tasks: A survey. Robot. Auton. Syst. 2014, 12, 86–103. [Google Scholar] [CrossRef]
  14. TamilSelvi, D.; Shalinie, S.M.; Thasneem, A.F.; Sundari, S.G. Optimal path selection for mobile robot navigation using genetic algorithm in an indoor environment. Adv. Comput. Netw. Secur. Int. Conf. 2011, 12, 263–269. [Google Scholar]
  15. Zhu, Q.; Xiong, Q.; Zhao, J. Indoor location information model and intelligent location service. J. Geomat. 2014, 10, 1–7. [Google Scholar]
  16. Xiong, Q.; Zhu, Q.; Zlatanova, S.; Huang, L.; Zhou, Y.; Du, Z. Multi-dimensional indoor location information model. Int. Arch. Photogramm. Remote Sens. Spat. Inf. Sci. 2013, 12, 45–49. [Google Scholar] [CrossRef]
  17. Sithole, G.; Zlatanova, S. Position location, place and area: An indoor perspective. ISPRS Ann. Photogramm. Remote Sens. Spat. Inf. Sci. 2016, 4, 89–96. [Google Scholar] [CrossRef]
Figure 1. UML diagram of indoor multi-dimensional location information.
Figure 1. UML diagram of indoor multi-dimensional location information.
Ijgi 05 00220 g001
Figure 2. Indoor location classification matrix.
Figure 2. Indoor location classification matrix.
Ijgi 05 00220 g002
Figure 3. 4th teaching building on the Xipu campus of Southwest Jiaotong University.
Figure 3. 4th teaching building on the Xipu campus of Southwest Jiaotong University.
Ijgi 05 00220 g003
Figure 4. An example of an indoor map.
Figure 4. An example of an indoor map.
Ijgi 05 00220 g004
Figure 5. Indoor navigation for humans (top) and robots (bottom).
Figure 5. Indoor navigation for humans (top) and robots (bottom).
Ijgi 05 00220 g005
Figure 6. Indoor facilities management.
Figure 6. Indoor facilities management.
Ijgi 05 00220 g006
Figure 7. Looking for books in a library.
Figure 7. Looking for books in a library.
Ijgi 05 00220 g007
Figure 8. Anchor node connecting indoor and outdoor networks (Figure 16 of IndoorGML version1.0 document).
Figure 8. Anchor node connecting indoor and outdoor networks (Figure 16 of IndoorGML version1.0 document).
Ijgi 05 00220 g008
Figure 9. An example of seamless indoor–outdoor navigation.
Figure 9. An example of seamless indoor–outdoor navigation.
Ijgi 05 00220 g009
Table 1. Terminology of IndoorLocationGML.
Table 1. Terminology of IndoorLocationGML.
TerminologyDescription
Indoor locationA location of an object in indoor and enclosed spaces.
Indoor absolute locationA unitary structured description and identification of an indoor object in indoor space. It is only relevant to the spatial reference system in which it is defined.
Indoor relative locationA structured description and identification of the indoor object by spatial relationship between the indoor object and other references.
Indoor spatial reference systemA spatial coordinate reference system of the indoor space. It is associated with an indoor reference and an indoor target. It can be geographic coordinate systems or local Cartesian coordinate system.
Indoor spatial relationshipThe relationship between any two or more target objects in indoor space. It includes: directional relationship, distance relationship, order relationship, and topology relationship.
Multi-dimensional location The information used to describe indoor absolute location and indoor relative location from the perspective of space, time, and semantics.
Table 2. Possible use cases of indoor location information and its classification.
Table 2. Possible use cases of indoor location information and its classification.
Indoor Location (Observer–Reference)Possible Use Cases
Static–StaticIndoor location map construction , e.g., graph, semantic network, indoor object tagging, etc.
Static–DynamicObject tracking through sensors such as AP or camera. Here, sensors are static and moving objects such as people are dynamic.
Dynamic–StaticIndoor navigation for people or robots. Here, the location of people or robots is dynamic and the indoor map are static.
Dynamic–DynamicNavigation in a dynamic scene, e.g., more than one moving objects in indoor space. A possible use may be finding people by people or robot.

Share and Cite

MDPI and ACS Style

Zhu, Q.; Li, Y.; Xiong, Q.; Zlatanova, S.; Ding, Y.; Zhang, Y.; Zhou, Y. Indoor Multi-Dimensional Location GML and Its Application for Ubiquitous Indoor Location Services. ISPRS Int. J. Geo-Inf. 2016, 5, 220. https://doi.org/10.3390/ijgi5120220

AMA Style

Zhu Q, Li Y, Xiong Q, Zlatanova S, Ding Y, Zhang Y, Zhou Y. Indoor Multi-Dimensional Location GML and Its Application for Ubiquitous Indoor Location Services. ISPRS International Journal of Geo-Information. 2016; 5(12):220. https://doi.org/10.3390/ijgi5120220

Chicago/Turabian Style

Zhu, Qing, Yun Li, Qing Xiong, Sisi Zlatanova, Yulin Ding, Yeting Zhang, and Yan Zhou. 2016. "Indoor Multi-Dimensional Location GML and Its Application for Ubiquitous Indoor Location Services" ISPRS International Journal of Geo-Information 5, no. 12: 220. https://doi.org/10.3390/ijgi5120220

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop