[Geoserver-devel] Issues with CITE tests

Hello all,

I'm seeing a few issues with the CITE tests on the master branch for WMS 1.3 (I haven't checked the other ones).

1. The tests pass fine with the default options but when I enable the TIME and ELEVATION options the following tests fail:
     main:std-data-present
     main:raster_elevation
     main:vector_elevation
because of the following errors:
     Error: No layer titled cite:Terrain found.
     Error: The cite:Autos layer does not have an time dimension.
It looks like the dataset is not complete enough to pass these tests. Are the data/cite* data directories provided by the OGC guys?

2. The LegendURL in the capabilities document reports 20 for both width and height but, since the legend graphics are auto generated based on the style, this can be incorrect. In fact, it is impossible for an instance of GeoServer to pass the CITE tests if they have a layer that uses a ColorMap with a few entries. IMHO there should be a raster with a ColorMap included in the CITE data sets.

Thanks,
Michael

On Mon, Aug 13, 2012 at 10:39 PM, Michael Romero <mromero@anonymised.com> wrote:

Hello all,

I’m seeing a few issues with the CITE tests on the master branch for WMS
1.3 (I haven’t checked the other ones).

  1. The tests pass fine with the default options but when I enable the
    TIME and ELEVATION options the following tests fail:
    main:std-data-present
    main:raster_elevation
    main:vector_elevation
    because of the following errors:
    Error: No layer titled cite:Terrain found.
    Error: The cite:Autos layer does not have an time dimension.
    It looks like the dataset is not complete enough to pass these tests.
    Are the data/cite* data directories provided by the OGC guys?

Yes, it’s well known CITE WMS 1.3 does not work if you enable dimensions.
I looked into it some time ago, search this mailing list archives, my evaluation
was that it’s not possible to implement what they want unless we add a
way to configure the matching mode (precise, or nearest) per layer and
we introduce the concept of using a raster cell contents as a dimension,
in particular if memory serves me right they want us to use a DEM raster
and use the cell contents as elevation, filtering the cell before returning
them according to the elevation range provided.

  1. The LegendURL in the capabilities document reports 20 for both width
    and height but, since the legend graphics are auto generated based on
    the style, this can be incorrect. In fact, it is impossible for an
    instance of GeoServer to pass the CITE tests if they have a layer that
    uses a ColorMap with a few entries. IMHO there should be a raster with a
    ColorMap included in the CITE data sets.

It’s impossible to represent a raster legend with a 20x20 pixel because you
can have a 20x20 box per rule, but not per colormap entry.
If I remember the spec well it says the widht and height are just hints

Cheers
Andrea

==
Our support, Your Success! Visit http://opensdi.geo-solutions.it for more information.

Ing. Andrea Aime
@geowolf
Technical Lead

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

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


On 08/13/2012 02:02 PM, Andrea Aime wrote:

On Mon, Aug 13, 2012 at 10:39 PM, Michael Romero <mromero@anonymised.com> wrote:

Hello all,

I’m seeing a few issues with the CITE tests on the master branch for WMS
1.3 (I haven’t checked the other ones).

  1. The tests pass fine with the default options but when I enable the
    TIME and ELEVATION options the following tests fail:
    main:std-data-present
    main:raster_elevation
    main:vector_elevation
    because of the following errors:
    Error: No layer titled cite:Terrain found.
    Error: The cite:Autos layer does not have an time dimension.
    It looks like the dataset is not complete enough to pass these tests.
    Are the data/cite* data directories provided by the OGC guys?

Yes, it’s well known CITE WMS 1.3 does not work if you enable dimensions.
I looked into it some time ago, search this mailing list archives, my evaluation
was that it’s not possible to implement what they want unless we add a
way to configure the matching mode (precise, or nearest) per layer and
we introduce the concept of using a raster cell contents as a dimension,
in particular if memory serves me right they want us to use a DEM raster
and use the cell contents as elevation, filtering the cell before returning
them according to the elevation range provided.

Ok, thanks.

  1. The LegendURL in the capabilities document reports 20 for both width
    and height but, since the legend graphics are auto generated based on
    the style, this can be incorrect. In fact, it is impossible for an
    instance of GeoServer to pass the CITE tests if they have a layer that
    uses a ColorMap with a few entries. IMHO there should be a raster with a
    ColorMap included in the CITE data sets.

It’s impossible to represent a raster legend with a 20x20 pixel because you
can have a 20x20 box per rule, but not per colormap entry.
If I remember the spec well it says the widht and height are just hints

From the 1.3 specification:
A element in LegendURL indicates the MIME type of the legend image, and the optional attributes width and height state the size of the image in pixels. Servers should provide the width and height attributes if known at the time of processing the GetCapabilities request.

Since the width and height are not always known at the time of processing the GetCapabilities response, wouldn’t it be better to leave out the width and height? The CITE tests fail because they check that the size image returned from the URL is the same as the declared in the LegendURL. I couldn’t find in the code where the 20x20 is getting set since the transformer does call the LegendInfo.getWidth/Height.

Thanks,
Michael