INSPIRE-MIF / helpdesk-validator

Community discussion forum for INSPIRE validation issues
41 stars 22 forks source link

Example of a fully-compliant MD TG v. 2.0 #53

Closed MarcoMinghini closed 3 years ago

MarcoMinghini commented 5 years ago

Dear all,

we would like to add to this web page on the INSPIRE Knowledge Base an example of complete MD record compliant with TG v. 2.0, to be taken as a reference example from INSPIRE data providers.

We created a first example of a fully-compliant MD for datasets, which passes all the tests in the staging instance of the Validator. The MD is available here. As you can see, we provided specific comments on each MD element (taken from the TG) in order to further help understanding the MD content.

Do you have any comments on the MD file or additional suggestions to improve it?

AntoRot commented 5 years ago

Dear @MarcoMinghini,

please find below my comments.

  1. Metadata element MD_Metadata.characterSet: the TG requirement 2.5 has to be referred to the character encoding of the data set and not of the metadata, although both metadata elements are required only if UTF-8 is not used (but the multiplicity is different being 0..1 for the element MD_Metadata.characterSet). Consequently, you could:

    • add (as comment if you use UTF-8) the metadata element MD_Metadata > MD_DataIdentification.characterSet in the example moving the current comment to that element;
    • comment the element MD_Metadata.characterSet referring to the condition given in the ISO Standard 19115;
  2. the temporal reference system is required only if the Gregorian Calendar is not used. So the example included is not relevant;

  3. the citation of the TG requirements C.12 and C.13 could be added in the comment concerning the temporal references;

  4. it could be useful to add an example on more keywords originating from the same controlled vocabulary to cover the TG req C.16.

nmtoken commented 5 years ago

Ran this against the GEMINI 2.3 Validators and came up with the following issues:

System ID: C:\Testing\Dataset_metadata_2_0_example.xml Main validation file: C:\Testing\Dataset_metadata_2_0_example.xml Scenario name: GEMINI23 Engine name: ISO Schematron Severity: error Description: MI-4b (Abstract): Abstract is too short. GEMINI 2.3 requires an abstract of at least 100 characters, but abstract "This dataset provides a map of the land use distribution of MyCountry." has only 70 characters Start location: 135:0

So that's an additional requirement from GEMINI

System ID: C:\Testing\Dataset_metadata_2_0_example.xml Main validation file: C:\Testing\Dataset_metadata_2_0_example.xml Scenario name: GEMINI23 Engine name: ISO Schematron Severity: error Description: AT-6: Free text elements should not be empty Start location: 126:0

Content is:

<gmd:code>
    <gmx:Anchor xlink:href="http://www.my-organisation.eu/so/lu/land-use-map"/>
</gmd:code>

System ID: C:\Testing\Dataset_metadata_2_0_example.xml Main validation file: C:\Testing\Dataset_metadata_2_0_example.xml Scenario name: GEMINI_supplemental Engine name: ISO Schematron Severity: error Description: SP-1b: If possible a gmd:description should be supplied to provide more information about the URL link Start location: 329:0

System ID: C:\Testing\Dataset_metadata_2_0_example.xml Main validation file: C:\Testing\Dataset_metadata_2_0_example.xml Scenario name: GEMINI_supplemental Engine name: ISO Schematron Severity: error Description: SP-4b: Coordinate Reference System: Gregorian calendar is not a default CRS Start location: 89:0

System ID: C:\Testing\Dataset_metadata_2_0_example.xml Main validation file: C:\Testing\Dataset_metadata_2_0_example.xml Scenario name: GEMINI_supplemental Engine name: ISO Schematron Severity: error Description: SP-5: To be fully compliant with the regulation the title should be Commission Regulation (EU) No 1089/2010 of 23 November 2010 implementing Directive 2007/2/EC of the European Parliament and of the Council as regards interoperability of spatial data sets and services. Start location: 371:0

Which is based on the EUR-Lex (https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02010R1089-20141231) title for the legislation

MarcoMinghini commented 5 years ago

2017.4 meeting 2019-05-22

In the sub-group meeting, it is decided to share the 2 MD records (for datasets and for services) as separate files on GitHub, and manage the review process as follows:

For the MD record for datasets, it is agreed to collect comments until the end of next week (June 2), after which it will be finalized according to the feedback received and published on the INSPIRE Knowledge Base.

JRC will make also the MD for services available on GitHub.

MarcoMinghini commented 5 years ago

As decided in the meeting, the MD record for datasets has been provided as a separate file directly on GitHub (still in the community space). You can find it here.

The MD already includes the changes suggested by @AntoRot and @nmtoken.

Please submit a Pull Request if you would like to make additional changes, or feel free to discuss them first here.

alitka commented 5 years ago

Please find below my comments:

xsi:schemaLocation

related to specific comment in line 17-19

<!--TG Requirement 2.5: metadata/2.0/req/isdss/character-encoding: The character encoding(s) shall be given for data sets and data sets series which use encodings not based on UTF-8 by using element gmd:characterSet/gmd:MD_CharacterSetCode referring to one of the values of ISO 19139 code list MD_CharacterSetCode. The multiplicity of this element is 0..n. If more than one character encoding is used within the described data set or data sets series, all used character encodings, including UTF-8 (code list value "utf8"), shall be given using this element.-->

That's not correct. The focus here is on the used characterSet in the metadata record (ISO 19115 No. 4). However the Requirement 2.5 refers to the characterSet used in the data itself (ISO 19115 No. 40). But for this purpose there is no listing in the example (should be directly above topicCategory), because in case of UFT-8 it's dispensable at this point? You can pass the test without this element, but you got an error (Conformance Class 2: INSPIRE data sets and data sets series interoperability metadata), when you set in above the topicCategory-element.

related to specific comment in line 52

<!--TG Requirement C.7: metadata/2.0/req/common/md-date: The latest update date of the metadata description shall be given for each metadata record. It shall be encoded using the gmd:MD_Metadata/gmd:dateStamp element. If no updates to the metadata have been made since publishing it, the creation date of the metadata shall be used instead. The multiplicity of this element is 1.-->

The focus here is on the dateStamp in the XML-file (line 53-55). The lines 56-61 have nothing to do with this and should be separated by blank lines to avoid confusion. In addition, lines 56-61 are optional elements and dispensable in this context.

related to line 54

<gco:DateTime>2019-05-15T09:00:00</gco:DateTime>

It would be better to have an example with a time-zone system like (+02:00)

related to line 126

<gmx:Anchor xlink:href="http://www.my-organisation.eu/so/lu/land-use-map"/>

The example is based on a gmx:Anchor-Element, but there is no requirement or need to define an URL (only an URI). Therefore it's also possbile to refers a MD_identifier in a free text-element.

related to line 241

<gco:Integer>50000</gco:Integer>

This isn't a good example. It would be better to enter a specific examples for different typs like orthophotos, vector, raster, points, etc.

related to specific comment in line 304ff.

<!--TG Requirement 2.6: metadata/2.0/req/isdss/data-encoding: The encoding and the storage or transmission format of the provided data sets or data set series shall be given using the gmd:distributionFormat/gmd:MD_Format element. The multiplicity of this element is 1..*. The gmd:name and gmd:version child elements of gmd:MD_Format are mandatory. Both of these elements shall contain Non-empty Free Text Elements. If the version of the encoding is unknown or if the encoding is not versioned, the gmd:version shall be left empty and the nil reason attribute shall be provided with either value "unknown" or "inapplicable" correspondingly.--> >

This is an inappropriated or incorrect example, because it's a discrepancy to the information in annex C.3.3: „Instead of using element specification here the documentation of the supported data scheme inside the distributed dataset (as mentioned in INSPIRE Data specification) can be given either in conformity statement (see 2.8) or the maybe existing metadata element applicationSchemaInfo (see ISO 19115, B.2.1, No. 21).“ A "better element" for this information (data encoding - data structure and not data format) should be MD_ApplicationSchemaInformation.

related to line 386

<gco:CharacterString>This data set is conformant with the INSPIRE Implementing Rules for the interoperability of spatial data sets and services</gco:CharacterString>

It would be better to specify a national or international validator to which the test result refers!

AntoRot commented 5 years ago

I hope I'm in time to add another comment. I agree with @alitka about the comment on data encoding (lines 339-355 in the file available on Github). Using the metadata element MD_format.name to specify the application schema used (as in the example) is not proper and not in line with the meaning given in ISO 19115, since a specific metadata element is defined in the mentioned ISO 19115 for that purpose (i.e. MD_ApplicationSchema.name), as suggested in the comments in the section C.3.3 in the MD TGs. Consequently that part of example in the file should be revised as follows (also accordingly with the example given in the mentioned section C.3.3):

<gmd:distributionFormat>
        <gmd:MD_Format>
          <gmd:name>
            <gmx:Anchor xlink:href="https://www.iana.org/assignments/media-types/application/gml+xml">gml+xml</gmx:Anchor>
          </gmd:name>
          <gmd:version>
            <gco:CharacterString>_version_</gco:CharacterString>
          </gmd:version>
        </gmd:MD_Format>
 </gmd:distributionFormat>

If so, even the example in the TGs should be revised. Moreover, only the metadata elements MD_Format.name and MD_Format.version are required (see TG Req 2.6).

MarcoMinghini commented 5 years ago

Dear @alitka and @AntoRot, thanks for your comments.

As agreed, would you mind changing the MD record manually and making a Pull Request? Even better, make one different Pull Request for each independent change.

Thank you.

AntoRot commented 5 years ago

Dear @MarcoMinghini,

Just done!

alitka commented 5 years ago

Dear @MarcoMinghini, Sorry for my late response, but I'm not sure yet how to update the MD reocrds in detail. Could you tell me please, how should I change the MD record to integrate my comments, especially for the comments to

Thank you in advance.

fabiovin commented 5 years ago

Dear @alitka, you can directly update the MD example file here, using the function "Edit this file". After each change, you can click on "Commit changes".

Please take into consideration that your comment regarding line 17-19 has been already integrated.

alitka commented 5 years ago

Dear @fabiovin I got the following messages:

You’re editing a file in a project you don’t have write access to. We’ve created a fork of this project for you to commit your proposed changes to. Submitting a change to this file will write it to a new branch in your fork, so you can send a pull request.

I only can "propose a file change".

michellutz commented 5 years ago

Dear @alitka, please publish the proposed changes in your branch and then make a pull request to merge the changes into the master branch.

alitka commented 5 years ago

So far, I'm done.

MarcoMinghini commented 5 years ago

Dear @alitka, @fabiovin and I went through all your pull requests. Thanks for your time and effort.

We will now publish the MD example on the page https://inspire.ec.europa.eu/id/document/tg/metadata-iso19139/2.0/examples.

We are also working to create a MD TG v. 2.0 example for services. We will share the updates here, once ready.

fabiovin commented 5 years ago

Dear all,

we created an example of a fully-compliant MD for a WMS Network Service, which passes all the tests in the INSPIRE Validator (Conformance Class 4 and its dependencies). The MD is available here. As for the previous example, we provided specific comments on each element (taken from the TG) to further help to understand the MD content.

We kindly ask you to revise it and provide any changes by submitting a Pull Request.

AntoRot commented 5 years ago

Pull request https://github.com/inspire-eu-validation/community/pull/97 submitted.

MarcoMinghini commented 5 years ago

Thanks @AntoRot for taking a look and providing feedback.

We will keep the discussion open until September 15, then we will close it and publish this metadata (together with the one for data set already published) on this web page on the INSPIRE Knowledge Base.

MarcoMinghini commented 4 years ago

The metadata record for Network Services has been published (see here).

dperezBM commented 3 years ago

Dear all,

We have decided to close this issue since its objective is fulfilled.

Please feel free to open another issue if necessary.

Best regards.