inbul 2004
S contents
feremus e
ormats
S are based
nt system a
the server
ts, and then
International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences, Vol XXXV, Part B-YF. Istanbul 2004
2.3.1 Server Side Software: There are many possible ways
when constructing a web-based map system, the main
determiner for the project is the technologies that will be used.
Investigating proper programming languages and web
technologies, the options are narrowed down to scripting
languages and widely used web data presentation systems in
order to increase capability. The aim while selecting scripting
languages for programming; protection of the open source
nature of the project and relatively easily development cycle
must be provided.
The criteria used while selecting the programming language;
e The programming interfaces must provide reaching
web services,
e The programming interfaces must provide database
management,
e Relatively rapid executive code must be used.
The available programming languages such as PHP, Perl,
Python, Tcl/Tk for similar works which support the mentioned
rules above are widely used ones. Perl and Python seemed as
good alternatives because of extensive library support and using
advances of UNIX systems. But Perl had a cryptic syntax and
Python is not built for managing web services. PHP is widely
used general purpose scripting language that is especially suited
for web development (PHP.net, 2004). PHP can be embedded to
(X)HTML or XML. PHP is a tool for creating dynamic data-
driven web-pages. As a result, PHP programming system has
been selected for managing the data system (Listing 1).
«html»
<head>
<title>Example</title>
</head>
<body>
<?php
echo "Hi, I'm a PHP script!";
>>
</body>
</html>
Listing 1. PHP Script Example
The presentation of data is also important in the project. The
presentation system has to be;
e Suitable for map presentation,
e Provide interactivity (response to mouse events) and
animations,
e Suitable for open source development,
e Support scripting,
e Integrated with other web standards easily.
SVG has been selected for this application because it fits the
criteria stated above and the project needs the best filled
criteria.
After determining the main programming tools, a database
system should be chosen that could provide an easy integration
with PHP. The chosen database system must be compatible
with open-source coding. The result is MySQL. The Apache
httpd server was chosen, with similar reasons. Moreover
T
PHPmyAdmin, which is also open-sourced, used to reach
MySQL database over web browser.
SVG is a language for describing the two dimensional graphics
in XML (Adobe.com, 2004). SVG allows three types of graphic
objects: vector graphics shapes, images and text. Graphical
objects can be grouped, styled by styling sheets, transformed
and compositioned into the previously rendered objects. SVG
drawings can be interactive or dynamic. Animations can be
defined and triggered either declaratively or via scripting.
Because of its compability and leveraging of the other web
standards features like scripting can be done on XHTML and
SVG elements simultaneously within the same page (Listing 2).
<?xml version="1.0" encoding="ISO-8859-
|"standalone-"no"?»
<defs>
<circle cx="150" cy="120" r="80"/>
</defs>
<title>SVG </title>
<text x="20" y="30" style="fill: #000; font-size:24px">Element
clipPath</text>
«rect x="30" y="100" width="350" height="80"
style="fill: #FFC; stroke: #00C; stroke-width: 1.5px"/>
<g> </svg>
Listing 2. Example for a SVG file
2.3.2 Client Side Software: A SVG compatible viewer
should be installed at the client side. ;
2.3.3 Methodology:
Server Side
Client Side
Web
Browser
With SVG
Plugin
Figure 3. Flowchart of the System
The following elements must be demonstrated to develop the
system: (Refer to Figure 3);
The Data Upload&Management Component is programmed as
to be responsible for exchanging and manipulating project data
over internet. PHP is used for this component. The process is
carried out by a web based interface generated by a component
for project (Figure 4, Figure 5, and Figure 6). Component is
developed in PHP scripting language that provides API for
reaching MySQL database over internet. Database is designed
with respect to GML data structure. This situation makes
storing XML based data easy and flexible. Database
management system is linked to the PHPMyAdmin web based
software. PHPMyAdmin is an open source tool that is used for