DEVELOPMENT OF A WEB GEOSERVICES PLATFORM FOR SCHOOL OF ENVIRONMENTAL SCIENCES, MAHATMA GANDHI UNIVERSITY, KERALA, INDIA

Web geoservices is the obvious graduation of Geographic Information System in a distributed environment through a simple browser. It enables organizations to share domain-specific rich and dynamic spatial information over the web. The present study attempted to design and develop a web enabled GIS application for the School of Environmental Sciences, Mahatma Gandhi


INTRODUCTION
Web GIS is the obvious graduation of GIS on a distributed environment through a simple browser.It enables organizations to share domain-specific rich and dynamic spatial information over the web.The web GIS is an extension and application of client/server computing, where the geospatial data is accessible in a shareable environment (Karnatak et al., 2007).During the past decade or so, GIS has been widely used in various types of business, government and university projects.Large volumes of geographic data, which are valuable to various organizations, have been accumulated but in the dispersed and heterogeneous manner.In order to fully utilize the available spatial data efficiently and effectively, GIS has to play a critical role, not just in disseminating the raw data, but also in providing information and offering value-added services to potential users.GIS-enabled environments have to be available to the public.It has been wildly recognized that future developments in GIS will centre on web-based GIS, accessing geospatial data and conducting geospatial analyses on the Web.While WebGIS is gaining in popularity, an important issue should be considered: share and interoperate the heterogeneous spatial data.The emergence of Web Services provides a new WebGIS framework for dealing with this issue.Spatial information plays a more important role in the form of services in socioeconomics (Fang and Min, 2009).
In essence, Web Services can package data, message and behaviour based on unified standards, without considering the specific application environment.Different systems can achieve seamless communication, data sharing and interoperation across platforms and languages based on Web Services framework.In fact, the ultimate goal of WebGIS is to realize a real sense of sharing and Interoperability in GIS fields and guide GIS into the service stage from sharing stage.Web Services provide a very good solution in its completely open standard.OGC has also provided a series of standardized interface specifications to support geospatial data sharing and interoperability among web-based GIS systems (Fang and Min, 2009).
Web GIS finds applications in a wide-range of internet based applications such as environmental sustainability indicators, global population predictions, water sustainability, hazard vulnerabilities, climate and disaster monitoring, education, banking, armed forces etc.There are many applications that use online GIS like car navigation, tourism, house and planning management.Internet is a great asset in helping to disseminate knowledge derived from the GIS via the web-based GIS.This project is an attempt to provide an overview of the current status of Web Based GIS by looking into the different types of systems that have been implemented, its techniques and the trends in the industry

MapServer for Windows
MapServer is a popular Open Source project whose purpose is to display dynamic spatial maps over the Internet.Some of its major features include: • Support for display and querying of hundreds of raster, vector, and database formats

GeoMOOSE
GeoMOOSE is a Web Client JavaScript Framework for displaying distributed cartographic data.GeoMOOSE has a number of strengths including modularity, configurability, and delivers a number of core functionalities in its packages.GeoMOOSE is also very light weight for servers making it easy to handle a large number of users, with a large number of layers, and a large number of services without stressing a server.
The GeoMOOSE core is written using JavaScript and HTML.It is entirely possible to run GeoMOOSE with nothing more than a basic web server (Nginx, Apache, and IIS).But besides the basic client core, GeoMOOSE also comes pre-packaged with a number of built in services written in PHP.These services add the ability to perform drill-down identify operations, selection operations, and search data sets.If you have existing scripts that perform similar functions, GeoMOOSE can be tuned to work with those services, no matter which language they were written (Little, 2014).

MAIN WORK DESCRIPTION
This section explains what all things what we have done in the project.Mainly we have used two components. MapServer for windows with Apache web server. GeoMOOSE is a framework for displaying distributed cartographic data.

Map Server for Windows (MS4W)
MapServer is a popular Open Source project whose purpose is to display dynamic spatial maps over the Internet.

Map file:
The .map file is the basic configuration file for data access and styling for MapServer.The file is an ASCII text file, and is made up of different objects.Each object has a variety of parameters available for it.

Installation
MS4W package is simply a zip archive containing MapServer, Apache, and all their dependencies.Add-on packages can later be downloaded and unzipped over existing MS4W folders.Now, goto services in administrative tools in control panel and click on restart apache.Then type localhost in a web browser, it will display the mapserver page.Then type localhost/phpinfo.php in a web browser, then it will display php version information.This shows that mapserver and php is working properly.

Why GeoMOOSE?
GeoMOOSE excels at creating a useful web-based GIS environment for those who need something that works from the first download.It can render, investigate, and even edit layers without the need to write a single line of code.
GeoMOOSE allows users to compare local data seamlessly with popular web mapping services such as Google, Bing, and MapQuest.These are some of the most common tasks performed with MapServer and GeoMOOSE includes real, working, and practical examples.
Beyond rendering, gaining information on a dataset is an important everyday use of aWeb GIS.GeoMOOSE includes all of the basic tools for traditional selection, identification, and searching on a dataset.However, GeoMOOSE's functionality is not limited by those services.To power that functionality we have developed a power service-based architecture that users can use to create their own custom scripts in any language.
Finally, GeoMOOSE is designed with lightweight-extensibility in mind.There are a myriad of custom configuration options, a highly flexible services architecture, and a powerful userextension model.GeoMOOSE can create powerful web GIS applications for those with no programming knowledge and provides an astounding platform for those willing to write some code (Little, 2014).

PROJECT DESIGN
The present project was designed to gain better understanding of the actual entity to be built.The following flowcharts show the design of the entire project with detailed idea of each component tools.

FLOWCHARTS
The specific flowcharts of each customized tools are given below.The Figure 2 is represent the flow diagram of identify tool.This tool is used to identify the particular features in the Malabar region.Figure 3

CODING
The goal of coding is to translate the design of the system into code in a given programming language.The programs should not be constructed so that they are easy to write, but so that they are easy to read and understand.Examples of coding are given below: Click on a tool in available tools and select a layer from select feature and using features in a layer.
Draw a polygon or line or point feature inside the map canvas Check whether a polygon or line or points are displayed inside the map canvas.
Display the attribute of selected feature layer inside the using feature layer.

Stop
Type the name of the attribute in the search box on the left tab.
Display the link of the attributes in the left tab.
Click on that link.It will zoom into the particular feature in that layer.This contribution has been peer-reviewed.doi:10.5194/isprsarchives-XL-8-1207-2014

Mapbook.xml
The <mapbook> tag contains 6 child elements as discussed in above chapter.The code for the above is described below.

Configuration
The configuration tag is used to specify user interface startup settings and other application settings.This is done within the <configuration> ... </configuration> section of the mapbook.xml.The configuration tag has <param> children.<param> elements have a simple format, a "name" attribute which specifies the interface setting to change and then CDATA that specifies the values.

Map-source
The map-source tag is used to specify a single or collection of layers in GeoMOOSE.These are all in the <map-source> .... </map-source> section and later referenced in the <catalog> ....</catalog> section.
All map-source types support two children: <param> -The 'param' child will add or change parameters sent over the URL to a <map-source>.<layer> (required) -At least one layer child is required for each map-source.

Mapserver
This type of layer is meant to communicate with the default mapserver as specified in config.js.The basic additional parameters reference to use a Mapserver layer are: 5.4.1 Layer -The name of layers to be referenced by the map source.This name must referenced in the mapserver file.The layer name could also be "all" and all layers within the mapserver file will be used.

File
-Layers of type 'mapserver' require a value <file> child specifying the location of the mapfile on disk.Mapfiles can be specified with relative paths in <file> tags.

Service
The service element is the key to GeoMOOSE's interoperability.All functions are a type of service (identify, select, Birdseye view, etc.).Services have attributes to define some of it's behaviour: 5.5.1 Name -This is the internal name of the service.

Display
-Sets whether the service will be displayed while "launching."It is useful to set this to false if there is no text-entry required for the service.

Title
-This title will be displayed automatically in the input tab.

5.5.4
Target -If set then this attribute will display the results in a different window.

Layer-controls
As of GeoMoose the only layer control available are popups.

Catalog
The GeoMOOSE Catalog, or Catalog, is the layers listing found in the table of contents on the user interface.The catalog is represented by the <catalog> child inside of the mapbook.

Toolbar
GeoMOOSE now has a better defined toolbar.Just as the catalog and layer definitions have become more separated, so too has the toolbar and service definitions.The toolbar is specified using the <toolbar> child.

Development of Web Enabled Geographical Information
System performed all of its features.No system could be useful if it does not produce the required output in the specific format.The output generated or displayed by the system under consideration is observed as the users about the format required.The figures 5,6and7 show the screen shots of the successful testing of Map server, PHP and GeoMoose respectively.The Figure 8 shows that the screenshots of identity tool.The identify tool will allow you to find out more information about a geographical feature.Click anywhere on the map and the identify tool will display the location, the section you selected.The Figure 9 shows that the Screenshots of Select tool.If you would like to find out information about more than one feature at a time, you may use the select tool.The select tool will allow you to select many features by drawing a line, a polygon, or a box.Furthermore, you find out what features are within a certain distance of your drawing by entering in a value in "buffer selection."Basic information about all the selected features will be displayed.The Figure 10 shows that the screenshots of Search tool.Search tool will allow the user to search by various attributes on a map.The Figure11 shows that Screenshot for displaying Layers in Impact Study of Athirapilly Hydro Electric Project Here the outputs actually bothered or tensed about are 1.The layer will be displayed inside the map canvas.2. Customized tools are tested and work properly.All the above required results obtained correctly and functioned successfully.The system has been developed using the GeoMOOSE java script buitlin framework for distributed cartographic data and MapServer for windows.All the modules are tested separately and put together to form the main system.Finally the system is tested with the following student projects: 1. Impact Study of Athirapilly Hydroelectric Project 2. Malabar Tourist Information System Thus the system has fulfilled the entire objective identified.Every effort has been made to produce the new website as a secured and user friendly GIS website.We tried our best to make the system exception free.Many trial runs of the system have been conducted and we found excellent results.We look forward for upgrading our project one that provides WMS service and the user can download the spatial as free of cost.The feature was not added due to time limitation.

FUTURE SCOPE
The website of the school can have the following enhancement in future.

WFS Support
The Open Geospatial Consortium Web Feature Service Interface Standard (WFS) provides an interface allowing requests for geographical features across the web using platform-independent calls.One can think of geographical features as the "source code" behind a map, whereas the WMS interface or this project return only an image, which end-users cannot edit or spatially analyze.

Spatial Warehousing
Map Server can use a wide variety of sources of data input.One of the solutions growing in popularity is to use spatially enabled databases to store data, and to use them directly to draw maps for the web.

Database Connectivity
This project can be easily upgrade using PostGIS adds support for geographic objects to the PostgreSQL object-relational database.In effect, PostGIS "spatially enables" the PostgreSQL server, allowing it to be used as a backend spatial database for geographic information systems (GIS).

Visualization Techniques
The JavaScript library called d3js can be used to visualize the spatial data in various modes.
Figure2.Flow chart of identify tool