0% found this document useful (0 votes)
8 views

The SQL-Based Geospatial Web Processing Service

Geospatial web study with sql based code

Uploaded by

Jeane Corbet
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views

The SQL-Based Geospatial Web Processing Service

Geospatial web study with sql based code

Uploaded by

Jeane Corbet
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/229041794

„The SQL-Based Geospatial Web Processing Service “

Article · December 2011

CITATION READS

1 440

2 authors:

Soravis Supavetch Sanphet Chunithipaisan


Kasetsart University Chulalongkorn University
12 PUBLICATIONS 16 CITATIONS 13 PUBLICATIONS 49 CITATIONS

SEE PROFILE SEE PROFILE

All content following this page was uploaded by Soravis Supavetch on 10 March 2019.

The user has requested enhancement of the downloaded file.


International Journal of Computer Information Systems and Industrial Management Applications
ISSN 2150-7988 Volume 3 (2011) pp.119-126
© MIR Labs, www.mirlabs.net/ijcisim/index.html

The SQL-Based Geospatial Web Processing Service


Soravis Supavetch and Sanphet Chunithipaisan
Geo-Image Technology Research Unit, Department of Survey Engineering,
Faculty of Engineering, Chulalongkorn University, Bangkok, Thailand
p_soravis@hotmail.com, sanphet.c@chula.ac.th

Abstract: Since the OGC promoted the specification of OGC Even though WPS fulfils the gap of transition from old
Web Processing Service (WPS), several researches on the traditional standalone GIS through service-based architecture,
development of geospatial online service have been happened. no real geo-processing capabilities do exist. For reasoning of
Most of WPSs are developed extending on GIS software or APIs.
ignoring re-implementation an existing GIS function, [1]
Nowadays, most databases are extended to support spatial data
and also provide a number of spatial functions which can be developed WPS using GRASS GIS for a processing engine
called through SQL. This paper presents the development of and open shell script through WPS interface to user for
WPS which uses spatial database as processing engine. Extended executing GRASS functions. On our perspective, not only GIS
WPS protocol is designed to support SQL to invoke spatial software can be used as WPS back-end processing engine, but
function. Using SQL eases the modification of WPS regarding also spatial database is suitable. Spatial database nowadays
the change of processing function service. Databases tested with
provides numerous spatial functions. In addition, the spatial
the implemented WPS include Oracle, PostgreSQL and MySQL.
The database type is listed in WPS GetCapabilites document and functions can be customized or extended through a stored
allowed to choose for working spatial engine. Thus, users can use procedure.
SQL in which they are familiar with the database. The results Currently, several relational databases provide spatial
from scenario tests clearly show the success of the engine to perform several spatial operations which can be used
implementation of this concept. with stored data through SQL without the need of external GIS
tools. If spatial database can be used as the spatial engine for
Keywords: Web Processing Service, Geospatial Processing
Service, Geospatial Processing Engine, Spatial Database. the back-end processing of WPS, this will help reduce
workloads for programmer to develop spatial operation tools.
Moreover, if SQL statement can be attached in the request
I. Introduction
form, the translation of XML in the request form invoking the
Traditional GIS systems are no longer suitable for modern GIS functions can be dismissed since it is directly sent to
distributed, heterogeneous network environments due to the spatial database for carrying out the GIS function. It is also
lack of interoperability, reusability, and flexibility [2]. The flexible for users to form SQL with knowledge on using
geographic information service is enabled by the advancement back-end spatial database used in WPS.
in general web service technology and the efforts of the GIS This paper reports the implementation of WPS using the
industries. Due to the popular use of the Internet and the spatial database as the back-end spatial engine for processing
dramatic progress of telecommunication technology, the wfs:FeatureCollections data from open WFS site. This
paradigm of GIS is shifting into a new direction [6], especially research is an adaptation of our previous research [3] in which
for producing spatial-oriented visualization [5] in personal WPS request form is extended to support the additional basic
devices such as cell phones, PDAs, and smart phones [4]. Until SQL (SELECT-FROM-WHERE-FILTER) for calling the
the Open Geospatial Consortium (OGC), the non-profit, processing task from available databases in WPS. Oracle
international, voluntary consensus standards organization is Spatial, PostGIS and MySQL are databases that are used in
leading the development of standards for geospatial and this research.
location based services. Several implementation Next section gives a short insight into WFS, WPS and
specifications have been deployed, and some of them are Spatial Database. The detail of extended spatial SQL for WPS
widely accepted in GIS industries e.g. GML, WMS, WFS, and request is presented. The developed WPS architecture and
WPS. These services open the opportunity to solve the back-end procedural composition are introduced. The
problems that are typically faced in traditional GIS. The OGC processing capabilities of developed system are described.
WFS [8] defines interfaces for data access and manipulation The test of implemented service through some scenarios is
operations on geographic features. The OGC WMS [10] demonstrated.
specifies the behavior of a service that produces image maps.
The OGC WPS [11] defines a mechanism by which a client II. Technologies Reviews
may submit a processing task to server. To implement these
OWSs supporting scientific workflow require services A. WFS (Web Feature Service)
composition called “web services chaining” [7], “web services
composition”, “web services flow” or “web services WFS enables a client to retrieve geospatial data encoded in
orchestration” [12]. Geography Markup Language (GML) online through HTTP

Dynamic Publishers, Inc., USA


120 Supavetch and Chunithipaisan

protocol. It allows for clients and servers of different vendors A. Processing Clause
or systems to share data without having to convert data Only SELECT clause from database SQL is un-extended. User
between proprietary formats. WFS server is then a feature can use spatial functions e.g., SDO_CS, SDO_GEOM,
online resource, providing an interface for data access and SDO_LRS or SDO_UTIL package subprograms from Oracle,
manipulation. A request sent to a WFS server is a query (or ST_Buffer, ST_DWithin, ST_Transform,
transformation operation) for one or more features that can be ST_Line_Interpolate_Point functions from PostGIS, or
delivered by a server. When the WFS receives the request, it functions from MySQL, to process features from WFS site.
executes the function by the request and sends back the Another advantage of using spatial database as processing
information to a client. WFS communicates with a client and engine is that user can customize additional function
allow programs written in different languages and on different embedded to database through stored procedure. More
platforms. Interface that is typically used in WFS is defined in developed algorithms can be plugged into service. The
XML. processing function in SELECT clause is not limited in one
function per request but user can request numerous examples.
B. WPS (Web Processing Service) For example SELECT ST_Buffer( ST_Transform(…) , 100 ),
ST_Buffer( ST_Transform(…) , 200) to retrieve two different
buffered polygons from single original polygon within
WPS is designed to standardize the way that GIS calculations
coordinates already transformed.
are made available to the Internet. WPS can describe any
calculation (i.e. process) including all of its inputs and outputs,
and triggers its execution as a Web service. WPS supports B. Data Retrieving Clause
simultaneous exposure of processes via HTTP/GET (KVP:
Key Value Pairs) and HTTP/POST (XML-based document), This processing service provides only processing functions
thus allowing the client to choose the most appropriate without any provided features. Processing features must
interface mechanism. The specific processes served up by a retrieve from WFS site. We extended an SQL in FROM clause
WPS implementation are defined by the owner of that to express WFS site and attaching FILTER clause for defining
implementation. filter condition. The address of WFS site is located in the
FROM clause. The layer name is defined after the address
C. Spatial Database separated by #. The address and the layer name are both
encoded together inside <?--?> tag. For filtering condition,
Spatial database is a database system which offers spatial data user can express OGC Filter Encoding like SQL. We use CQL
types in its data model and query language. Most relational filter (Common Query Language) from GeoTools
database management systems have supported spatial data (http://www.geotools.org) to wrap FE (Filter Encoding) [9]
type including point, line and polygon. Some of them include expression. The following table is examples of CQL filter
Oracle, MySQL and PostgreSQL. MySQL has included comparing with OGC FE syntax.
spatial extension built in since MySQL 4.1 which supports
data type following OGC simple feature specifications for CQL Filter Encoding
SQL, and also provided spatial query tools and supports L.NAME = ‘LAND01’ <PropertyIsEqualsTo/>
spatial indexing using R-tree with quadratic splitting. PostGIS
L.NAME <> ‘LAND01’ <PropertyIsNotEqualsTo/>
is used to spatially enable the PostgreSQL to be used as a
backend spatial database. PostGIS uses an R-tree index L.AREA > 100 <PropertyIsGreaterThan/>
implemented on top of GiST (Generalized Search Trees) to BBOX(GEOM,
<BBOX />
index GIS data. Oracle Spatial is a module option for Oracle 10,20,30,40)
that provides advanced spatial features to support GIS CONTAINS(GEOM, … ) <Contains/>
solutions. OGC simple feature is supported since Oracle 10g.
INTERSECT(GEOM, … ) <Intersect/>
An R-tree or quad tree index can be used in Oracle for spatial
data index. Table 1. A Comparison of CQL Filter and OGC Filter
Encoding
III. Extend Spatial SQL for WPS
Syntax Rules
SQL as processing command is the main idea of this research
to explore processing capabilities of spatial database to INSERT, UPDATE and DELETE clauses are not allowed
web-based user. An SQL base syntax for this service. User only use SELECT clause to request a
SELECT-FROM-WHERE clause is applied to processing function. The structure of extended SQL statement
SELECT-FROM-WHERE-FILTER for WPS user request. is as follows:
Extended SQL is designed for user to send a request statement
to WPS which enable user to define a GetFeature from WFS SELECT <Processing Function>
site with processing simultaneously. Processing functions are FROM <WFS Site>
available in our WPS coming from spatial database. The WHERE <Processing Condition>
pattern of designed SQL statement is shown in the following FILTER <CQL Filter>
section.
An expression in the SELECT clause is a native SQL
The SQL-Based Geospatial Web Processing Service 121

statement according to selected spatial database by user.


FROM clause is defined for specifying WFS URL and the
name of feature type. WHERE clause is an option for defining Request
a processing condition. The filter encoding which is used in
diverted WFS request is after the FILTER clause. The HTTP GET / POST
following statement is used to demonstrate the sample of with KVP encoding
requested SQL to different processing engine. WPS interface
SQL Statement
SELECT L.NAME, WFS
SDO_GEOM.RELATE(L.SHAPE,’determine’, SQL Parser Server
SDO_UTIL.FROM_WKTGEOMETRY(
‘POLYGON(( Internet
101.86 14.81,101.86 14.92,101.97 14.92 WFS Requester
,101.86 14.81))’),0.1) AS RELATIONSHIP
FROM <?http://localhost/geoserver/wfs#nesdb:LAND?>
FILTER NAME = ‘LAND01’ Data Importer

SELECT L.NAME,
MBROverlaps(L.SHAPE,’determine’,
Processing Invoker Processing engine
GeomFromText(‘POLYGON((
Engine
101.86 14.81,101.86 14.92,101.97 14.92
,101.86 14.81))’),0.1) AS RELATIONSHIP Response
FROM <?http://localhost/geoserver/wfs#nesdb:LAND?> Data Transformer
GML / JSON
FILTER NAME = ‘LAND01’
Figure 1. Online processing service frame work.
The first example is to evaluate the polygon relationship
between the land parcel ‘Land01’ which is queried from When the user send the request via HTTP GET or POST
another WFS and the defined polygon. Such processing with KVP encoding which is a designed statement including
occurrs in Oracle database. The second example is the same SQL for processing function, SQL parser will interpret and
question as the first example, but the spatial engine used is extract a WFS data source and SQL statement from the user
MySQL database. request to form a WFS request. WFS requester will send such
request to WFS site to get data in GML format. Once GML
stream is responded back from WFS site, the data importer
IV. A WPS ARCHETECTURE will transfer that received data into the database store. After
that, the processing invoker will send the SQL command to the
The developed WPS used existing spatial database, Oracle spatial database to call spatial processing functions. The result
Spatial, MySQL and PostgreSQL, as a spatial engine. Several set from spatial database will be parsed to a data transformer
tools were developed for many purposes, e.g., to support for converting result set to user defined output format: GML or
extended SQL request form, to connect and retrieve data from JSON (JavaScript Object Notation).
other WFS sites and to manage and manipulate collected GML The sequence diagram of above processing tasks is
data. The architecture of the service system is shown in demonstrated as follows:
Figure 1.
122 Supavetch and Chunithipaisan

of feature table in spatial database. The working sequence of


:Client :WPS :Database :WFS Server
WFS Requester with other related components of the system is
shown in Figure 4.
Request for processing task
( sql , database name )
WFS Requester Data Importer Database WFS

Request for retrieving data


( WFS and Filter Encoding ) GetCapabilities

Bounding Box, Spatial Reference System


Feature data ( gml )
GetDescribeFeatureType
Ad hoc data

Feature Type
Success

Metadata
Processing
Create Spatial Metadata,
Features data Create Temp Table

Processed data Table ready

GetFeature
Figure 2. Online query and processing service (OQPS)
sequence diagram Features Data

A. SQL Parser
WKT Features

An SQL Parser component is the most importance part of the Import Features
service. Every incoming SQL composes of two conditions i.e.,
data retrieving condition and data processing condition. Data Import Success
requests from FORM and FILTER clause will be re-encoded
Features ready
in WFS request protocol in order to parse to WFS data source. for processing
Data that are retrieved from WFS site will be stored in ad hoc
database table. The user requests statement is then reformed
into database native SQL for sending to user defined database Figure 4. Preparation diagram for temporal feature
to invoke spatial operation. importation.
Requested SQL
C. Data Importer
SELECT <Processing Functions>
FROM <URL#TypeName>
WHERE <Processing Condition> Data Importer imports data from WFS requester into prepared
FILTER <CQL Filter> table for ad-hoc dataset to be used in the processing task later.
Data Importer transforms GML feature members into SQL
insert statement and performs execution. For using Oracle
database, after data inserted into table, Data Importer will
Executing SQL
invoke creating spatial index statement (Oracle also requires
SELECT <Processing Functions> spatial index for performing spatial query and processing).
FROM <Temporary table>
WHERE <Processing Condition> D. Processing Invoker

Figure 3. Recomposing requested SQL.


Processing Invoker will send a recomposed SQL statement
from SQL Parser to database for carrying out spatial
B. WFS Requester processing operation.

WFS Requester is to establish the connection to other WFS E. Data Transformer


site for sending a request and retrieving a response in GML.
Before importing retrieved features to database, WFS
The resulting set from the output of spatial database will be
Requester establishes the connection through GetCapabilities
transformed in GML or JSON (upon the user request) which is
and GetDescribeFeatureType for evaluating feature schemas
done by using the Data Transformer tool. The features
and spatial reference system for spatial database table
attributes result is identified and extracted from the user
preparation. Information from GetCapabilities and
request statement in SELECT clause. The attribute which
GetDescriveFeatureType are necessary for creating metadata
comes from the processing operation is defined using alias
The SQL-Based Geospatial Web Processing Service 123

name (defined using AS …). The following example V. PROCESSING CAPABILITIES


demonstrates the GML result from database execution
according to a user request statement.
The implemented service information and detail is available
SELECT SDO_GEOM.SDO_LENGTH(
at http://161.200.86.131/cuwps/wps.jsp which provides a link
SDO_AGGR_CONCAT_LINES(THE_GEOM),0.05) to access GetCapabilities and DescribeProcess operations.
AS RD_LENGTH, The processing functions available in the system can be
RDLNNAMT, checked through GetCapabilities operation. There is only one
SDO_UTIL.TO_GMLGEOMETRY(
SDO_AGGR_CONCAT_LINES(THE_GEOM)) type of processing function available in the system, called
AS THE_GEOM SQL_PROCESSING, since the spatial operations can be
FROM <?http://161.200.86.131/geoserver/wfs#cuwps:mainroad?> freely defined by user in SQL statements depending on which
GROUP BY RDLNNAMT
FILTER MAINROAD_I = 78230 database is used. The following example demonstrates the
GetCapabilities document which is encoded in XML.

<ProcessDescription processVersion=“1” … >


<cuwps:Identifier>SQL_PROCESSING
</cuwps:Identifier>
<cuwps:Title>
SQL expression for a processing task …
</cuwps:Title>

</ProcessDescription>

User can use any SQL statement in which database that the
user is familiar with. The detail of using the SQL_Processing
service is found at DescribeProcess operation. It describes the
parameters that have to be sent to the service, the type and
value of parameters to be defined, and the output type of
response value. The example of DescribeProcess document of
Figure 5. GML result.
SQL_Processing is shown as follows:
From the above example, RD_LENGTH and THE_GEOM
<DataInputs>
are used as alias names of feature attributes with the attribute
<Input minOccurs=“1” maxOccurs=“1”>
data coming from the processing operations, whereas,
<cuwps:Identifier>SQL</cuwps:Identifier>
RDLNNAMT is the attribute which already come from the
<cuwps:Title>SQL statement</cuwps:Title>
requested WFS and can be directly put in GML. <cuwps:Abstract>SQL statement
Another format, JSON, is also supported in the Data </cuwps:Abstract>
Transformer tool. This type of output can be directly used in <LiteralData>
client side application which JavaScript is supported, e.g. <cuwps:DataType ows:reference=”xs:string”/>
OpenLayers and GeoExt. JSON data is encoded in the format <cuwps:AllowedValues>
so-called JavaScript array object which is used to store <cuwps:Value/>
multiple values in a single variable. Some JavaScript library </cuwps:AllowedValues>
can benefits from JSON format for data visualization by </LiteralData>
rendering data in table form, for example, Ext.data.ArrayStore </Input>
class in Ext. The following example shows the output in JSON <Input minOccurs=“1” maxOccurs=“1”>
format from the same user request statement. <cuwps:Identifier>DATABASE</cuwps:Identifier>
<cuwps:Title>Database name</cuwps:Title>
SELECT SDO_GEOM.SDO_LENGTH(…) <cuwps:Abstract>Database name
AS RD_LENGTH, </cuwps:Abstract>
RDLNNAMT, <LiteralData>
SDO_UTIL.TO_WKTGEOMETRY( <cuwps:DataType ows:reference=”xs:string”/>
SDO_AGGR_CONCAT_LINES(…) ) <cuwps:AllowedValues>
AS THE_GEOM <cuwps:Value>ORACLE_10G</cuwps:Value>
FROM <?...?> <cuwps:Value>MYSQL_5</cuwps:Value>
FILTER … <cuwps:Value>POSTGIS_8_4</cuwps:Value>
</cuwps:AllowedValues>
</LiteralData>
</Input>
[<string: RD_LENGTH>,<string:RDLNNAMT>,<string:WKT>] </DataInputs>
<ProcessOutputs>
Figure 6. Additional JSON output format. <Output>
<cuwps:Identifier>GML2</cuwps:Identifier>
124 Supavetch and Chunithipaisan

<cuwps:Title>GML document version


2.0</cuwps:Title>
<cuwps:Abstract>GML document from processing
features </cuwps:Abstract>
</Output>
<Output>
<cuwps:Identifier>JSON</cuwps:Identifier>
<cuwps:Title>Array of processing
result</cuwps:Title>
<cuwps:Abstract>Javascript
arrays</cuwps:Abstract> Figure 8. Demo client application using OpenLayers to
</Output> visualize result (http://161.200.86.131/cuwps/demo_wps.jsp).
<ComplexOutput>
<Default> Some scenarios were set up in order to test the concept of
<Format> this implementation and the developed system. The WFS was
<MimeType>text/xml </MimeType> set up using GeoServer with the data of Bangkok Metropolitan
<Schema>http://161.200.86.131/cuwps/ Administration (BMA) including road and district layers.
schemas/gml/2.1.2/gml.xsd</schema> The first scenario is to demonstrate the use of Linear
…</ProcessOutputs> Referencing System (LRS) function available from Oracle
Spatial to generate a 50-meter buffer around the road segment
As shown above, user has to define the type of database to
from 100 meters to 200 meters from the starting point of
be used for processing function by defining the value for the
MAINROAD_I = 77752. The encoding for the
DATABASE identifier: ORACLE_10G, MYSQL_5 or
STATEMENT and visualized result are shown as follows
POSTGIS_8_4. User put the SQL statement that matches the
respectively:
SQL with defined database and follows the designed SQL
syntax. There are two types of output that can be chosen
SELECT SDO_UTIL.TO_WKTGEOMETRY(
including GML2 and JSON. The default output type is SDO_LRS.CONVERT_TO_STD_GEOM(
GML2. SDO_GEOM.SDO_BUFFER (
SDO_LRS.DYNAMIC_SEGMENT(
VI. SERVICE TESTING AND SAMPLE SDO_LRS.CONVERT_TO_LRS_GEOM(
APPLICATION SDO_CS.TRANSFORM(THE_GEOM,4326)),
100,200,0.001),50,1))) AS THE_GEOM
FROM <?http://161.200.86.131/geoserver/wfs
We developed demo client application through our web site
#cuwps:mainroad?>
(http://161.200.86.131/cuwps/demo_wps.jsp) for showing
FILTER MAINROAD_I = 77752
facilities of using extended SQL from spatial database for
processing features from WFS site by CUWPS
(Chulalongkorn University Web Processing Service).

Figure 9. Buffered polygon returned from CUWPS by


executing Oracle LRS function.

The above example uses the Oracle Spatial for


processing service. The requested WFS data will be
downloaded and stored in the database. Once the download
Figure 7. CUWPS web site (http://161.200.86.131/cuwps/). data is in the database, the processing will be carried out on the
ad-hoc data store. The result of the user request will be
returned to the user. Figure 10 and 11 shows the downloaded
data and data result that are stored in the Oracle Spatial
respectively.
The SQL-Based Geospatial Web Processing Service 125

Figure 10. VIPAVADEE road data by WFS site.

Figure 12. A returned JSON format from CUWPS.

VII. A COMPLEX FEATURE PROCESSING


SERVICE DEMONSTRATION APPLICATION

To emphasize benefits of using spatial database for WPS


Figure 11. Buffered polygon from CUWPS execution.
implementation, the complex feature model like road network
The second scenario is to find the area of the queried was selected for a demonstration. The network model e.g.,
polygon from the WFS feature using Oracle Spatial database. node, link and path is complex to exchange over the web for
The following example shows the SQL statement for finding processing through other WPS due to requiring a specific
the area of the object from the WFS feature. functions for accessing and processing. The PL/SQL
sub-programs i.e., SHORTEST_PATH, TSP_PATH (Travel
SELECT SDO_UTIL.TO_GMLGEOMETRY( Sale Man Problem) are designed for user request and user can
THE_GEOM) AS THE_GEOM, also refer to other WFS site for the data which requires
SDO_GEOM.SDO_AREA(THE_GEOM,10) processing with the road network through extended SQL. The
AS DISTRICT_AREA Oracle database is selected for use as spatial engine. The
FROM <?http://161.200.86.131/geoserver/wfs Bangkok road network is imported to Oracle and ready to
#cuwps:bma_admin_poly?> perform a processing by user. The following figures are
FILTER ID0 = 1013 examples of predefined functions i.e., SHORTEST_PATH
and TSP_PATH encoded in request SQL form.
The third scenario demonstrates how to find the centroid of
the queried polygon. The following example shows the SQL Shortest Path
statement to find the centroid of the district with ID0 1013
from WFS. SELECT SDO_UTIL.TO_WKTGEOMETRY(
SDO_GEOM.SDO_BUFFER(
SELECT ID, AsText(Centroid(the_geom)) SDO_CS.TRANSFORM(
AS THE_GEOM , POP_YEAR41 , SHORTEST_PATH('MAINROAD',1005,706)
DENSITY41 , POP41_MEN ,4326) ,200,0.001))
,WOMEN, TOTAL41 FROM DUAL
FROM <?http://161.200.86.131/geoserver/wfs
#cuwps:bma_admin_poly?>
FILTER ID0 = 1013

The above processing expression is carried out using


PostgreSQL database, and the result is returned in JSON as
shown in Figure 12.

Figure 13. Buffered LineString from shortest path.


126 Supavetch and Chunithipaisan

Travel Sale Man Problem

SELECT SDO_UTIL.TO_WKTGEOMETRY( Executing GIS Web Service Composition." IEEE


SDO_CS.TRANSFORM( International Geoscience and Remote Sensing
TSP_PATH('MAINROAD', Symposium, Seoul, Korea (South), 2005.
SDO_NUMBER_ARRAY(875,897,882,753) [3] Chunithipaisan, S., and Supavetch, S. “The
),4326)) Development of Web Processing Service Using the
FROM DUAL Power of Spatial Database.” International Conference
on Emerging Trends in Engineering and Technology
(ICETET), Nagpur, India, 2009.
[4] Echtibi, A., Zemerly, M.J., and Berri, J. “A
Service-Based Mobile Tourist Advisor.” International
Journal of Computer Information Systems and
Industrial Management Application (IJCISIM), (2009):
177-187.
[5] Goodchild, M. F. “The Use Cases of Digital Earth.”
International Journal of Digital Earth, 1(1), (2008):
31-42.
Figure 14. TSP_PATH (Travel Sale Man Problem) function
[6] Guanhua, C., Kunqing, X., Xiujun, M., Yanfeng, S.,
visualized result.
Yuanzhi, Z., and Lebin, S. "G-WSDL: A
Data-Oriented Approach to Model GIS Web
Services." IEEE International Geoscience and Remote
VIII. CONCLUSION Sensing Symposium, Seoul, Korea (South), 2005.
[7] Nadine, A. "Chaining Geographic Information Web
This paper introduces the concept of applying spatial Services." IEEE Internet Computing, 7(5), (2003):
database and using SQL for extending the capabilities of WPS 22-29.
implementation. The data source from WFS site is designed as
a parameter in the outlined SQL. The scenario tests show the [8] Open Geospatial Consortium Inc., “OpenGIS Web
benefit that user can process geospatial data from other WFS Feature Service (WFS) Implementation
site using common SQL of which database user familiar with. Specification.” Version 1.1.0, Document number OGC
04-094, 2005(a).
This WPS framework implements OGC WPS interface
without any spatial functions implementation. User can change [9] Open Geospatial Consortium Inc., “OpenGIS Filter
the execution engine (database) to a new version or others Encoding Implementation Specification.” Version
database software. Additionally, this research method can be 1.1.0, Document number OGC 04-095, 2005(b).
used to solve a lack of features filtering in WPS (in standard [10] Open Geospatial Consortium Inc., “OpenGIS Web
specification, WPS does not necessary provide Filter Map Service Implementation Specification.” Version
Encoding) in which the filtering statement can be expressed in 1.3.0, Document number OGC 06-042, 2006.
WHERE clause, for extracting the processed result.
Thus, all the scenarios demonstrate the benefits of the [11] Open Geospatial Consortium Inc., “OpenGIS Web
processing service on data which come from external data Processing Service,” Version 1.0.0, Document number
OGC 05-007r7, 2007.
source through WFS which using the power of spatial
database. The supporting processing service using multiple [12] Peltz, C. “Web Services Orchestration and
WFS data sources is the main issue of this research for further Choreography.” In Computer, vol. 36, no. 10, 46-52,
work. IEEE Computer Society, 2003.

Acknowledgments
Author Biographies
This research was supported by the Ratchadaphisek Somphot Soravis Supavetch received his B.Eng degree in Survey Engineering from
Endownment Grants from Chulalongkorn University. Chulachomklao Royal Military Academy and M.S. (Forestry) degree from
Kasetsart University, Thailand. He is currently a PhD candidate in Survey
Engineering at Chulalongkorn University, Thailand and currently attached to
References Royal Thai Survey Department. His area of interest includes service oriented
architecture and geospatial processing service in geospatial information
system.
[1] Brauner, J., and Schaeffer, B. “Integration of GRASS
Functionality in Web based SDI Service Chains.” Free Sanphet Chunithipaisan received his B.Eng and M.Eng degree in Survey
and Open Source Software for Geospatial conference, Engineering from Chulalongkorn University, Thailand. He holds a PhD in
Geomatics from University of Newcastle upon Tyne, UK. He is currently
Barcelona, Spain, 2008. working as Assistant Professor in Department of Survey Engineering at
[2] Chen, L., Xiujun, M., Guanhua, C., Yanfeng, S., and Chulalongkorn University. His area of interest includes spatial database and
Xuebing, F. "A Peer-to-Peer Architecture for Dynamic data interoperability in geospatial information system.

View publication stats

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy