INSPIRE-MIF / technical-guidelines

Community for the discussion of change proposals to the INSPIRE Technical Guidance documents.
https://inspire-mif.github.io/technical-guidelines
27 stars 15 forks source link

Improve consistency between TG Requirement 2.2: metadata/2.0/req/isdss/crs-id and Example 3.13 in inspire-tg-metadata-iso19139-2.0.1 #7

Closed PeterParslow closed 2 years ago

PeterParslow commented 3 years ago

Change proposal description

Improve consistency between TG Requirement 2.2: metadata/2.0/req/isdss/crs-id and Example 3.13 in inspire-tg-metadata-iso19139-2.0.1

Addressed TG

Technical Guidance for the implementation of INSPIRE dataset and service metadata based on ISO/TS 19139:2007

Location

inspire-tg-metadata-iso19139-2.0.1

Issue faced

In the Metadata Technical Guidance (inspire-tg-metadata-iso19139-2.0.1), the requirements for specifying coordinate reference systems that are INSPIRE defaults CRSs do not line up well with the examples given.

The requirements both state that the "value of the HTTP URI Identifier column shall be used as the value of the ... gmd:code element", but Example 3.13 sensibly places this as the href of a gmx:Anchor, and provides other text (the well known "EPSG::4258") as the actual value of the element.

Proposed solution

Using wording similar to TG Recommendation C.8: metadata/2.0/rec/common/use-anchors-for-cv-keywords, the requirements (TG Requirement 2.2: metadata/2.0/req/isdss/crs-id and TG Requirement 6.2: metadata/2.0/req/sds-interoperable/crs-http-uris) could be restated as something like:

If the coordinate reference system is listed in the table Default Coordinate Reference System Identifiers in Annex D.4, the _gmd:referenceSystemInfo/gmd:MD_ReferenceSystem/gmd:referenceSystemIdentifier/gmd:RSIdentifier/gmd:code element shall be encoded using a gmd:keyword/gmx:Anchor element. The xlink:href attribute of the gmx:Anchor element shall be the value of the HTTP URI Identifier column.

Note: should the Short name from the table in D.4 be encouraged, so as to separate between the various ETRS89s? Or (as per the example), the EPSG code in its simpler form?

Pull request

Additional information

Kind of issue

Undecided

Relevant legislation

None?

Impact on IR

I believe this only impacts that TG.

Impact on INSPIRE validator

I don't believe this would impact the validator.

Linked issue

Impact on INSPIRE XML schemas

I don't believe this impacts the XML schemas

Linked issue

Impact on INSPIRE code lists

I don't believe this impacts the INSPIRE code lists

Linked issue

Change proposer

Peter Parslow

References

heidivanparys commented 3 years ago

Using wording similar to TG Recommendation C.8: metadata/2.0/rec/common/use-anchors-for-cv-keywords, the requirements (TG Requirement 2.2: metadata/2.0/req/isdss/crs-id and TG Requirement 6.2: metadata/2.0/req/sds-interoperable/crs-http-uris) could be restated as something like:

If the coordinate reference system is listed in the table Default Coordinate Reference System Identifiers in Annex D.4, the _gmd:referenceSystemInfo/gmd:MD_ReferenceSystem/gmd:referenceSystemIdentifier/gmd:RSIdentifier/gmd:code element shall be encoded using a gmd:keyword/gmx:Anchor element. The xlink:href attribute of the gmx:Anchor element shall be the value of the HTTP URI Identifier column.

This wording would actually make the requirement stricter that is currently is. Currently, both of the following are allowed.

<gmd:referenceSystemInfo>
    <gmd:MD_ReferenceSystem>
        <gmd:referenceSystemIdentifier>
            <gmd:RS_Identifier>
                <gmd:code>
                    <gmx:Anchor xlink:href="http://www.opengis.net/def/crs/EPSG/0/4258">EPSG:4258</gmx:Anchor>
                </gmd:code>
            </gmd:RS_Identifier>
        </gmd:referenceSystemIdentifier>
    </gmd:MD_ReferenceSystem>
</gmd:referenceSystemInfo>
<gmd:referenceSystemInfo>
    <gmd:MD_ReferenceSystem>
        <gmd:referenceSystemIdentifier>
            <gmd:RS_Identifier>
                <gmd:code>
                    <gco:CharacterString>http://www.opengis.net/def/crs/EPSG/0/4258</gco:CharacterString>
                </gmd:code>
            </gmd:RS_Identifier>
        </gmd:referenceSystemIdentifier>
    </gmd:MD_ReferenceSystem>
</gmd:referenceSystemInfo>

See also the following lines of code: https://github.com/inspire-eu-validation/ets-repository/blob/3ed17ef069b758420063fadb9c6872e4ff26dfa9/metadata/2.0/datasets-and-series/ets-md-isdss-bsxets.xml#L114-L142, especially these two lines: https://github.com/inspire-eu-validation/ets-repository/blob/3ed17ef069b758420063fadb9c6872e4ff26dfa9/metadata/2.0/datasets-and-series/ets-md-isdss-bsxets.xml#L131-L132.

A possible solution could be to add two new TG recommendations (one after TG Requirement 6.2 2.2 and one after TG Requirement 6.2):

If the coordinate reference system identifier is an HTTP URI, this identifier should be encoded using a gmx:Anchor element; the xlink:href attribute of the gmx:Anchor element should contain the identifier.

For some metadata elements, the use of gmx:Anchor is required (e.g. TG Requirement C.17: metadata/2.0/req/common/limitations-on-public-access), but for most metadata elements, the use of gmx:Anchor is only recommended (e.g. the aforementioned TG Recommendation C.8: metadata/2.0/rec/common/use-anchors-for-cv-keywords).

Note: should the Short name from the table in D.4 be encouraged, so as to separate between the various ETRS89s? Or (as per the example), the EPSG code in its simpler form?

Some guidance would probably be good. There is indeed the AUTHORITY:CODE option, and then there are also the name and aliases listed on https://epsg.org (the INSPIRE identifiers are usually listed as aliases, it seems). So for http://www.opengis.net/def/crs/EPSG/0/4258, all the following could be used:

Perhaps we should keep the establishment of a CRS registry in mind (see e.g. https://github.com/INSPIRE-MIF/helpdesk-registry/issues/79), so we should avoid wording referring to the static table ("Short name from the table in D.4"), and use more general wording ("name or alias from a common register").

heidivanparys commented 3 years ago

Meeting 16.9:

heidivanparys commented 3 years ago

Summarized:

3.2.1.1 Coordinates reference systems

[...]

TG Requirement 2.2: metadata/2.0/req/isdss/crs-id (kept as is)

If the coordinate reference system is listed in the table Default Coordinate Reference System Identifiers in Annex D.4, the value of the HTTP URI Identifier column shall be used as the value of gmd:referenceSystemInfo/gmd:MD_ReferenceSystem/gmd:referenceSystemIdentifier/gmd:RS_Identifier/gmd:code element.The gmd:codeSpace element shall not be used in this case.

TG Recommendation x.y: metadata/2.0/rec/isdss/crs-id (new)

If the coordinate reference system identifier is an HTTP URI, this identifier should be encoded using a gmx:Anchor element; the xlink:href attribute of the gmx:Anchor element should contain the identifier.

(new text) As explained in section 2.1.1 Encoding of code list values, the textual content of the gmx:Anchor element is purely informative. A possibility in the case of coordinate reference system identifiers is to use either the name (e.g. ETRS89) or one of the aliases (e.g. ETRS89-GRS80) of the CRS as available in the EPSG Geodetic Parameter Dataset. Another possibility is to use a short name in the form of AUTHORITY:CODE (e.g. EPSG:4258).

[...]

4.4.1.1 Coordinate Reference System Identifier

[...]

TG Requirement 6.2: metadata/2.0/req/sds-interoperable/crs-http-uris (kept as is)

If the coordinate reference system is listed in the table Default Coordinate Reference System Identifiers in Annex D.4, the value of the HTTP URI Identifier column shall be used as the value of gmd:referenceSystemInfo/gmd:MD_ReferenceSystem/gmd:referenceSystemIdentifier/gmd:RS_Identifier/gmd:code element.The gmd:codeSpace element shall not be used in this case.

TG Recommendation x.y: metadata/2.0/rec/sds-interoperable/crs-http-uris (new)

If the coordinate reference system identifier is an HTTP URI, this identifier should be encoded using a gmx:Anchor element; the xlink:href attribute of the gmx:Anchor element should contain the identifier.

MarcoMinghini commented 3 years ago

The INSPIRE MIG-T approved the change proposal during the 67th MIG-T meeting. In the next step, the proposal will be moved to the MIG for the final endorsement.

MarcoMinghini commented 3 years ago

The INSPIRE MIG approved the change proposal, since no objections were raised during the two week scrutiny period from October 12 to October 26, 2021. The change can be now implemented.

sMorrone commented 2 years ago

Postponed to milestone 2022.2 in order to solve issue INSPIRE-MIF/helpdesk#32 and provide a consistent pull request

fabiovinci commented 2 years ago

TG Recommendation x.y: metadata/2.0/rec/isdss/crs-id (new)

If the coordinate reference system identifier is an HTTP URI, this identifier should be encoded using a gmx:Anchor element; the xlink:href attribute of the gmx:Anchor element should contain the identifier.

The new TG Recommendation in section 3.2.1.1 Coordinates reference systems has been numbered as "TG Recommendation 2.1.1" (introducing the third level) so as not to alter the numbering of subsequent recommendations.