"Seegrid will be due for a migration to confluence on the 1st of August. Any update on or after the 1st of August will NOT be migrated"

Geoserver Meeting 30 May 2008

A phone call to discuss GeoServer development to implement GeoSciML Testbed 3.



  • Ben reported that XmlServiceTester is complete and will be released as soon as the documentation is finished.
  • Ben reported that Use Case 2A is mostly complete. The output has been provided to Alistair.
    • Note from Alistair: this is for a simple profile. Need to test against the more detailed profile documents (those prefixed TB3_UC2A in the instance documents folder referenced below) for UC2A. Slight problem: the 3 profile docs currently in the folder have differing structure (serialise different GeoSciML elements) which makes it hard to know what our target output is.
  • Alistair confirmed that the instance documents with filenames starting with TB3_UC are to be used as the reference output ("profiles") for Testbed 3.
  • The benefits of Testbed 3 were discussed. These include:
    1. Showing that GeoSciML v2 can be used to deliver the feature types of Testbed 3.
    2. Showing that GeoServer can be used to encode the feature types of Testbed 3.
    3. Providing a cookbook of GeoServer mapping files as a guide for implementers.
  • The main goal is (1), while those wishing to deliver data require (2), and will be assisted by (3).
  • Ben noted that, because there is almost no data for the use cases, all output is sourced from constants hardcoded in GeoServer mapping files; this is a poor test of (2) above because it does not demonstrate the ability of GeoServer to serialise data sourced from a real database.
  • Ben noted that serialising multiple nested features is a problem for GeoServer because it expects every feature type to be a single database table or view. As a consequence, any serialised features nested within a feature have to be included in this table or view, and if there are many of them, you have to know a priori the upper limit on the number of columns so all can be allocated in the database and corresponding mappings be written for each column. Nesting causes a combinatorial explosion in the number of columns. Recursion is not possible.
  • Nesting features by reference would mitigate this problem, but not eliminate it, because a column would still be required for the reference for each feature.
  • GeoTools issue GEOT-1543 causes major damage to serialised output. For example, despite the distinct values of codeSpace specified in the Use Case 2A mapping file, in the output the attributes have the same value:
                        <gsml:value codeSpace="urn:some:authority:on:mappedfeature:observationmethods">dummy</gsml:value>
                                <gsml:value codeSpace="urn:some:authority:on:mappedfeature:observationmethods">creative imagination</gsml:value>
                                <gsml:value codeSpace="urn:some:authority:on:mappedfeature:observationmethods">fan</gsml:value>
                                <gsml:value codeSpace="urn:some:authority:on:mappedfeature:observationmethods">carbonate</gsml:value>
                                <gsml:value codeSpace="urn:some:authority:on:mappedfeature:observationmethods">bisque</gsml:value>
                                <gsml:value codeSpace="urn:some:authority:on:mappedfeature:observationmethods">poorly exposed</gsml:value>
  • It is unknown whether ID attributes are affected by GEOT-1543. This would be an even greater problem, causing the serialised responses to be schema-invalid.
  • Alistair identified completion of Use Case 2 an the immediate priority.
  • ACTION: Alistair to ask users to provide for each Use Case:
    1. test data
    2. an instance document to match the test data
    3. a description of how each piece of data is mapped into the instance document
  • ACTION: Ben to write candidate goals for next iteration and include known issues.
Topic revision: r4 - 15 Oct 2010, UnknownUser

Current license: All material on this collaboration platform is licensed under a Creative Commons Attribution 3.0 Australia Licence (CC BY 3.0).