[ckan-dev] default beaviour of WMS viewer

Emanuele Tajariol etj at geo-solutions.it
Tue Dec 17 16:00:38 UTC 2013


Hi all,

sharing our experience with a similar use case:

in one of our projects involving both CKAN and GeoNetwork we had to customize 
a bit how the iso19139 data had to be handled.

Looking at this example:
   http://www.opendatanetwork.it/dataset/accessi-e-civici-grafo-rt-provincia-
di-firenze/resource/eec23667-e452-4c5f-8061-972194016e80

you can see that the WMS service URL and the layer name are imported in CKAN 
as separate information:

   Nome 	view_civ_acc_topon
   url 	http://pubblicazioni.provincia.fi.it/geoserver/wms?SERVICE=WMS

Furthermore, the format field tells us that we are dealing with a WMS resource, 
so that we can properly use the given information.

In this way, you have the explicit WMS URL to use for any request you need 
(getCapabilities, getMap, etc);
having also the layer name, you can instruct a map viewer what to show.

The customization involved the modification of the iso19139 doc parsing 
procedure in CKAN spatial, translating the GeoNetwork's fixed strings (e.g. 
"OGC:WMS-1.1.1-http-get-map") located in the "protocol" field into proper 
values for the CKAN "format" field.

Anyway please note that that CKAN instance is not using the default map 
viewer, so we also had to customize how the different fields are merged together 
to form a valid request for the choosen viewer. 


   Ciao,
   Emanuele


Alle 15:51:28 di Tuesday 17 December 2013, Armin Retterath ha scritto:
> Hi Elena,
> 
> it may be a problem with the csw harvester. In geo-domain, a dataset
> described with an ISO19139 XML record. If there is a corrsponding service
> (wms/wfs ...) which provides the dataset, there have to be also a ISO19139
> service metadata record. This can be interpreted as a resource in sense of
> ckan. The resource link to a capabilities dokcument, that may have some
> hundreds of different layers or featuretypes. And that is a conceptual
> problem. You have to identify the specific layer/featuretype! INSPIRE
> demands a dataset identifier at every layer to allow an easy connection. I
> don't think, that this identfier is always set! Maybe there has to be done
> some further developing to solve this problem on an reasonable way.
> 
> We have many examples which provide a consistent data-service coupling in
> our catalogue, you may test them, to identify if your ckan harvester work
> properly.
> http://www.gdi-rp-dienste.rlp.de/geonetwork/srv/eng/csw?REQUEST=GetCapabili
> ties&VERSION=2.0.2&SERVICE=CSW There are more than 11.000 datasets and 2400
> should have a proper
> data-service coupling!
> 
> Here ais one of the consitent example for protected sites:
> 
> ISO19139 dataset:
> http://www.geoportal.rlp.de/mapbender/php/mod_dataISOMetadata.php?outputFor
> mat=iso19139&id=e9d22d13-e045-f0e0-25cc-1f146d681216 ISO19139 view service:
> http://www.geoportal.rlp.de/mapbender/php/mod_layerISOMetadata.php?SERVICE=
> WMS&outputFormat=iso19139&Id=30825 ISO19139 download service:
> http://www.geoportal.rlp.de/mapbender/php/mod_inspireAtomFeedISOMetadata.ph
> p?Id=e9d22d13-e045-f0e0-25cc-1f146d681216&outputFormat=iso19139&generateFro
> m=wfs&wfsid=216 INSPIRE view service capabilities:
> http://www.geoportal.rlp.de/mapbender/php/wms.php?layer_id=30825&PHPSESSID=
> 3a3d33cd98a3f9512bda93b8be1d93fa&INSPIRE=1&REQUEST=GetCapabilities&VERSION=
> 1.1.1&SERVICE=WMS INSPIRE download service (ATOM Feed):
> http://www.geoportal.rlp.de/mapbender/php/mod_inspireDownloadFeed.php?id=e9
> d22d13-e045-f0e0-25cc-1f146d681216&type=SERVICE&generateFrom=wfs&wfsid=216
> 
> The information model of OGC/OWS is quiet complicated and we implement it
> with some central proxy function ;-) .
> 
> 
> Best regards
> 
> Armin
> 
> 
> 2013/12/17 Elena Camossi <elena.camossi at ext.jrc.ec.europa.eu>
> 
> > Hi Armin,
> > 
> > 
> > 
> > CKAN version is 2.1, and the source catalogue is harvested as CSW.
> > 
> > 
> > 
> > Regards,
> > 
> > -Elena
> > 
> > 
> > 
> > 
> > 
> > 
> > 
> > *From:* ckan-dev [mailto:ckan-dev-bounces at lists.okfn.org] *On Behalf Of
> > *Armin Retterath
> > *Sent:* martedì 17 dicembre 2013 12:41
> > 
> > *To:* CKAN Development Discussions
> > *Subject:* Re: [ckan-dev] default beaviour of WMS viewer
> > 
> > 
> > 
> > Hi Elena,
> > 
> > what version of ckan do you use? The catalogue that you harvest, is it a
> > ckan instance or a csw source?
> > 
> > Regards
> > 
> > Armin
> > 
> > 
> > 
> > 2013/12/17 Elena Camossi <elena.camossi at ext.jrc.ec.europa.eu>
> > 
> > Hi Alex,
> > 
> > thanks for replying.
> > 
> > I'm not sure to understand correctly your answer, or most likely I didn't
> > put my question clear enough.
> > My institution harvests the datasets from another catalogue that
> > publishes these layers with GeoServer, but I don't have any
> > authorization to re-organize the layers server side. I'm just trying,
> > client side, after harvesting, to clean up the metadata in my catalogue
> > to visualize the layers.
> > I'm trying to use and customize a little bit the WMS view, for what is
> > possible to arrange from the CKAN front end (without developing any
> > code), and I was wondering if it's possible to pass the request from
> > CKAN in a different way, in order to point directly to a specific layer,
> > or if there is some customization that I don't know for the WMS viewer.
> > 
> > Thanks a lot,
> > -Elena
> > 
> > > -----Original Message-----
> > > From: ckan-dev [mailto:ckan-dev-bounces at lists.okfn.org] On Behalf Of
> > 
> > Alex
> > 
> > > (Maxious) Sadleir
> > > Sent: martedì 17 dicembre 2013 11:12
> > > To: CKAN Development Discussions
> > > Subject: Re: [ckan-dev] default beaviour of WMS viewer
> > > 
> > > In GeoServer you can put layers in separate workspaces and each
> > > workspace has it's own WMS link that only contains layers from that
> > > workspace. So one way to handle this is create a workspace for each
> > > dataset and a
> > 
> > layer
> > 
> > > for each data file (if more than one) eg.
> > > http://data.gov.au/geoserver/geelong-roofprints-kml/wms accesses all
> > > (one) files from http://data.gov.au/dataset/geelong-roofprints-kml
> > > 
> > > On Tue, Dec 17, 2013 at 8:54 PM, Elena Camossi
> > > 
> > > <elena.camossi at ext.jrc.ec.europa.eu> wrote:
> > > > Hi everyone,
> > > > 
> > > > I'm trying to visualize in CKAN a dataset that contains several
> > > > layers in OpenLayers created with GeoServer using the WMS viewer.
> > > > The layers have been harvested as different datasets, each one is
> > > > correctly uploaded as WMS in CKAN, but since they point to the same
> > > > GetCapabilities request, when I open any of them I see always the
> > > > same layer in the preview (the first the in the GetCapabilities).
> > > > 
> > > > That would not be that bad, because in theory you can choose
> > > > interactively the layers to visualize and even overlay different
> > > > layers... Unfortunately the list of available layers is truncated to
> > > > the first 14 layers (but there are many others that I cannot see).
> > > > 
> > > > I have tried putting the GetMap request (pointing to the specific
> > > > layer) instead of the GetCapabilities in the dataset URL, but the
> > > > viewer doesn't work, the page remains empty with a Loading... message
> > > > (I don't get any error in the log, and the Development Console of the
> > > > broswer says HTTP 200 OK).
> > > > Anyway, this would not be a good solution in the end because you lose
> > > > the overlay functionality...
> > > > As last chance, I manage to visualize the image of the layer
> > > > modifying its format as a PNG, or GIF, but in this way you loose
> > > > completely any geospatial functionality.
> > > > 
> > > > Is there any way to change the default behaviour of the viewer,
> > > > showing a different layer instead of the first one listed in the
> > > > GetCapability? Or to configure differently the viewer to show the
> > > > layer
> > > 
> > > using the GetMap request?
> > > 
> > > > Thanks in advance for any help.
> > > > 
> > > > Kind regards,
> > > > -Elena
> > > > 


-- 

== *GeoSolutions will be closed for seasonal holidays from 23/12/2013 to 
06/01/2014* ==


Ing. Emanuele Tajariol
Technical Lead

GeoSolutions S.A.S.
Via Poggio alle Viti 1187
55054  Massarosa (LU)
Italy
phone: +39 0584 962313
fax:    +39 0584 1660272
mob:   +39  380 2116282 

http://www.geo-solutions.it
http://twitter.com/geosolutions_it

-------------------------------------------------------



More information about the ckan-dev mailing list