# Atmospheric Lidar Data Storage Model Based on Ontology

Authors: Hao Chen; Dengxin Hua; Yikun Zhang; Qing Yan
Journal: Scientific Programming
 (2017)

---

## Abstract

Ontology is an effective method to solve the problem of heterogeneous data in lidar measurements. Due to complexity and diversity of data structure, traditional method of ontology storage cannot be directly applied to lidar data. In this work, we proposed a novel ontology storage model based on the object-oriented data model, in which the mapping mechanism was established from ontology of lidar data to the object-oriented data model. A new storage model of lidar data is then obtained by a combination of the characteristics of lidar data and the syntax of OWL DL. Compared to the traditional method of ontology storage, we believe that the new storage model can better serve the sharing of lidar data.


---

## Body

## 1. Introduction

Air pollutions, such as Acid rain, haze, and light chemical smoke, have become increasingly prominent in China, which has been considered as a serious threat to public health and environmental safety. In order to better understand the pollutions, many tools have been developed to monitor the environment. Lidar is an active instrument for vertical structure of atmospheric profiling with high accuracy and high spatial and temporal resolution. Recently, a number of regional atmospheric monitoring networks have been built based on lidar [1–4]. Analysis of lidar data from every monitored site is the key to investigating the regional air quality and temporal and spatial distribution of pollutants and to forecasting the emergency incidents, such as dust storms, forest fires, and volcanic eruptions [5–7].Lidar observations have been carried out by many independent institutes, which leads to inconsistence of standards in terms of the protocol of data acquisition and data storage. Current lidar data structures which vary degrees of heterogeneity in structure and semanteme are hard to be shared without uniform data standard. The existing differences include the meaning of various concepts and the units of collected information. With the abilities of expressing and reasoning in semantic, ontology which has been widely used in data sharing and integration can describe the inner relationships between various parameters’ concepts or terms and reveal the hidden relationships by logical reasoning [8]. The ontology storage model of lidar data could be the prerequisite for exploring its huge quantity [9].At present, there are four storage methods for ontology [10]: memory-based, plain text, specific management tools [11], and database [12, 13]. Methods of memory-based, plain text, and specific management have limitations in efficiency, analysis management, universality, and extensibility. The database storage model can further divide into three methods: relational database method, Native XML method, and object-oriented database method [14]. Among them, relational database method is the most popular and matured method in ontology storage. The limitation of this method is that database’s pattern does not match ontology and has poor extensibility and semantic support. The Native XML method has better expansibility but lower efficiency. Object-oriented database method has higher semantic integrity and query efficiency but lacks the ability of storing the complex relationship between ontology’s concepts [15].The lidar data have complex structures [16, 17] and mass storage [18] because the lidar data contained many atmospheric parameters with strong correlations. The above-mentioned storage methods have not been applied successfully to atmospheric lidar data storage. Based on the study of the relationship between lidar data and ontology structure, we proposed and developed a mapping mechanism for lidar data ontology and object-oriented storage model.In our previous work, the representation method and mapping mechanism of OODM of atmospheric lidar data were proposed and show that the OODM for lidar data is effective [19]. In present work, the details of database state of lidar data’s OODM, the mapping mechanism of lidar data ontology to OODM, the data storage mode, and structure based on the OODM and the detailed process of the experiment are given.


## 2. Related Technologies

Ontology consisting of three elements, individual (instance), class (concept), and attribute [20], is a description of the concepts and relationships. The concept is the main part of the ontology, and the instance is the embodiment of the concept. Both the concept and the instance are the entity elements of the ontology, while the attributes are the descriptive elements.Object-oriented data model (OODM) composed of object, class, and inheritance concept has been widely used in data modeling due to its flexibility in expressing the objects. Class describes a set of common characteristics of objects, and it is considered as a collection of objects with the same characteristics, where each object has the same properties and operations. Class is also associated with each other by inheritance, overwrite, and relationship [21].The structure of ontology is similar to object-oriented data model in many respects. Concepts andattributes of ontology can be described and expressed with the classes and itsattributes. Instances can be saved as object. Axiom and function of ontology can be simulated by the methods of OODM. Object-oriented method considers everything as a set of various objects. The complex objects can be decomposed into a combination of simple objects. Similarly, any complex knowledge of the ontology can be decomposed into a combination of basic concepts.


## 3. Lidar Data Ontology

The definitions of the lidar data’s ontology and the object-oriented model are given as follows.Definition 1.
A lidar data ontologyO consists of five elements {C,R,A,I,X}, where C is a set of lidar data’s concepts; R is a set of relationships; A is a collection of attribute sets for each concept and relationship; I is a set of lidar data’s instances and X is a set of axioms [22].Each conceptci, where ci∈C, represents a set of the same kind of objects and can be described by the same set of attributes, denoted by AC(ci). Each relationship ri(cp,cq), then ri∈R, represents a binary association between concepts cp and cq, and the instances of such a relationship are pairs of (cp, cq). The attributes of ri are denoted by AR(ri). Each axiom in X is either a constraint on the attribute values of concept and relationship or a constraint on the relationships between concepts objects. Each constraint can be expressed as a prolog (rule).Definition 2.
An object-oriented data model (OODM) of lidar data is a finite set of class declarations. Each class describes a series of atmospheric parameter objects with common attributes and methods. The OODM is a tupleS={Cs,As,Ds}, whereCs is a finite set of classes;As is a finite set of attributes;Dsis a finite set of class declarations.Dscontains exactly one declaration. The definition of declaration is defined as follows:Class C is-aC1,…,Cktype-is T,whereT denotes a type expression which was built based on the following syntax:T→C
UnionT1,…,TkEndSet ofTRecordA1:D1,…,Ak:DkEndThe part ofis-a is optional, which represents class inheritance, for example, specified inclusion within the sets of instances of the involved classes, while the part oftype-is which can be used to assign objects of the instances of C by the type expressionT restricts the structures of the classes. Union,…,End represents summary between an abstract class and a series of object classes.Definition 3.
The database instanceJ is a database state of lidar data’s OODM. The instance J is defined by the notions of object identifier and value. Given finite atomic domains D1,D2,…,Dn, n≥1, then D=D1∪D2∪D3∪⋯∪Dn, Di∩Dj=∅, vd∈Di, i≠j. vd is atomic value.Given an infinite setID, set V of value, and each id∈ID then (id,v) is an object. Let o=(id,v), then identity(o)=id, value(o)=v. For O={o1,o2,…,ok}, then O=ID×V.[[a1:v1,a2:v2,…,ak:vk]]∈V, ai∈A, vi∈V,1≤i≤k.A database instanceJ is constituted by OJ,πJ,ρJ, where OJ is a finite set of object identifiers, πJ is a mapping assigned to each class in Cs to a subset of OJ, denoted by C∈Cs, πJi(C)⊆OJ, and ρJ is a mapping assigned a value in V to each object in OJ, denoted by OIDk∈OID, ρJi(OIDk)⊆V.


## 4. The Mapping Mechanism of Lidar Data Ontology to OODM

As the definitions given in Section3, ontology is constituted of structure and instance, while an object-oriented database is constituted of OODM and database instance. They share some commons in structure; for example, both of them express the concepts of the real world based on class concepts and relationships; both of them have also class and the correspondence properties.The metamodel elements of ontology can be transformed into the metamodel elements of the OODM in structural and instance. In order to fully support the object-oriented features, ontology concepts of lidar data have to be abstracted to core class, and ontology relationships would be abstracted to relationship class. The core class stores simple and fixed concepts with few correlation attributes. The relationship class stores relationships between different concepts and the relationship attributes of ontology [23].LetS={Cs,As,Ds}, which is the corresponding OODM of lidar data’s ontology OS, and φ is the mapping rule of structure transformation; thus S=φ(Os)={Cs,As,Ds}. The mapping rules are described as follows:(a)
For eachci∈C in OS, it can be mapped to the class Co of the OODM, Co∈Cs, φ(ci)∈Cs.(b)
For eachri∈R in OS, it can be mapped to the class Ro of the OODM, Ro∈Cs, φ(ri)∈Cs.(c)
For each attribute setAC(ci) of ci in OS, ci∈C, it can be mapped to the attribute Ai of class C in the OODM, φ(AC(ci))=Ai∈As.(d)
For each attribute setAR(ri) of ri in OS, ri∈R, it can be mapped to the attribute Ai of class C in the OODM, φ(AR(ri))=Ai∈As.(e)
For each expression axiom ofci in OS, ci∈C, it can be mapped to the class C’s declaration of the OODM:Class C is-aC1,…,Ck orClass C type-is UnionT1,…,TkEnd.(f)
For each data type definition ofci in OS, ci∈C, it can be mapped to the class C’s declaration of the OODM:Class C type-is T End.(g)
For each data attribute axiom ofci in OS, ci∈C, it can be mapped to the class C’s declaration of the OODM:Class C type-is RecordA1:D1,…,Ak:DkEnd.(h)
For each data attribute axiom ofci in OS, ci∈C, it can be mapped to the classC’s declaration of the OODM:Class C is-aC1,…,Cktype-is Record A: Set of T End.We supposed that the instance of the ontologyOS and the data instance of the corresponding OODM are derived as follows:(a)
Each individual object identifier and class identifier inOS can be mapped to the object and class’s instance of the OODM.(b)
Each individual data type identifier and object type identifier inOS can be mapped to the data type attribute and object type attribute.(c)
The individual axiomIndividual(otype(C)) of OS can be mapped to the class declaration of the OODM’s instance.(d)
The individual axiom ofOS: Individual(valueR1,o1,…,value(Rn,on), valueU1,v1,…,value(Un,vn)) can be mapped to the class declaration of the OODM’s instance o:[A1:V1,…,An:Vk].The mapping algorithm from the lidar data ontology to the OODM is given by OWL DL syntax in Tables1 and 2.Table 1
Identifier mapping algorithm.
Syntax of ontologyOS
Mapping method
c
i
∈
C
Addφ(ci) toCs
r
i
∈
R,
Addφ(ri) toCs
c
i
∈
C, AC(ci)∈A
Addφ(AC(ci)) toAs
r
i
∈
R, AR(ri)∈A
Addφ(AR(ri)) toAs
C
⊆
C
1
∪
C
2
⋯
∪
C
k
Create(ClassCtype-is UnionT1,…,Tk) add to Ds
C
⊆
C
1
∩
C
2
⋯
∩
C
k
Create(ClassC  is-aC1,…,Ck) add to Ds
type(C)
Create(ClassCtype-isT) add toDs
U
⊆
C, U⊆Ui or ≥1U  ⊆Ci or T⊆∀U.Di or T⊆  ≤1U
Create(ClassC type-is RecordA1:D1,…,Ak:Dk End) add to Ds
R
⊆
C, R⊆Ui or ≥1R  ⊆Ci or T⊆∀R.Ci or R=(R0)
Create(ClassCtype-is RecordA:Setof T) add toDsTable 2
Instance mapping algorithm.
Syntax of ontologyOS
Mapping method
o
:
C
1
Createo:type(C)
(
o
,
o
i
)
:
R
i or (o,vi):Ui, Ri,Ui∈C,oi∈OS
Createo=a1:v1,a2:v2,…,ak:vk, ai∈A, vi∈V
o
i
∈
O
S, o1=o2=⋯=ok, oi≠oj
Createo add instance(S)


## 5. The Storage Mode Based on the OODM

Currently, the object-oriented database management system has implemented most of the features of the OODM; however, it lacks the mathematical theory and is relatively inefficient compared to the relational database system with a rigorous mathematical foundation, which was based on the relational algebra theory and set theory [24]. To further improve query efficiency of lidar data ontology, we proposed a storage model based on the relational database.The data table is built based on the vocabulary of the OWL and Definition3 given in Section 3. The tableClass contains the information of ontology about the OODM, including types, class names, and class identifiers. The tableProperty contains the properties of class or of relationship class in ontology, including the identifiers, types, and characteristics; the tablePropertyOf describes the affiliation between the property and the class; the tableSubSupClassstores the structure information between two classes; the tableInstanceValuedescribes the property values of the instance in the form of a triple; the tableInstanceOf describes the affiliations of the class and the instance; the tableRestrictiondescribes the constraints of the properties.The mapping rule from the OODM to a relational database is defined as follows: for the class of the OODM, the class identifier, name, and type are created and stored in tableClass; the variables of class are stored in the tableProperty, and property identifiers are then created. The properties and characters of the variables in class correspond to theType andCharacter in TableProperty. The tablePropertyOf stores the identifiers of classes and of properties. The tableSubSupClass stores the identifiers of the parent and child classes expressed the inheritance relationship of the two classes. The tableInstanceValue stores the properties and the values of an object of the OODM. The identifier ofProperty corresponds to the identifier of the tableInstanceValue and the property values are stored in the tableValue. The tableInstanceOf stores the identifiers of classes and of objects. The property values and the special constraints are stored in the tableRestriction and correlated with each other in the identifiers of classes and of objects, as shown in Figure 1.Figure 1
Object-oriented data storage structure.


## 6. Application Example and Experimental

The atmospheric lidar data ontology storage model was examined using the experimental data collected in Laser Radar Center of Remote Sensing of Atmosphere of Xi’an University of Technology.According to Definition1, we can get a lidar data ontology Olidar={Clidar,Rlidar,Alidar,Xlidar}, where Alidar=AClidar∪ARlidar. The parts of Olidar are defined as follows:Clidar={Aerosol, AtmosTemperature, Wind, AtmosHumidity, Lidarsystem, LidarData, Measure, OtherFactor, GeoInfo, AtmosPressure}AClidar(Aerosol)={lidarratio, extinctioncoefficient, scatteringcoefficient}AClidar(AtmosTemperature)={averagetemperature, temperaturedeparture}AClidar(Wind)={winddirection, windspeed}AClidar(AtmosHumidity)={watervapourdensity, relativehumidity, absolutehumidity, dewpoint, frostpoint, mix- ingratio}AClidar(Lidarsystem)={scatteringtype, wavelength, singlepulseenergy, method, signalnoiseratio, rangere- solution}AClidar(LidarData)={azimuth, elevationangle, measuringtime, measuringheight, datavalue}AClidar(Measurer)={name, age, email}AClidar(OtherFactor)={altitude, latitude, longitude, gravityacceleration pressure}AClidar(GeoInfo)={altitude, latitude, longitude, gravityacceleration, pressure}AClidar(AtmosPressure)={altitude, latitude, longitude, gravityacceleration, pressure}Rlidar={Measure(Lidarsystem, AtmosHumidity),Measure(Lidarsystem, Aerosol),Measure(Lidarsystem, Wind),Measure(Lidarsystem, AtmosTemperature),Control(Measurer, Lidarsystem),MeasureValueof(LidarData, Aerosol),MeasureValueof(LidarData, AtmosTemperature),MeasureValueof(LidarData, Wind),MeasureIn(Aerosol, GeoInfo),MeasureIn(Wind, GeoInfo),MeasureValueof(LidarData, AtmosHumidity),MeasureIn(AtmosTemperature, GeoInfo),MeasureIn(AtmosHumidity, GeoInfo),Measureresultof(LidarData, Lidarsystem),Measureresult(Lidarsystem, LidarData),SubConcept(OtherFactor, GeoInfo),SubConcept(OtherFactor, AtmosPressure)}ARlidar(Measure)={starttime, endtime, address}ARlidar(Control)={starttime, endtime, address}ARlidar(MeasureValueof)={accuracy}ARlidar(MeasureIn)={correlation}ARlidar(Measureresultof)={accuracy}Xlidar={infer(MeasureValueof(LidarData, Aerosol)∧Measureresultof(LidarData, Lidarsystem))→Measure(Lidarsystem, Aerosol),infer(MeasureValueof(LidarData, AtmosTemperature)∧Measureresultof(LidarData, Lidarsystem))→Measure(Lidarsystem, AtmosTemperature),infer(MeasureValueof(LidarData, Wind)∧Measureresultof(LidarData, Lidarsystem))→Measure(Lidarsystem, Wind),infer(MeasureValueof(LidarData, AtmosHumidity)∧Measureresultof(LidarData, Lidarsystem))→Measure(Lidarsystem, AtmosHumidity), inverse(Measureresultof(LidarData, Lidarsystem)←Measureresult(Lidarsystem, LidarData))}The structure diagram ofOlidar is shown in Figure 2.Figure 2
Ontology structure ofOlidar.The OODM’s definition of atmospheric lidar data ontologyOlidar is based on Definition 2, shown in Box 1. The classOtherFactor is abstracted by the classes ofGeoInfo andAtmosPressure. The methodGetData (time:DateTime):DataSet returns the data of classLidarSystem orAerosol, and the parameter is the observed times. Themeasure andcontrolrepresent that a lidar system can measure amount of data and an engineer who would be able to control lidars, respectively.Box 1:Definition of Olidar’s OODM.
Cs= {Aerosol, GeoInfo, AtmosTemperature, Wind, AtmosPressure,
AtmosHumidity, Lidarsystem, LidarData, Measurer}
As= {lidarratio, extinctioncoefficient, scatteringcoefficient,
altitude, latitude, longitude,…}
Ds ={
Class AtmosPressure is a OtherFactortype-is
Record
altitude: Float
latitude: Float
longitude: Float
gravityacceleration: Float
pressure: Float
End
Class GeoInfois a OtherFactortype-is
Record
altitude: Float
latitude: Float
longitude: Float
gravityacceleration: Float
pressure: Float
End
Class OtherFactortype-is
Record
Union GeoInfo,AtmosPressure
End
Class Aerosoltype-is
Record
lidarrotio: Float
extinctioncoefficient: Float
scatteringcoefficient: Float
GetData(time:DateTime):DataSet
End
Class Lidarsystemtype-is
Record
scatteringtype: String
wavelength: Float
singlepulseenergy: Float
method: String
signalnoiseratio: Float
rangeresolution: Float
GetData(time:DateTime):DataSet
measure: Set of LidarData[(1,n)]
End
Class LidarDatatype-is
Record
azimuth: Float
elevationangle: Float
measuringtime: DateTime
measuringheight: Float
datavalue: Float
End
ClassMeasurer type-is
Record
name: String
age: Int
email: String
control: Set of LidarData[(1,n)]
End
Class Measuretype-is
Record
starttime: DateTime
endtime: DateTime
address: String
End
…}Based on a combination of the storage model of OODM (Figure2) and relation database, we constructed the data storage structure of lidar data ontology Olidar. For the experiments, we compare the new storage model of the OODM with the extendable Native XML and with the vertical mode of the RMDB in different ontology’s instance scale. Experimental setup CPU is Intel(R) Core(TM)2 Duo E7500 2.93 GHz, and the OS is windows server 2003 SP2, and the RMDB is Sql server 2005. The query language of Native XML storage model is XPath, and the query language of OODM and RMDB is sql language. We have investigated three types of query: querying all the instances of a class named A; searching all instances of the parent of a class named B; querying all the instances named C. Taking the limited memory into consideration, four different sizes of atmospheric lidar data ontology instances would be used, 1 × 103, 2 × 103, 1 × 104, and 2 × 104. Figures 3, 4, and 5 are the comparisons of query times for different data storage models, respectively.Figure 3
Comparison of typeA’s query times.Figure 4
Comparison of typeB’s query times.Figure 5
Comparison of typeC’s query times.Figures3, 4, and 5 show that the XML costs the longest query time compared to the other two storage models. Figure 6 shows that increase in the number of instances results in a bigger size of data file and leads to a longer query time, which can be related to the speed of parsing the file and the read-write speed of the disk. Frequent reading and writing files will definitely cost much more time. In addition, the XML method must load the files into the memory for every operation, and thus a large amount of memory usage causes an inefficiency operation. In query method type C and ontology with size 1 × 104 and 2 × 104, the data records are more than one million, which will exceed the total usable memory size of the testing machine after 49 s and 91 s, respectively. It reveals that, with the increase of atmospheric lidar data instances of ontology, XML storage model will consume much more time and memory compared to the other methods. Obviously, the OODM and RMDB storage methods are superior to the Native XML method in query time and data file size. Figures 3, 4, and 5 also show that the consuming time of the RMDB method is greater than that of the OODM in all three types of queries. The RMDB method is associated with the data in the form of the tables which joined with each other in the querying process. The OODM method can easily obtain the object data due to its simplified data table.Figure 6
Comparison of data file sizes.


## 7. Conclusions

In this paper, a new ontology storage model is developed for lidar data based on object-oriented model to maximize the query efficiency and minimize the data storage file size by the representation method and mapping mechanism. The model is very useful for lidar data as (1) the lidar data ontology structure can be easily transformed into the OODM structure; (2) the relationship of lidar data ontology can be clearly expressed and stored; and (3) the OODM of lidar data have high expansibility and query efficiency. Some extensions, which are optimized method for processing the temporal data such as efficient query method and storage model, are further addressed to consider more practical factors.



---

*Source: 3607068-2017-03-06.xml*