International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences, Vol XXXV, Part B4. Istanbul 2004
about information leak, such as data structure etc. Web Service’s
interface information is described using WSDL, which is an
open standard defined by XML and it's machine-understandable.
Web services can be register to UDDI, so the users or
applications that want to invoke the service can search the UDDI
to find the service, get the information of service included in
WSDL, then understand it and invoke it. So using web service
technique not only provides the
cross-platform and cross-language, but also provides the
capability of integration of difference application. Publishing
GIS applications to Web Services can also help to build GIS
Service workflow. Now there are many standards about Web
Service workflow, such as WSFL, XLANG, BPEL4WS. Using
these web service workflow techniques, people can compose
GIS web service to more powerful workflow to satisfy user
specific request.
3. DESIGN ARCHITECTURE OF WEB FEATURE
SERVICE BASED ON WEB SERVICE
A web feature service based on Web Service is a web service
that implement the Interface defined in OGC Web Feature
Service Implementation Specification. A web feature service can
receive SOAP request from client and send back the response
using SOAP. A web feature service also needs to support HTTP
GET/POST request according to WFS specification. Some ofthe
SOAP servers support HTTP GET/POST besides SOAP such
as .net platform, but some of the SOAP servers do not support
HTTP GET/POST such as APACHI Axis. So if a web feature
service is deployed in Axis server, it's need to build a translator
to translate the HTTP GET/POST request to SOAP request and
translate the response of SOAP message to HTML page to
support HTTP GET/POST. The translator is just between Client
and SOAP server. The design architecture of the web feature
service is show in figurel. The web feature service first publish
itself to UDDI, then the WFS client can search UDDI to find a
desired web feature service and then send HTTP GET/POST or
SOAP request to the service. If the service can't service the
HTTP GET/POST request, the request should send to the
translator to translate to SOAP message and then send to web
feature service. The web feature service process the request and
generate GML data sending back to the client. Other
applications or web services or service workflow can also find
the feature service through UDDI and invoke the service using
SOAP. It's very convenient to integrate Web Feature Service
into other GIS applications or non-GIS applications using this
design architecture.
2.0...............>>>....>..>—..>.>. s
Client(web browser) | Clients search“
HTTP GET HTTP POST. | (SOAP
translators : :
. | al Y
SOAP 2:
^ , UDDI-
pubis centere
Web Feature Servicee * a
GetCapabilities.… searche
> DescribeFeatureTvpe. kem
$5igetuau Other applications
Gaetreaulre.. i es 3
: Joke or service workflows
> Transaction. of
> LockFeatur.
Fig.1 Design Architecture of Web Feature Service Based on
Web Feature Service
interoperability of
164
4. IMPLEMENTATION METHOD OF WEB FEATURE
SERVICE
Using Web Service technique to implement Web Feature
Service include following 3 steps:
I) Create web feature service application
A web feature service application is an application that
implement the interface defined in OGC Web Feature Service
Implementation Specification. The implementation detail of the
application is opaque to user and the application can be created
using any language at any platform. Service providers can create
WES application all by themselves or create the application
using available GIS software platform or GIS software
components. Using GIS components can cut down the
developing workload and increase the reusability of GIS
components. We have implemented Web Feature Service using
GeoStar and GeoSurf components upon .net platform and Java
platform respectively.
2) Deploy web feature service application
After creating the web feature service application, we need
deploy it to a SOAP server and make it provide service to
outside. SOAP, WSDL and UDDI are all open standards, so
different vendors can provide different products of these
standards, such as .net platform provided by Microsoft and Axis
provide by APACHE and other web service tools packages
provided by SUN, IBM and Borland based on Java platform.
Web Feature Service Provider can choice any of the SOAP
servers to deploy the service in. Nearly all the SOAP services
support automatic WSDL generation, so a web feature service
provider does not need to write the WSDL for the service. It can
greatly reduce the workload of the service provider. To wrap an
application to a web service is very easy using these SOAP tools.
3) Publish web feature service to UDDI
After the web feature service is deployed to the SOAP server,
WFS client and other applications or services can invoke the it.
But they must know the service address and service information,
so web feature services need to be published to UDDI. UDDI
provide a mechanism to help service provider publishing
services and to help service user dynamic finding and binding
the service it needs. Among the data model of the UDDI, tModel
is a special data item. It provides the description capability of
specific specifications or concept or some kind of sharing design.
So we can define a tModel for OGC Web Feature Service
Implement Specification, the web feature service can reference
this tModel to indicate that it compliant to OGC WFS
specification. TModel is fingerprint of a web service, using
tModel we can easily search find all web feature services
compliant to OGC WFS.
5. GML SCHEMA DEFINITION
Web Feature return spatial data using GML. GML is provided
by OGC and it is a kind of extensible markup language for
transportation and storage spatial data. OGC Web Feature
Service appoints to use GML2. Now GML3.0 has published and
it has more content than GML2.0, such as Topology, Temporal,
3D, Dictionary, Coordinate etc. GML3.0 is more powerful than
GML2.0. With the development of WFS, it will adopt GML3.0
soon. Next will discuss how to define application schemas using
GML3.0 for a web feature service.
GML 3.0 specification defines 28 schemas, but for a specific
application, it’s no need to using all the schemas, it can choose a
subset of the schemas according to specific application needs.
Interna
GML :
types f
is thus
GMLt
GML :
applica
uses th
G
inc
GML
docum
the cor
of GM
uniforr
service
Descril
require
docum
Descril
provide
freedor
flexibil
GML «
provide
data stı
is no
automa
applica
specifk
6
The cli
created
differei
respon:
for use
System
to char
and the
differe:
from o
data cc
operati
data cc
parse it
Using 1
in, Zooi
improv
worklo
a web {
wants t
leature
for a w
web m:
design
implem