Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

INSPIRE Validation / Add support to validate using GetRecordById url #5227

Merged

Conversation

fxprunayre
Copy link
Member

@fxprunayre fxprunayre commented Dec 1, 2020

Current validation mechanism always upload the record first. Default mode is unchanged.

Add a mode parameter to the API (on one record or on a selection) to define the encoding of the record to use:

  • By default, ISO19139 are used as is and others like ISO19115-3 are converted to ISO19139 if a formatter is available.
  • If mode = csw, a GetRecordById request pointing to the main portal is used.
  • If mode = any portal id, then a GetRecordById request is used on this portal.

CSW entry point which may define custom CSW post processing. See #4493.

When using CSW mode, the record has to be publicly accessible for the validator to retrieve it.

Add also an API operation to clear current validation status.

Current validation mechanism always upload the record first. Default mode is unchanged.

Add a mode parameter to the API (on one record or on a selection) to define the encoding of the record to use:

* By default, ISO19139 are used as is and others like ISO19115-3 are converted to ISO19139 if a formatter is available.
* If mode = csw, a GetRecordById request pointing to the main portal is used.
* If mode = any portal id, then a GetRecordById request is used on this portal.

CSW entry point which may define custom CSW post processing. See geonetwork#4493.

Add also an API operation to clear current validation status.
Log.error(Log.SERVICE, "Service unavailable.", ex);
throw ex;
}
} finally {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can be removed?

@@ -44,7 +44,12 @@
class="fa fa-chevron-right"/> 

<span>{{key}}</span>
</a>
</a>
<!--
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I understand for now requires to update the UI to use the mode attribute? Would be good after merging the pull request to create an issue to improve this using a setting in a future pull request.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yep we have been discussing it with users and we don't really know what should be configurable and how. If using CSW, then record as to be public and if using a portal endpoint, then the record has to be published in that portal filter. So it adds some constraints that it can be hard to figure out by the end user. So upload is easier from that point of view. But yes the config can be added later on.

@josegar74 josegar74 merged commit 35177e9 into geonetwork:4.0.x Dec 1, 2020
fxprunayre added a commit that referenced this pull request Aug 3, 2021
More and more often, end user define a custom INSPIRE portal for being harvested by INSPIRE geoportal. The INSPIRE portal first filter records in the scope of the Directive and may also define post processing to adapt record encoding to INSPIRE rules (see. CSW post processing #4493).

If the nodeid parameter is not set, then the record XML is sent to the validator for validation. If defined, then the GetRecordById URL of the record in this node is sent to the validator which retrieve the XML (see #5227).

Also add error message in case of validator return an empty token.
fxprunayre added a commit that referenced this pull request Aug 5, 2021
More and more often, end user define a custom INSPIRE portal for being harvested by INSPIRE geoportal. The INSPIRE portal first filter records in the scope of the Directive and may also define post processing to adapt record encoding to INSPIRE rules (see. CSW post processing #4493).

If the nodeid parameter is not set, then the record XML is sent to the validator for validation. If defined, then the GetRecordById URL of the record in this node is sent to the validator which retrieve the XML (see #5227).

Also add error message in case of validator return an empty token.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants