m tech project presentation
TRANSCRIPT
Integrating Heterogeneous Geospatial DataRepositories Using Geospatial Modeling and
Geospatial Web Services.
Vivek Chaure [07CS6006]
Under the guidance of
Prof. S. K. Ghosh (School of I.T.) andProf. J. Mukhopadhyay(Dept. of C.S.E.)
Indian Institute of Technology, KharagpurMay 6,2009
Outline
Introduction
Problem Statement
Related Work
Architecture of the framework
Geospatial Data Modeling
Modeling Temporal Dimension
Model Checker
Service Based Interoperable Framework
Conclusion and Future Work
Introduction
GIS : An Information System which captures, stores, and analyzes data that refers to geographic location.
GIS applications : A collection of tools that allow users to create
interactive queries, analyze spatial information, edit data, maps,
and present the results of all these operations.
EGIS : A geographic information system that is integrated
through an entire organization so that a large number of users
can manage, share, and use spatial data and related information
EGIS Scenario
Figure: An EGIS scenario (Spatial Data Provider’s Repositories: R1, R2,R3. All data models should confirm to the Global Data model specified bythe EGIS.)
Heterogeneity
Characteristics of Geospatial data:
Represent geographic locations with coordinates.
Has spatial and non-spatial attributes
Spatial relationship with other entities in a data set.
Temporal property - evolution over time.
Figure: Land Suitable for farmingGeodetic Framework
Land Use
Infrastructure
Soil
Hydrology
Interoperability The ability of two or more systems or components to exchange
and share information.
Problems in sharing Geospatial information:
Political, Institutional and Economic Problems: Copyright , Sensitive data etc.
Technical Problems: Heterogeneity
Reasons for heterogeneity:
Layers created under different contexts.
Different access mechanism [flat file/database]
Diverse Data Formats
Storage mechanisms [disk / tapes]
Interoperability
Types of Heterogeneity
Syntactic Heterogeneity - Proprietary Packages use proprietary internal representation which is sharable among proprietary organizations.
Structural Heterogeneity - “Water bodies overlapping a city” or “water bodies within a city”
Semantic Heterogeneity - “Mauza” or “Village”
A model driven framework can overcome the technical problems of Syntactic and Structural Heterogeneity involved in achieving interoperability.
A model driven framework guarantees security of underlying geospatial data.
Problem Statement
A geospatial interoperable framework has to be implemented using a relational database with spatial capabilities.
The framework shall support spatial and spatio-temporal data.
In order to achieve interoperability, the framework uses data exchange standards such as Geography Markup Language(GML), and web service specifications such as Web Map Service (WMS) and Web Feature Service (WFS) as specified by the Open Geospatial Consortium (OGC).
Problem Statement
Objectives :
Design of Geospatial Data Model using UML based on the spatial features.
Generation of GML Application schema from the UML data model and populating the database with data provided in GML form conforming to the Application Schema. – A standard encoding scheme.
Extension of Geospatial model to support spatiotemporal properties. Design the geospatial model to represent spatiotemporal features, by extending UML.
Integration of heterogeneous geospatial repositories in a geospatial services based interoperable framework.
Approach Geospatial Data Modeling for Village connectivity is designed. And the
standard encoding scheme is used to populate data sources.
Extended UML notations are used to design a model for the domain of Education.
The service based interoperable framework is designed based on the models for village connectivity and settlements.
Tools and Standards:
IBM Rational Rose – For modeling spatial / spatiotemporal models.
Shapechange – For generation of application schema.
Oracle 10g Spatial Database
OGC Standards for Geospatial web Services.
Related Work Geospatial Data Modeling :
Climate Science Modeling Language [Woolf , 2006]
Dept. of Homeland Security Geospatial Data Model(DHS-GDM) [2]
Modeling Temporal Dimension TimeDB [Carvalho, 2006]
Spatio-temporal E-R diagrams (STER) or Spatio-temporal UML diagrams (STUML) [Wang,2000]
Aeronautical Information Exchange Model (AIXM) -2007 [5]
Online and offline UML Model Comparison [Girschick ,2006],[Xing,2005]
Related Work
Geospatial Standards A modeling approach based ISO rules of application schema
[ISO,2001] has been specified in [Jang,2006] .
Geography Markup Language (GML) as a standard means for encoding[GML,1980]
The OGC has developed a specification for a software framework which involves Web Map Service, Web Feature Service and Web Coverage Service are classified as transmitted data style.[Hyun2000]
Architecture
Oracle Database
Match?
yesyes
MM = Model MatcherQM = Query Model
Geospatial Data Modeling
Achieves Syntactic and Structural interoperability in geospatial data sources.
RoadCategory
Metalled : <undefined>Unmetalled : <undefined>
(from BlockRoad)
<<enumeration>>
AdministrativeBoundary(from BlockRoad)
NSDIThemes(from BlockRoad)
<<FeatureCollection>>+NSDIThemes
Block
Block_id : stringBlock_name : string
(from BlockRoad)
School
School_name : string
(from BlockRoad)
Communication(from BlockRoad)
+NSDIThemesMember
+NSDIThemesMemberVillage
Village_name : string
(from BlockRoad)+BlockMember
Settelement
Village_id : string
(from BlockRoad)
+in
+contain
Road
raip_roads : stringroads_type : RoadCategorylinearGeometry : GM_Curve
(from BlockRoad)
*
1
+CommunicationMember
*
+CommunicationMember
1
+connect
Realization
Aggregation
Unidirectional Association
Bidirectional Association
Standard Encoding Scheme
Road
Road_id : numberRoad_type : RoadTypelinearGeometry
Conversion Rules
<complexType name= “RoadType”><complexContent><extension base= “gml:AbstractFeatureType”><sequence><element name=“Road_id” type= “string”/><element name=“Road_type” type= “string”/><element name=“linearGeometry”type= “gml:LineStringPropertyType”/></sequence></extension></complexContent></complexType>
Village Connectivity<<ApplicationSchema>>
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:SoI="http://www.nrdms.gov.in" xmlns:gml="http://www.opengis.net/gml" elementFormDefault="qualified" targetNamespace="http://www.nrdms.gov.in" version="1.0">
<import namespace="http://www.opengis.net/gml" schemaLocation="feature.xsd"/>
Fig: Creating UML Schema using IBM Rational Rose.
Fig: Creating GML Application SchemaUsing rules of conversion
Export
XMI
XMI
GML
The GML schema generated from UML Class diagram is further mapped into object oriented database along with GML data by using a GMLtoOracle parser.
Standard Encoding Scheme
Fig. Standard Encoding SchemeFig. Tables created using Standard
Encoding Scheme.
Modeling Temporal Dimension
Spatiotemporal features : Objects with continuous motion:
moving objects like sea creatures being tracked by GPS.
Discrete changes of and among objects;
landparcels, rivers change their position discretely.
Motion as well as changes of shape.
storms.
Benefits : Improved support for Time variant geo-referenced information.
Can provide snapshot view or history of evolution of a spatial feature.
Event based or State based temporal analysis can help in decision making.
Modeling Temporal Dimension
Limitation of UML Notations:
It is possible to enter each temporal attribute of a class into a separate associated class with the timestamps and spatial extents as attributes.
creation of artificial constructs to convey temporal semantics which would significantly complicate the schema diagram.
School
Schoolid : IntegerName : String
SchoolType
Purpose : String
Purpose
SchoolId : IntegerTypeId : IntegerPurpose : StringFrom : DateTo : Date
Modeling Temporal Dimension
Remedy - Create symbols which adds spatio-temporal semantics to traditional UML notations.
Temporal database concepts of Valid time and transaction time are required to be implemented.
We use the semantic notations from Spatio Temporal UML (STUML) to represent the spatio-temporal characteristics of attributes.
A specification Box – describes nature of time interval.
Fig: Basic Constructs
Modeling Temporal Dimension
Fig: Primitives Used in Modeling Spatiotemporal Data
Grading is done depending on the number of students passed in each year
District
DistrictName : string
Block
BlockName : string
*
1
*
+contain1
Grading
TotalStudent : numberStudentPassed : numberYear : stringGrade : string
Village
VillageName : stringPopulation : <d:int<s<t>>>
*
1
*
+contain 1
Road
RoadType : stringRoadName : stringFNode : intTNode : intRoadLink : string
Teacher
TeacherID : numberTeacherName : stringDOB : datejoinedOn : dateRetirementOn : dateAddress : string
Purpose
FromDate : dateToDate : datePurposeType : purposetypedetails : string
Specification Box for population:Time Dimen:validTime Model:regular(Yearly)
SpecificationBox Grading:TimeDimen:transactionTime Model: regular (yearly)
School
SchoolId : numberSchoolName : stringShape : pointestablished : dateSchoolType : <d:string<t>>
+has <d:int<t>>
1
*
1
+inside <s>*
+near <t>
+has<t>+to state2
+from state1
+used as <t>
Students
StudentRollNo : numberStudentName : stringDOB : dateAddress : string
+has<t>
SpecificationBox PurposeTimeDimen:transactionTime Model:irregular
SpecificationBox StudentsTime Model:irregular
SpecificationBox TeacherTime Model:irregular
Modeling Temporal Dimension• Spatiotemporal Model of Education domain:
• Yearly school grading based on number students passed in each year.
• The schools are used for other purposes such as election booths, relief camps during flood drought etc.
Representing Spatio-temporal Features in Database:
History Table for each temporal feature.
History of association named “near” between School and Road features.
Modeling Temporal Dimension
SID
S1
S2
:
Sn
Sname
SBC
AGT
:
..
Shp
1,1
4,6
:
..
School Table
est
12/06/06
23/01/07
:
..
TKey
T1
T2
:
Tn
RdNear
R2
R2
:
..
Stype
H
H
:
..
Tkey
T1
T1
T2
Stype
P
RdNear
R1
R2
TI
t1-t2
t1-t4
t1-t3
School History Table
SchoolID: integerSchoolName: string
School
Established :DateSchoolType : <d:string<t>>
Operation
Road
Operation
RoadName: stringRoadType: string
Near<t>
RdName
R1
R2
R3
Rtype
Type1
Type2
Type1
Road Table
Sample Queries
Query 1 : Count of schools in “village 1” and “village 2” between years 2000 to 2005.
Query 2 : Grades of school 1 between years 2001 to 2004.
Modeling Temporal Dimension
Fig: Results of Query 1
School Name Grade Year
School1 A 2001
School1 B 2002
School1 A 2003
School1 A 2004
Fig: Results of Query 2
Model Checker
Need:
The service provider’s models are to be harmonized with the global data model.
Equivalence check
M2 is said to be equivalent to M1 if M2 M1.⊆
Automata design tools can be used for checking properties of models.
Model Checker
Simple PROMELA Interpreter (SPIN) has been used for checking properties of models.
A model is simulated as a procedure say Global() and Submodel()
proctype Global(){atomic {
run School(0,1,1); //featureinside[1]=true; // associationrun Village(1); //feature
}}
proctype Submodel(){atomic {
run School(1,0,1); //featureinside[1]=true; // associationrun Village(1); //feature
}}
School
SchoolId : IntegerSchoolName : String
Village
VillageName : String+inside
School
SchoolName : StringVillage+inside
Model Checker
Classes , Attributes and associations are also modeled as procedures.
Sc[0] and v[0] are Boolean variables indicating presence of a class in model 0 i.e. Global model.
a LTL formula Fɸ or symbolically, <> ɸ meaning that Property ɸ eventually holds somewhere in subsequent path in automata.
Properties to verify:
#define match ((sc[0] | sc[1])==true && (v[0] & v[1]) == true) ..[1]
#define unmatch ((!sc[0] & sc[1])==true || (!v[0] & v[1])== true) ..[2]
To verify the match with respect to associations the following property is defined:
#define asso (inside[0] & inside[1]==true) ..[3]
Model Checker
Results of model comparison:
If a UML model could be represented as an automata, such a Model checking tool can be integrated into the proposed framework.
Service Oriented Architecture
Web Service - a software interface that describes a collection of operations that can be accessed over the network through standardized XML messaging.
Allows applications to communicate with each others in a platform independent manner.
Figure: Web Service Model
Geospatial Web Services
Figure: Geospatial Web Services
Service Based Interoperable Framework
The aim of this design is to be able to be able to integrate services representing isolated data repositories at a central location called a Registry Service.
Figure: Design Aim of framework
Registry Service
OGC Client
Geospatial Repository1
Geospatial Repository2
Service Based Interoperable Framework
The IITKGP Geoservice is an implementation of basic services WMS and WFS. Apart from these basic services a Registry service is to be introduced in order to implement the central location.
Service Based Interoperable Framework
Web Registry Service (WRS)
- run-time discovery and evaluation of resources
- maintains a directory or metadata information about each Data provider.
Service metadata includes location, point of contact information and other keyword information that uniquely identify the service.
Operation metadata specifies the operations which are offered by a service.
WRS requests : GetCapabilities :
RegisterService - for registration of a service and
GetDescriptor - for handling client queries this request harvests metadata from other services.
Service Based Interoperable Framework
Figure: Interface Diagram for proposed framework
Integrated Client WRS W*S
getCapabilities()
return XML
getRecordRequest()
return XML
getCapabilities()
return XML
Application Scenario
• All the Web feature and Web map services advertise their metadata to the Web Registry Service through a interface for catalog service.
• An assumption is made that other data providers follow the global schema.
•Catalog Service (CSW) Requests:• GetRecordById()• GetRecords() - GetDescriptor() of
WRS• Transaction() - RegisterService() of
WRS
Application Scenario
WFS_SettlementsWFS_transport
Fig: WFS_Base Data Model
Application ScenarioStandard encoding scheme is used to populate transport and settlement data at respectiveData Sources.
Fig: GML Application Schema Fig: GML Data
Service Based Interoperable FrameworkWe use the metadata in catalog service to implement functionality of a registry service.
Service Metadata
Operation Metadata
Application Scenario
1. Data Providers Advertise Service Metadata
2. Client determines service to be contacted using metadata and redirects query
3. Query Results
Application Scenario
Query Model1: “Which schools are inside Block1”
Queries
Query Model2 : “Which railway line is crossed by NH1”
Application Scenario
Query Model3: “Which are the resorts in Block1”
Queries
Query Model4: “Which bridge canBe taken to cross railway line code 1034”
Application Scenario
Figure: Results for Query 1
Application Scenario
Figure: Results for Query 2
Application Scenario
Figure: Results for Queries 3 and 4
Conclusion and Future Work
Sharing geospatial information has become an issue to be addressed because of its heterogeneity.
A standard data model is essential for data sharing to be effective. We have addressed the problem of syntactic heterogeneity.
An Object oriented modeling approach for geospatial data and demonstrates a standard encoding scheme takes the structured geospatial data (GML) into an object relational database (Oracle 10g Spatial).
Conclusion and Future Work
we used additional constructs to UML model that represent the semantics of spatio-temporal data. These features were also represented in the database using additional tables to maintain feature history.
The proposed framework is based on the service-based computing paradigm and adheres to the OGC specified interface standards.
Future Work:
Loosely Coupled Web Services
Model Checking
References[Hyun,2002] Do-Hyun ,Kim M. K., “Web GIS Service Component
Based On Open Environment” ,IEEE ,2002.
[Woolf , 2006] A. Woolf, B. Lawrence, R. Lowry, K. Kleese van Dam, R. Cramer, M. Gutierrez, S. Kondapalli, S. Latham, D. Lowe, K. O’Neill, and A. Stephens, “Data integration with the climate science modelling language,” Advances in Geosciences, vol. 8, pp. 83–90, 2006. [Online]. Available: http://www.adv-geosci.net/8/83/2006
[Carvalho, 2006] A. S. A. Carvalho, C. Ribeiro, “A spatio-temporal database system based on timedb and oracle spatial,” in Proceedings of the IFIP International Federation for Information Processing, 2006, pp. 11–20.
References[Wang,2000] X. Wang, X. Zhou, and S. Lu, “Spatiotemporal data
modeling and management: A survey,” in TOOLS ’00: Proceedings of the 36th International Conference on Technology of Object-Oriented Languages and Systems (TOOLS-Asia’00). Washington, DC, USA: IEEE Computer Society, 2000, p. 202.
[Girschick ,2006]T. D. Martin Girschick, “Di erence detection and ffvisualization in uml class diagrams,” TUD-CS-2006-5, 2006. [Online]. Available: http://www.mm.informatik.tu-darmstadt.de/sta /girschick/publicffations/2006 umldi cld.pdfff
[Xing,2005] Z. Xing and E. Stroulia, “Umldi : an algorithm for ffobject-oriented design di erencing,” in ASE ’05: Proceedings of ffthe 20th IEEE/ACM international Conference on Automated software engineering. New York, NY, USA: ACM, 2005, pp. 54–65.
References[ISO,2001] Rules for application schema, ISO (2001b),Final text of
CD 19109,Geographic information ISO/TC 211 N 1127, 2001.
[Jang,2006] S.-G. Jang and T. J. Kim, “Modeling an interoperable multimodal travel guide system using the iso 19100 series of international standards,” in GIS ’06: Proceedings of the 14th annual ACM international symposium on Advances in geographic information systems. New York, NY, USA: ACM, 2006, pp. 115–122.
[GML,1980] OpenGIS Geography Markup Language (GML) Implementation Specification. New York, NY, USA: ACM, 1980.
Thank You.