Download Document

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Microsoft SQL Server wikipedia , lookup

Entity–attribute–value model wikipedia , lookup

Serializability wikipedia , lookup

Extensible Storage Engine wikipedia , lookup

IMDb wikipedia , lookup

Oracle Database wikipedia , lookup

Microsoft Access wikipedia , lookup

Functional Database Model wikipedia , lookup

Ingres (database) wikipedia , lookup

Open Database Connectivity wikipedia , lookup

Concurrency control wikipedia , lookup

Database wikipedia , lookup

Relational model wikipedia , lookup

Microsoft Jet Database Engine wikipedia , lookup

Database model wikipedia , lookup

Clusterpoint wikipedia , lookup

ContactPoint wikipedia , lookup

Transcript
Developing an Open Source GIS
Desktop Application for District
Health Information System (DHIS)
by
Henrik, Kristian and Lungo
Introduction
• HISP Programme
– Multinational project running in many
countries (India, South Africa, Tanzania, etc.)
– Strengthening health information system in
general with a focus of District Health
Information System
– Implements District Health Information
Software (DHIS) at district medical offices
• The DHIS is developed exclusively on MS Access
Motivations
• Currently there is an on going
development of DHIS v.2, a to be Java
based DHIS Software (preferred with OSS
based database)
– What are the challenges for migrating the
whole MS Access DHIS database to MySQL?
– Can we build a Java based GIS solution to be
integrated in the DHIS v.2?
Project Objectives
• DHIS database (MS Access) and digitized
maps showing locations of the hospitals
from Nalgonda district was made available
• Objectives
– To migrate the MS Access database to an
open source database system (MySQL for
this project)
– To create a desktop application based on
open source software that make use of the
DHIS database (in this project MySQL)
Project Approaches
DHIS
GIS
DHIS v.2 + GIS
DB Connectors
DB Connector
DB
DB
One Database, Two
Applications (DHIS and GIS)
• We customized an existing
GIS Framework, called JUMP
GIS features Integrated in the
Java Based DHIS version
•
We developed a GIS
Solution from Scratch
based on GeoTools
Migrating Access Database to MySQL
• Tools Used
– MyODBC: an ODBC driver for MySQL
database
– Navicat: a GUI for MySQL database
• Process
– Connect MySQL database to MS Access
database using MyODBC
– Export MS Access tables with data to MySQL
Linking GIS Features to the Database
• Problem:
– No common fields for the feature information
and database records.
– Even the hospital names are not the same!
• Solution
– Create additional table that maps hospital
Feature IDs to the Database OrgUnit RowIDs
Querying the Database
• Output
– Health indicators
• Two querying approaches
– Region Query
• Select a region on the map, query hospital feature
information, save hospital id in a variable, connect
to the database, execute SQL-99 query, filter the
result with hospital id, print the result on a Table
– Text Query
• Connect to the database, select OrgUnit and
Period, display result, highlight corresponding
OrgUnit on the Map
Jump
A very short introduction
Jump overview
•
•
•
•
Jump is a GIS application
Written entirely in Java
Read and writes GML, SHP, WKT
Can easily be extended in many ways
without recompiling
Jump extensions
• A Jump extension is implemented as a
collection of classes packaged as a jar file.
• Jump looks for these jar files in a specific
directory.
• Classes named *Extension are special
and registers the other classes when the
extension is loaded.
Extension types
•
•
•
•
•
Plugins – Menu items
Cursor tools – Toolbar buttons
Tool boxes – Modeless dialogs
Renderers – Control drawing
Data sources – Read/write other formats
Our use of Jump
• Show a map of the Nalgonda district.
• Show all hospitals in Nalgonda
• Display health indicator values for
mandals and hospitals
Limitations
• Limited control over presentation
– Map view is developed more for input than
output
• Sparse documentation
– Do I do X the right way?
– Is Y not supported or have I just not found a
way to do it?
• Open source Java GIS toolkit
– http://geotools.codehaus.org
• Implementation of OpenGIS Consortium
specifications
– http://www.opengis.org
• Why use GeoTools?
• Implementation
–
–
–
–
GeoTools
JTS
JGoodies
JPanel
• Problems
– Coordinates
– Documentation
– Dependencies
• Conclusion
• Questions?