[Geoserver-devel] FROGS hopped along

Well we met with them but did not get far, hoping they will call back at some point.
Jody

I had a look a FROGS, but I thought, that their geoserver integration is
just at an early design stage. However, we do have the WPS
implementation already running compliant to the current spec. So I
think, it is valid to get this extension started, correct? Otherwise
please point me to a link, about FROGS and their geoserver integration.

Best regards

Theodor

-----Original Message-----
From: Jody Garnett [mailto:jgarnett@anonymised.com] Sent: Thursday, August 31, 2006 5:49 PM
To: Theodor Foerster
Cc: geoserver-devel@lists.sourceforge.net
Subject: Re: [Geoserver-devel] WPS plugin for geoserver

Dude since you are on a timeline, the FROGS project does have a WPS
stack already in place we tried working with them, but they were shy on
email. Why not grab there code and see if you can get done quicker.
(at the very least they probably have something that parses a WPS
request).
Jody
  

Jody, thanks for your comments. I just went through them and saw a lot
    
of new decisions appearing. I think I will try to set up the WPSDataStore for each WPS instance. Thus one WPSDataStore has multiple
    
FeatureTypes (i.e. processes). By now that s only a prototype... I will try to figure out the Geotools OWS capabilties later, if the prototype is suffient.

To give some more details about the context of my planned implementation. I will trigger mostly the WPS, provided by 52north at incubator52n.de/twiki/bin/view/Processing/52nWebProcessingService .
Finally I will link there any implementation code of the extension, if
    
there are no problems with any licensing...

I may get back to one of your comments in advance... Thanks again!

Theodor

-----Original Message-----
From: Jody Garnett [mailto:jgarnett@anonymised.com]
Sent: Thursday, August 31, 2006 5:19 PM
To: Theodor Foerster
Cc: geoserver-devel@lists.sourceforge.net
Subject: Re: [Geoserver-devel] WPS plugin for geoserver

That is a lot of questions, let me try:

Hi,
I just started to extend geoserver (v.1.3.0) for WPS support. The idea
    
is to serve geoprocesses through geoserver, in particular through the
      
WMS (WFS could be a future task). I am writing the WPS extension as a
      
read-only DataStore in geoserver.
    

That is a interesting choice, WPS is a protocol (not a source of data)
    
- I am not sure I understand this design decision?
  

By now, I can create WPS instances in geoserver as DataStores, but what do I have to do to create actual FeatureStores?
    

You need to configure a GeoTools FeatureTypeInfo, you can do this using the user interface (or by hacking and XML in your own conf
    

directory).
  

You may also try out Justin's new GeoTools catalog backed GeoServer available in the community module (which I am trying to figure out now)
- the api for programmers is a lot more direct.

However in my limited understanding a Web Processing Service, is supposed to accept an OWS Request that includes a WFS request to a Web
    
Feature Service, the WPS would fetch features, process them, and return the result. (I do hope that is correct).

You can find an example HelloWorld Open Web Service as part of the GeoServer 1.4 documentation.
  

Or how do I get the processed results out to geoserver?
  

If your processed results are set up as part of your geoserver configuration (either the xml files, or by hand using the config ui) they will be published for other applications. Alternatively the WPS specification tells you an different protocol (ie not Web Feature
Server) by which you can do this.
  

What is the role of the namespaces?
    

namespace is the namespace for the resulting GML content.
  

How can I pass dynamic parameters of the WMS request to the
      

DataStore?
  

The dynamic paramters from the WMS request are limited to a bounding box, it will get reprojected into some kind of spatial query based on a Polygon, the other dynamic parameters are based on the Style Layer Descriptor specificaiton and are handled by the rendering process. (as
    
an example they define a series of explicit queries against your DataStore, sometimes only requesting a geometry attribute for
    

display).
  

I will match each WPS-process with a FeatureType. However that s perhaps not the best way, but straight-forward. Additionally I have to
    
deal with a little time constraint. The stuff has to work until end of
    
next week
:slight_smile:
  

Fun, so does your WPS need to be in agreement with the specification? If so you should start defining your own community module to handle WPS requests, capturing each request in a DataStore would be tough, you could (when you define your process) accept DataStoreFactorySPI parameters to handle the "dynamic" paramters include in your specific request.

You would be making these datastores up per each request though, so you would really need to understand Justins new catalog. Or you could just make them, use them to generate some GML, and then throw them away again.
  

I am looking forward to any comments concerning some design issues, but also how to solve the above mentioned problems.
  

Sounds to me like you are making up a new service:
1. define a module (as per examples in the community space) 2. when handling your request produce a Map of the dynamic parameters 3. use the Map of parameters to create a new "DataStore"
4. use that datastore to generate some GML (using the existing geoserver codebase as an example) 5. throw away the datastore after
    

use.
  

Cheers,
Jody
  

Cheers
Theodor

ITC, Enschede
Department of Geo Information Processing PO. Box 6 7500 AA Enschede the Netherlands

---------------------------------------------------------------------
-
--- Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job
    
easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121
6
42 _______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel
  
----------------------------------------------------------------------
--- Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job
    
easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=1216
42 _______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel
  

Yeah, from my understanding FROGS and 52N are at about the same level of their implementations, both have full implementations of 0.4

Theodor and I chatted off-list a bit, and I pointed him in this direction. The one thing I'm not yet sure on is if you should be writing a datastore or if you should perhaps write a new service that then calls the WMS.

Let me post in your proposed workflow:

'The planned scenario: WMS client accesses a layer on the WMS, which is
actually processed on the fly by the WPS. The workflow: WMS receives
request. WMS triggers the WPS with some predefined data and parameters.
In our case we use the WPS for generalization (in detail: simplification
of data). The WPS processes the data and returns it to the WMS. WMS
renders it (as jpg or svg). '

I'm going to think about this a bit and reply, but thought I'd put it out there for Jody as well.

Chris

Jody Garnett wrote:

Well we met with them but did not get far, hoping they will call back at some point.
Jody

I had a look a FROGS, but I thought, that their geoserver integration is
just at an early design stage. However, we do have the WPS
implementation already running compliant to the current spec. So I
think, it is valid to get this extension started, correct? Otherwise
please point me to a link, about FROGS and their geoserver integration.

Best regards

Theodor

-----Original Message-----
From: Jody Garnett [mailto:jgarnett@anonymised.com] Sent: Thursday, August 31, 2006 5:49 PM
To: Theodor Foerster
Cc: geoserver-devel@lists.sourceforge.net
Subject: Re: [Geoserver-devel] WPS plugin for geoserver

Dude since you are on a timeline, the FROGS project does have a WPS
stack already in place we tried working with them, but they were shy on
email. Why not grab there code and see if you can get done quicker.
(at the very least they probably have something that parses a WPS
request).
Jody
  

Jody, thanks for your comments. I just went through them and saw a lot
    
of new decisions appearing. I think I will try to set up the WPSDataStore for each WPS instance. Thus one WPSDataStore has multiple
    
FeatureTypes (i.e. processes). By now that s only a prototype... I will try to figure out the Geotools OWS capabilties later, if the prototype is suffient.

To give some more details about the context of my planned implementation. I will trigger mostly the WPS, provided by 52north at incubator52n.de/twiki/bin/view/Processing/52nWebProcessingService .
Finally I will link there any implementation code of the extension, if
    
there are no problems with any licensing...

I may get back to one of your comments in advance... Thanks again!

Theodor

-----Original Message-----
From: Jody Garnett [mailto:jgarnett@anonymised.com]
Sent: Thursday, August 31, 2006 5:19 PM
To: Theodor Foerster
Cc: geoserver-devel@lists.sourceforge.net
Subject: Re: [Geoserver-devel] WPS plugin for geoserver

That is a lot of questions, let me try:

Hi,
I just started to extend geoserver (v.1.3.0) for WPS support. The idea
    
is to serve geoprocesses through geoserver, in particular through the
      
WMS (WFS could be a future task). I am writing the WPS extension as a
      
read-only DataStore in geoserver.
    

That is a interesting choice, WPS is a protocol (not a source of data)
    
- I am not sure I understand this design decision?
  

By now, I can create WPS instances in geoserver as DataStores, but what do I have to do to create actual FeatureStores?
    

You need to configure a GeoTools FeatureTypeInfo, you can do this using the user interface (or by hacking and XML in your own conf
    

directory).
  

You may also try out Justin's new GeoTools catalog backed GeoServer available in the community module (which I am trying to figure out now)
- the api for programmers is a lot more direct.

However in my limited understanding a Web Processing Service, is supposed to accept an OWS Request that includes a WFS request to a Web
    
Feature Service, the WPS would fetch features, process them, and return the result. (I do hope that is correct).

You can find an example HelloWorld Open Web Service as part of the GeoServer 1.4 documentation.
  

Or how do I get the processed results out to geoserver?
  

If your processed results are set up as part of your geoserver configuration (either the xml files, or by hand using the config ui) they will be published for other applications. Alternatively the WPS specification tells you an different protocol (ie not Web Feature
Server) by which you can do this.
  

What is the role of the namespaces?
    

namespace is the namespace for the resulting GML content.
  

How can I pass dynamic parameters of the WMS request to the
      

DataStore?
  

The dynamic paramters from the WMS request are limited to a bounding box, it will get reprojected into some kind of spatial query based on a Polygon, the other dynamic parameters are based on the Style Layer Descriptor specificaiton and are handled by the rendering process. (as
    
an example they define a series of explicit queries against your DataStore, sometimes only requesting a geometry attribute for
    

display).
  

I will match each WPS-process with a FeatureType. However that s perhaps not the best way, but straight-forward. Additionally I have to
    
deal with a little time constraint. The stuff has to work until end of
    
next week
:slight_smile:
  

Fun, so does your WPS need to be in agreement with the specification? If so you should start defining your own community module to handle WPS requests, capturing each request in a DataStore would be tough, you could (when you define your process) accept DataStoreFactorySPI parameters to handle the "dynamic" paramters include in your specific request.

You would be making these datastores up per each request though, so you would really need to understand Justins new catalog. Or you could just make them, use them to generate some GML, and then throw them away again.
  

I am looking forward to any comments concerning some design issues, but also how to solve the above mentioned problems.
  

Sounds to me like you are making up a new service:
1. define a module (as per examples in the community space) 2. when handling your request produce a Map of the dynamic parameters 3. use the Map of parameters to create a new "DataStore"
4. use that datastore to generate some GML (using the existing geoserver codebase as an example) 5. throw away the datastore after
    

use.
  

Cheers,
Jody
  

Cheers
Theodor

ITC, Enschede
Department of Geo Information Processing PO. Box 6 7500 AA Enschede the Netherlands

---------------------------------------------------------------------
-
--- Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job
    
easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121
6
42 _______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel
  

----------------------------------------------------------------------
--- Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job
    
easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=1216
42 _______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel
  
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

!DSPAM:1003,44f70951103152081064789!

--
Chris Holmes
The Open Planning Project
http://topp.openplans.org

Perhaps, it would be better to include the WPS on the WFS side and then
trigger the WFS through the WMS. I think about that right now, because
you provide some special filter capabilties on the WFS, these could be
coupled with a WPS.

Just a short thought.

Theodor

-----Original Message-----
From: Chris Holmes [mailto:cholmes@anonymised.com]
Sent: Thursday, August 31, 2006 8:13 PM
To: Jody Garnett
Cc: Theodor Foerster; Geoserver-devel
Subject: Re: [Geoserver-devel] FROGS hopped along

Yeah, from my understanding FROGS and 52N are at about the same level of
their implementations, both have full implementations of 0.4

Theodor and I chatted off-list a bit, and I pointed him in this
direction. The one thing I'm not yet sure on is if you should be
writing a datastore or if you should perhaps write a new service that
then calls the WMS.

Let me post in your proposed workflow:

'The planned scenario: WMS client accesses a layer on the WMS, which is
actually processed on the fly by the WPS. The workflow: WMS receives
request. WMS triggers the WPS with some predefined data and parameters.
In our case we use the WPS for generalization (in detail: simplification
of data). The WPS processes the data and returns it to the WMS. WMS
renders it (as jpg or svg). '

I'm going to think about this a bit and reply, but thought I'd put it
out there for Jody as well.

Chris

Jody Garnett wrote:

Well we met with them but did not get far, hoping they will call back
at some point.
Jody

I had a look a FROGS, but I thought, that their geoserver integration

is just at an early design stage. However, we do have the WPS
implementation already running compliant to the current spec. So I
think, it is valid to get this extension started, correct? Otherwise
please point me to a link, about FROGS and their geoserver

integration.

Best regards

Theodor

-----Original Message-----
From: Jody Garnett [mailto:jgarnett@anonymised.com]
Sent: Thursday, August 31, 2006 5:49 PM
To: Theodor Foerster
Cc: geoserver-devel@lists.sourceforge.net
Subject: Re: [Geoserver-devel] WPS plugin for geoserver

Dude since you are on a timeline, the FROGS project does have a WPS
stack already in place we tried working with them, but they were shy
on email. Why not grab there code and see if you can get done

quicker.

(at the very least they probably have something that parses a WPS
request).
Jody
  

Jody, thanks for your comments. I just went through them and saw a
lot
    
of new decisions appearing. I think I will try to set up the
WPSDataStore for each WPS instance. Thus one WPSDataStore has
multiple
    
FeatureTypes (i.e. processes). By now that s only a prototype... I
will try to figure out the Geotools OWS capabilties later, if the
prototype is suffient.

To give some more details about the context of my planned
implementation. I will trigger mostly the WPS, provided by 52north
at incubator52n.de/twiki/bin/view/Processing/52nWebProcessingService

.

Finally I will link there any implementation code of the extension,
if
    
there are no problems with any licensing...

I may get back to one of your comments in advance... Thanks again!

Theodor

-----Original Message-----
From: Jody Garnett [mailto:jgarnett@anonymised.com]
Sent: Thursday, August 31, 2006 5:19 PM
To: Theodor Foerster
Cc: geoserver-devel@lists.sourceforge.net
Subject: Re: [Geoserver-devel] WPS plugin for geoserver

That is a lot of questions, let me try:

Hi,
I just started to extend geoserver (v.1.3.0) for WPS support. The
idea
    
is to serve geoprocesses through geoserver, in particular through
the
      
WMS (WFS could be a future task). I am writing the WPS extension as

a
      
read-only DataStore in geoserver.
    

That is a interesting choice, WPS is a protocol (not a source of
data)
    
- I am not sure I understand this design decision?
  

By now, I can create WPS instances in geoserver as DataStores, but
what do I have to do to create actual FeatureStores?
    

You need to configure a GeoTools FeatureTypeInfo, you can do this
using the user interface (or by hacking and XML in your own conf
    

directory).
  

You may also try out Justin's new GeoTools catalog backed GeoServer
available in the community module (which I am trying to figure out
now)
- the api for programmers is a lot more direct.

However in my limited understanding a Web Processing Service, is
supposed to accept an OWS Request that includes a WFS request to a
Web
    
Feature Service, the WPS would fetch features, process them, and
return the result. (I do hope that is correct).

You can find an example HelloWorld Open Web Service as part of the
GeoServer 1.4 documentation.
  

Or how do I get the processed results out to geoserver?
  

If your processed results are set up as part of your geoserver
configuration (either the xml files, or by hand using the config ui)

they will be published for other applications. Alternatively the WPS

specification tells you an different protocol (ie not Web Feature
Server) by which you can do this.
  

What is the role of the namespaces?
    

namespace is the namespace for the resulting GML content.
  

How can I pass dynamic parameters of the WMS request to the
      

DataStore?
  

The dynamic paramters from the WMS request are limited to a bounding

box, it will get reprojected into some kind of spatial query based
on a Polygon, the other dynamic parameters are based on the Style
Layer Descriptor specificaiton and are handled by the rendering
process. (as
    
an example they define a series of explicit queries against your
DataStore, sometimes only requesting a geometry attribute for
    

display).
  

I will match each WPS-process with a FeatureType. However that s
perhaps not the best way, but straight-forward. Additionally I have

to
    
deal with a little time constraint. The stuff has to work until end

of
    
next week
:slight_smile:
  

Fun, so does your WPS need to be in agreement with the

specification?

If so you should start defining your own community module to handle
WPS requests, capturing each request in a DataStore would be tough,
you could (when you define your process) accept DataStoreFactorySPI
parameters to handle the "dynamic" paramters include in your
specific request.

You would be making these datastores up per each request though, so
you would really need to understand Justins new catalog. Or you
could just make them, use them to generate some GML, and then throw
them away again.
  

I am looking forward to any comments concerning some design issues,

but also how to solve the above mentioned problems.
  

Sounds to me like you are making up a new service:
1. define a module (as per examples in the community space) 2. when
handling your request produce a Map of the dynamic parameters 3. use

the Map of parameters to create a new "DataStore"
4. use that datastore to generate some GML (using the existing
geoserver codebase as an example) 5. throw away the datastore after
    

use.
  

Cheers,
Jody
  

Cheers
Theodor

ITC, Enschede
Department of Geo Information Processing PO. Box 6 7500 AA
Enschede the Netherlands

-------------------------------------------------------------------
--
-
--- Using Tomcat but need to do more? Need to support web services,

security?
Get stuff done quickly with pre-integrated technology to make your
job
    
easier Download IBM WebSphere Application Server v.1.0.1 based on
Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=1
21
6
42 _______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel
  

--------------------------------------------------------------------
--
--- Using Tomcat but need to do more? Need to support web services,
security?
Get stuff done quickly with pre-integrated technology to make your
job
    
easier Download IBM WebSphere Application Server v.1.0.1 based on
Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=12
16
42 _______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel
  
----------------------------------------------------------------------
--- Using Tomcat but need to do more? Need to support web services,
security?
Get stuff done quickly with pre-integrated technology to make your job

easier Download IBM WebSphere Application Server v.1.0.1 based on
Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=1216
42 _______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

!DSPAM:1003,44f70951103152081064789!

--
Chris Holmes
The Open Planning Project
http://topp.openplans.org

That's a thought, but at this point we don't really have hooks to trigger the WFS through the WMS. Both use our same data model, so we just have both work with the same data model directly. Also the only real wiggle room you have with WFS filters is in 'functions', and I'm not sure if that's enough for you...

I'm going to try take some time to look at the code to point at what classes to modify. But basically you can modify the WMS kvp reader to read in more values. And you can modify the code that gets the datastores/featurestores, and then pass your new featurestore off to the renderers.

Chris

Theodor Foerster wrote:

Perhaps, it would be better to include the WPS on the WFS side and then
trigger the WFS through the WMS. I think about that right now, because
you provide some special filter capabilties on the WFS, these could be
coupled with a WPS.

Just a short thought.

Theodor

-----Original Message-----
From: Chris Holmes [mailto:cholmes@anonymised.com] Sent: Thursday, August 31, 2006 8:13 PM
To: Jody Garnett
Cc: Theodor Foerster; Geoserver-devel
Subject: Re: [Geoserver-devel] FROGS hopped along

Yeah, from my understanding FROGS and 52N are at about the same level of
their implementations, both have full implementations of 0.4

Theodor and I chatted off-list a bit, and I pointed him in this
direction. The one thing I'm not yet sure on is if you should be
writing a datastore or if you should perhaps write a new service that
then calls the WMS.

Let me post in your proposed workflow:

'The planned scenario: WMS client accesses a layer on the WMS, which is
actually processed on the fly by the WPS. The workflow: WMS receives
request. WMS triggers the WPS with some predefined data and parameters.
In our case we use the WPS for generalization (in detail: simplification
of data). The WPS processes the data and returns it to the WMS. WMS
renders it (as jpg or svg). '

I'm going to think about this a bit and reply, but thought I'd put it
out there for Jody as well.

Chris

Jody Garnett wrote:

Well we met with them but did not get far, hoping they will call back at some point.
Jody

I had a look a FROGS, but I thought, that their geoserver integration

is just at an early design stage. However, we do have the WPS implementation already running compliant to the current spec. So I think, it is valid to get this extension started, correct? Otherwise please point me to a link, about FROGS and their geoserver

integration.

Best regards

Theodor

-----Original Message-----
From: Jody Garnett [mailto:jgarnett@anonymised.com]
Sent: Thursday, August 31, 2006 5:49 PM
To: Theodor Foerster
Cc: geoserver-devel@lists.sourceforge.net
Subject: Re: [Geoserver-devel] WPS plugin for geoserver

Dude since you are on a timeline, the FROGS project does have a WPS stack already in place we tried working with them, but they were shy on email. Why not grab there code and see if you can get done

quicker.

(at the very least they probably have something that parses a WPS request).
Jody
  

Jody, thanks for your comments. I just went through them and saw a lot
    
of new decisions appearing. I think I will try to set up the WPSDataStore for each WPS instance. Thus one WPSDataStore has multiple
    
FeatureTypes (i.e. processes). By now that s only a prototype... I will try to figure out the Geotools OWS capabilties later, if the prototype is suffient.

To give some more details about the context of my planned implementation. I will trigger mostly the WPS, provided by 52north at incubator52n.de/twiki/bin/view/Processing/52nWebProcessingService

..

Finally I will link there any implementation code of the extension, if
    
there are no problems with any licensing...

I may get back to one of your comments in advance... Thanks again!

Theodor

-----Original Message-----
From: Jody Garnett [mailto:jgarnett@anonymised.com]
Sent: Thursday, August 31, 2006 5:19 PM
To: Theodor Foerster
Cc: geoserver-devel@lists.sourceforge.net
Subject: Re: [Geoserver-devel] WPS plugin for geoserver

That is a lot of questions, let me try:

Hi,
I just started to extend geoserver (v.1.3.0) for WPS support. The idea
    
is to serve geoprocesses through geoserver, in particular through the
      
WMS (WFS could be a future task). I am writing the WPS extension as

a
      
read-only DataStore in geoserver.
    

That is a interesting choice, WPS is a protocol (not a source of data)
    
- I am not sure I understand this design decision?
  

By now, I can create WPS instances in geoserver as DataStores, but what do I have to do to create actual FeatureStores?
    

You need to configure a GeoTools FeatureTypeInfo, you can do this using the user interface (or by hacking and XML in your own conf
    

directory).
  

You may also try out Justin's new GeoTools catalog backed GeoServer available in the community module (which I am trying to figure out
now)
- the api for programmers is a lot more direct.

However in my limited understanding a Web Processing Service, is supposed to accept an OWS Request that includes a WFS request to a Web
    
Feature Service, the WPS would fetch features, process them, and return the result. (I do hope that is correct).

You can find an example HelloWorld Open Web Service as part of the GeoServer 1.4 documentation.
  

Or how do I get the processed results out to geoserver?
  

If your processed results are set up as part of your geoserver configuration (either the xml files, or by hand using the config ui)

they will be published for other applications. Alternatively the WPS

specification tells you an different protocol (ie not Web Feature
Server) by which you can do this.
  

What is the role of the namespaces?
    

namespace is the namespace for the resulting GML content.
  

How can I pass dynamic parameters of the WMS request to the
      

DataStore?
  

The dynamic paramters from the WMS request are limited to a bounding

box, it will get reprojected into some kind of spatial query based on a Polygon, the other dynamic parameters are based on the Style Layer Descriptor specificaiton and are handled by the rendering process. (as
    
an example they define a series of explicit queries against your DataStore, sometimes only requesting a geometry attribute for
    

display).
  

I will match each WPS-process with a FeatureType. However that s perhaps not the best way, but straight-forward. Additionally I have

to
    
deal with a little time constraint. The stuff has to work until end

of
    
next week
:slight_smile:
  

Fun, so does your WPS need to be in agreement with the

specification?

If so you should start defining your own community module to handle WPS requests, capturing each request in a DataStore would be tough, you could (when you define your process) accept DataStoreFactorySPI parameters to handle the "dynamic" paramters include in your specific request.

You would be making these datastores up per each request though, so you would really need to understand Justins new catalog. Or you could just make them, use them to generate some GML, and then throw them away again.
  

I am looking forward to any comments concerning some design issues,

but also how to solve the above mentioned problems.
  

Sounds to me like you are making up a new service:
1. define a module (as per examples in the community space) 2. when handling your request produce a Map of the dynamic parameters 3. use

the Map of parameters to create a new "DataStore"
4. use that datastore to generate some GML (using the existing geoserver codebase as an example) 5. throw away the datastore after
    

use.
  

Cheers,
Jody
  

Cheers
Theodor

ITC, Enschede
Department of Geo Information Processing PO. Box 6 7500 AA Enschede the Netherlands

-------------------------------------------------------------------
--
-
--- Using Tomcat but need to do more? Need to support web services,

security?
Get stuff done quickly with pre-integrated technology to make your job
    
easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=1
21
6
42 _______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel
  

--------------------------------------------------------------------
--
--- Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job
    
easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=12
16
42 _______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel
  
----------------------------------------------------------------------
--- Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job

easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=1216
42 _______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

--
Chris Holmes
The Open Planning Project
http://topp.openplans.org

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

!DSPAM:1003,44f729d9121291971556521!

--
Chris Holmes
The Open Planning Project
http://topp.openplans.org

Ok, one of my guidelines would be, that I do not want to change the WMS
interface (and any third party code). This is due to the fact, that each
WMS client should be able to use the WPS through the WMS, by not knowing
it...

Just think about a scenario, where you set up a process and attach that
to your geoserver WMS instance. Then you just could change the base
data, but the process would and the portrayaled layer would not need to
be adjusted.

I am looking forward to solve the problem of the featureTypes...

Theodor

PS: Back to the WPS-WFS-WMS chain: We could trigger the WFS through the
WMS using the standard HTTP-OGC-WMS interface and the geotools WFS
extension... Would be a slow but slim solution....

-----Original Message-----
From: Chris Holmes [mailto:cholmes@anonymised.com]
Sent: Thursday, August 31, 2006 8:40 PM
To: Theodor Foerster
Cc: Jody Garnett; Geoserver-devel
Subject: Re: [Geoserver-devel] FROGS hopped along

That's a thought, but at this point we don't really have hooks to
trigger the WFS through the WMS. Both use our same data model, so we
just have both work with the same data model directly. Also the only
real wiggle room you have with WFS filters is in 'functions', and I'm
not sure if that's enough for you...

I'm going to try take some time to look at the code to point at what
classes to modify. But basically you can modify the WMS kvp reader to
read in more values. And you can modify the code that gets the
datastores/featurestores, and then pass your new featurestore off to the
renderers.

Chris

Theodor Foerster wrote:

Perhaps, it would be better to include the WPS on the WFS side and
then trigger the WFS through the WMS. I think about that right now,
because you provide some special filter capabilties on the WFS, these
could be coupled with a WPS.

Just a short thought.

Theodor

-----Original Message-----
From: Chris Holmes [mailto:cholmes@anonymised.com]
Sent: Thursday, August 31, 2006 8:13 PM
To: Jody Garnett
Cc: Theodor Foerster; Geoserver-devel
Subject: Re: [Geoserver-devel] FROGS hopped along

Yeah, from my understanding FROGS and 52N are at about the same level
of their implementations, both have full implementations of 0.4

Theodor and I chatted off-list a bit, and I pointed him in this
direction. The one thing I'm not yet sure on is if you should be
writing a datastore or if you should perhaps write a new service that
then calls the WMS.

Let me post in your proposed workflow:

'The planned scenario: WMS client accesses a layer on the WMS, which
is actually processed on the fly by the WPS. The workflow: WMS
receives request. WMS triggers the WPS with some predefined data and

parameters.

In our case we use the WPS for generalization (in detail:
simplification of data). The WPS processes the data and returns it to
the WMS. WMS renders it (as jpg or svg). '

I'm going to think about this a bit and reply, but thought I'd put it
out there for Jody as well.

Chris

Jody Garnett wrote:

Well we met with them but did not get far, hoping they will call back

at some point.
Jody

I had a look a FROGS, but I thought, that their geoserver
integration

is just at an early design stage. However, we do have the WPS
implementation already running compliant to the current spec. So I
think, it is valid to get this extension started, correct? Otherwise

please point me to a link, about FROGS and their geoserver

integration.

Best regards

Theodor

-----Original Message-----
From: Jody Garnett [mailto:jgarnett@anonymised.com]
Sent: Thursday, August 31, 2006 5:49 PM
To: Theodor Foerster
Cc: geoserver-devel@lists.sourceforge.net
Subject: Re: [Geoserver-devel] WPS plugin for geoserver

Dude since you are on a timeline, the FROGS project does have a WPS
stack already in place we tried working with them, but they were shy

on email. Why not grab there code and see if you can get done

quicker.

(at the very least they probably have something that parses a WPS
request).
Jody
  

Jody, thanks for your comments. I just went through them and saw a
lot
    
of new decisions appearing. I think I will try to set up the
WPSDataStore for each WPS instance. Thus one WPSDataStore has
multiple
    
FeatureTypes (i.e. processes). By now that s only a prototype... I
will try to figure out the Geotools OWS capabilties later, if the
prototype is suffient.

To give some more details about the context of my planned
implementation. I will trigger mostly the WPS, provided by 52north
at
incubator52n.de/twiki/bin/view/Processing/52nWebProcessingService

..

Finally I will link there any implementation code of the extension,

if
    
there are no problems with any licensing...

I may get back to one of your comments in advance... Thanks again!

Theodor

-----Original Message-----
From: Jody Garnett [mailto:jgarnett@anonymised.com]
Sent: Thursday, August 31, 2006 5:19 PM
To: Theodor Foerster
Cc: geoserver-devel@lists.sourceforge.net
Subject: Re: [Geoserver-devel] WPS plugin for geoserver

That is a lot of questions, let me try:

Hi,
I just started to extend geoserver (v.1.3.0) for WPS support. The
idea
    
is to serve geoprocesses through geoserver, in particular through
the
      
WMS (WFS could be a future task). I am writing the WPS extension
as

a
      
read-only DataStore in geoserver.
    

That is a interesting choice, WPS is a protocol (not a source of
data)
    
- I am not sure I understand this design decision?
  

By now, I can create WPS instances in geoserver as DataStores, but

what do I have to do to create actual FeatureStores?
    

You need to configure a GeoTools FeatureTypeInfo, you can do this
using the user interface (or by hacking and XML in your own conf
    

directory).
  

You may also try out Justin's new GeoTools catalog backed GeoServer

available in the community module (which I am trying to figure out
now)
- the api for programmers is a lot more direct.

However in my limited understanding a Web Processing Service, is
supposed to accept an OWS Request that includes a WFS request to a
Web
    
Feature Service, the WPS would fetch features, process them, and
return the result. (I do hope that is correct).

You can find an example HelloWorld Open Web Service as part of the
GeoServer 1.4 documentation.
  

Or how do I get the processed results out to geoserver?
  

If your processed results are set up as part of your geoserver
configuration (either the xml files, or by hand using the config
ui)

they will be published for other applications. Alternatively the
WPS

specification tells you an different protocol (ie not Web Feature
Server) by which you can do this.
  

What is the role of the namespaces?
    

namespace is the namespace for the resulting GML content.
  

How can I pass dynamic parameters of the WMS request to the
      

DataStore?
  

The dynamic paramters from the WMS request are limited to a
bounding

box, it will get reprojected into some kind of spatial query based
on a Polygon, the other dynamic parameters are based on the Style
Layer Descriptor specificaiton and are handled by the rendering
process. (as
    
an example they define a series of explicit queries against your
DataStore, sometimes only requesting a geometry attribute for
    

display).
  

I will match each WPS-process with a FeatureType. However that s
perhaps not the best way, but straight-forward. Additionally I
have

to
    
deal with a little time constraint. The stuff has to work until
end

of
    
next week
:slight_smile:
  

Fun, so does your WPS need to be in agreement with the

specification?

If so you should start defining your own community module to handle

WPS requests, capturing each request in a DataStore would be tough,

you could (when you define your process) accept DataStoreFactorySPI

parameters to handle the "dynamic" paramters include in your
specific request.

You would be making these datastores up per each request though, so

you would really need to understand Justins new catalog. Or you
could just make them, use them to generate some GML, and then throw

them away again.
  

I am looking forward to any comments concerning some design
issues,

but also how to solve the above mentioned problems.
  

Sounds to me like you are making up a new service:
1. define a module (as per examples in the community space) 2. when

handling your request produce a Map of the dynamic parameters 3.
use

the Map of parameters to create a new "DataStore"
4. use that datastore to generate some GML (using the existing
geoserver codebase as an example) 5. throw away the datastore after
    

use.
  

Cheers,
Jody
  

Cheers
Theodor

ITC, Enschede
Department of Geo Information Processing PO. Box 6 7500 AA
Enschede the Netherlands

------------------------------------------------------------------
-
--
-
--- Using Tomcat but need to do more? Need to support web
services,

security?
Get stuff done quickly with pre-integrated technology to make your

job
    
easier Download IBM WebSphere Application Server v.1.0.1 based on
Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=
1
21
6
42 _______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel
  

-------------------------------------------------------------------
-
--
--- Using Tomcat but need to do more? Need to support web services,

security?
Get stuff done quickly with pre-integrated technology to make your
job
    
easier Download IBM WebSphere Application Server v.1.0.1 based on
Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=1
2
16
42 _______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel
  
---------------------------------------------------------------------
-
--- Using Tomcat but need to do more? Need to support web services,
security?
Get stuff done quickly with pre-integrated technology to make your
job

easier Download IBM WebSphere Application Server v.1.0.1 based on
Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121
6
42 _______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

--
Chris Holmes
The Open Planning Project
http://topp.openplans.org

----------------------------------------------------------------------
--- Using Tomcat but need to do more? Need to support web services,
security?
Get stuff done quickly with pre-integrated technology to make your job

easier Download IBM WebSphere Application Server v.1.0.1 based on
Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=1216
42 _______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

!DSPAM:1003,44f729d9121291971556521!

--
Chris Holmes
The Open Planning Project
http://topp.openplans.org