[GeoNetwork-devel] gml versions

Hi,

I’m trying to develop the plugin for the Gemini 2.3 metadata standard, but I’m struggling a bit with the gml version.

The Metadata Standard is based on ISO19139 and I used https://github.com/josegar74/generator-geonetwork-metadata-schema to generate the initial version.

The encoding guidelines state that the namespace location for gml should be http://www.opengis.net/gml/3.2 (see https://www.agi.org.uk/40-gemini/1048-uk-gemini-encoding-guidance#2). However if I use this, then I get validation errors. I know that if I change the namespace in the record to http://www.opengis.net/gml then the record validates, and that’s what I have previously done in Gemini 2.2. However now in Gemini 2.3 if I do that I’m not meeting the encoding guidelines.

It’s not immediately clear to me whether http://www.opengis.net/gml points at gml 3.2 or 3.1 now, as https://github.com/geonetwork/core-geonetwork/tree/3.4.x/schemas/iso19139/src/main/plugin/iso19139/schema/gml seems to say 3.2 but http://www.opengis.net/gml seems to resolve to 3.1.1. In any case is there any way I can get around this using oasis-catalog.xml or similar, so that I can accept http://www.opengis.net/gml/3.2 as a valid namespace location?

Many thanks

Jo

···

Jo Cook
t:+44 7930 524 155/twitter:@archaeogeek
Please note that currently I do not work on Friday afternoons. For urgent responses at that time, please visit support.astuntechnology.com or phone our office on 01372 744009

Hi Jo

In this version of iso19139 the namespace used is http://www.opengis.net/gml http://schemas.opengis.net/iso/19139/20060504/gco/basicTypes.xsd (gml version used is 3.2.0), but in http://schemas.opengis.net/iso/19139/20070417/gco/basicTypes.xsd seem was changed to use http://www.opengis.net/gml/3.2

In GeoNetwork we’re using even and older version 2005, but also is used gml 3.2, I guess the oasis-catalog.xml should be updated to use 3.2 instead of 3.1.1 and as far as in all xsd files is changed http://www.opengis.net/gml to http://www.opengis.net/gml/3.2 should work fine the validation, but requires testing.

I’m not really sure, but I think the xsd can’t be updated to 20070417 due to some mess done by OGC with versions of schemas required in CSW specification, but at least we should consider to update to version 20060504. I’ll check to make a pull request with this as some of our projects are already updated to that version.

Regards,
Jose García

···

Vriendelijke groeten / Kind regards,

Jose García


Veenderweg 13
6721 WD Bennekom
The Netherlands
T: +31 (0)318 416664

Please consider the environment before printing this email.

Hi Jose,

Thanks for the explanation. So to be clear, I should be able to change the http://www.opengis.net/gml to http://www.opengis.net/gml/3.2 in oasis-catalog.xml and the xsd files in the schema folder and that should fix it?

Thanks again

Jo

···

Jo Cook
t:+44 7930 524 155/twitter:@archaeogeek
Please note that currently I do not work on Friday afternoons. For urgent responses at that time, please visit support.astuntechnology.com or phone our office on 01372 744009

Hi Jo

I’m thinking that probably you’ll require to review also the xsl in your schema, to use http://www.opengis.net/gml/3.2, but needs some testing as usually some of the xslt templates are delegated to iso19139 where is used http://www.opengis.net/gml, to make sure no side-effects.

Regards,
Jose García

···

Vriendelijke groeten / Kind regards,

Jose García


Veenderweg 13
6721 WD Bennekom
The Netherlands
T: +31 (0)318 416664

Please consider the environment before printing this email.

Hi Jose,

I’ve made the changes that you suggest, but if I use http://www.opengis.net/gml/3.2 in the gml namespace location I still get validation errors. I have noticed that the error is different in the log files compared to what’s shown in the user interface. The log files show

[geonetwork.datamanager] - WARNING: evaluating XPath gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:temporalElement/gmd:EX_TemporalExtent/gmd:extent/gml:TimePeriod against metadata failed - XSD validation message: \ncvc-complex-type.2.4.a: Invalid content was found starting with element ‘gml:TimePeriod’. One of ‘{“http://www.opengis.net/gml/3.2”:AbstractTimePrimitive}’ is expected. (Element: gml:TimePeriod with parent element: gmd:extent) will NOT be shown by the editor

The interface shows

Invalid content was found starting with element ‘gml:TimePeriod’. One of ‘{“http://www.opengis.net/gml”:AbstractTimePrimitive}’ is expected. (Element: gml:TimePeriod with parent element: gmd:extent)

So the log file shows gml/3.2 and the interface shows gml. I’ve created a separate branch with these changes in it in the repository if you’re able to check I’m on the right path: https://github.com/AstunTechnology/iso19139.gemini23/tree/gml3.2

Thanks

Jo

···

Jo Cook
t:+44 7930 524 155/twitter:@archaeogeek
Please note that currently I do not work on Friday afternoons. For urgent responses at that time, please visit support.astuntechnology.com or phone our office on 01372 744009

Hi All,

I’m still trying to resolve this issue with gml versions, but I’m stuck as I don’t know how to debug this beyond the error messages I’ve posted that show in the logs. I’ve looked at the schema xsds (for gmd and gml) and none of them seem to defer to ISO19139 but maybe I’m wrong.

Jose, do you have an example of a schema where this is correctly working so I could take a look? You mentioned a pull request in an earlier reply.

Thanks

Jo

···

Jo Cook
t:+44 7930 524 155/twitter:@archaeogeek
Please note that currently I do not work on Friday afternoons. For urgent responses at that time, please visit support.astuntechnology.com or phone our office on 01372 744009

Hi Jo

Apologies as could not check yet. I’ll check later today to checkout your branch to review the issues and will get back to you with my findings.

Regards,
Jose García

···

Vriendelijke groeten / Kind regards,

Jose García


Veenderweg 13
6721 WD Bennekom
The Netherlands
T: +31 (0)318 416664

Please consider the environment before printing this email.

Hi Jose,

I’m doing some more tests but I think I might have just fixed this issue- for datasets at least. I still have a problem with series and services but I think that’s because they are not being autodetected as Gemini 2.3 (metadataStandardName and Version are not actually included in the standard, much to my annoyance). Obviously I don’t want to have to make changes to ISO19139, so I have to figure out how to autodetect them as Gemini 2.3 without any obvious identifying elements, but that’s possibly a question for another email if I can’t figure it out.

Regards

Jo

···

Jo Cook
t:+44 7930 524 155/twitter:@archaeogeek
Please note that currently I do not work on Friday afternoons. For urgent responses at that time, please visit support.astuntechnology.com or phone our office on 01372 744009