diff --git a/core/src/main/java/org/fao/geonet/kernel/setting/Settings.java b/core/src/main/java/org/fao/geonet/kernel/setting/Settings.java index a9661213016e..fb1215cab692 100644 --- a/core/src/main/java/org/fao/geonet/kernel/setting/Settings.java +++ b/core/src/main/java/org/fao/geonet/kernel/setting/Settings.java @@ -139,10 +139,10 @@ public class Settings { public static final String METADATA_WORKFLOW_ENABLE = "metadata/workflow/enable"; public static final String METADATA_WORKFLOW_DRAFT_WHEN_IN_GROUP = "metadata/workflow/draftWhenInGroup"; public static final String METADATA_WORKFLOW_ALLOW_SUBMIT_APPROVE_INVALID_MD = "metadata/workflow/allowSubmitApproveInvalidMd"; - public static final String METADATA_WORKFLOW_ALLOW_PUBLISH_INVALID_MD = "metadata/workflow/allowPublishInvalidMd"; + public static final String METADATA_PUBLICATION_ALLOW_PUBLISH_INVALID_MD = "metadata/publication/allowPublishInvalidMd"; public static final String METADATA_WORKFLOW_ALLOW_PUBLISH_NON_APPROVED_MD = "metadata/workflow/allowPublishNonApprovedMd"; - public static final String METADATA_WORKFLOW_AUTOMATIC_UNPUBLISH_INVALID_MD = "metadata/workflow/automaticUnpublishInvalidMd"; - public static final String METADATA_WORKFLOW_FORCE_VALIDATION_ON_MD_SAVE = "metadata/workflow/forceValidationOnMdSave"; + public static final String METADATA_PUBLICATION_AUTOMATIC_UNPUBLISH_INVALID_MD = "metadata/publication/automaticUnpublishInvalidMd"; + public static final String METADATA_SAVE_FORCE_VALIDATION_ON_MD_SAVE = "metadata/save/forceValidationOnMdSave"; public static final String METADATA_LINK_EXCLUDEPATTERN = "metadata/link/excludedUrlPattern"; public static final String METADATA_IMPORT_RESTRICT = "metadata/import/restrict"; public static final String METADATA_IMPORT_USERPROFILE = "metadata/import/userprofile"; diff --git a/docs/manual/docs/administrator-guide/configuring-the-catalog/system-configuration.md b/docs/manual/docs/administrator-guide/configuring-the-catalog/system-configuration.md index 6463f93676d2..f37fcd87bd4a 100644 --- a/docs/manual/docs/administrator-guide/configuring-the-catalog/system-configuration.md +++ b/docs/manual/docs/administrator-guide/configuring-the-catalog/system-configuration.md @@ -339,17 +339,38 @@ Allows to configure the user profile allowed to delete published metadata. ![](img/metadata-delete.png) +## Metadata workflow + +Allows to configure the metadata approval workflow (record life cycle). See [Life cycle](../../user-guide/workflow/life-cycle.md) for details about how the workflow is used. + +- **Enable workflow** Enables the metadata approval workflow. When enabled, editors work on a draft copy of approved records and changes must be submitted and approved before they become visible to users outside the owner group. The default value is disabled. +- **Activate workflow for record created in** Restricts the groups for which the workflow is automatically activated when a record is created. Choose `Any group` to activate it for all groups, or `Selected groups` to provide a regular expression matching the group names where records must be set to draft status automatically. eg. `MYOCEAN-.*` to match all groups starting with `MYOCEAN-`, `GROUP1|GROUP2` to match `GROUP1` or `GROUP2`. +- **Allow submission/approval of invalid metadata** Allows the submission/approval of metadata that is not valid according to xsd or schematron rules. The default value is enabled. +- **Allow publication of non-approved metadata** Allows the publication of metadata that is not approved. The default value is enabled. + ## Metadata publication -Allows to configure the required user profile to publish and un-publish metadata. +Allows to configure the publication of metadata records. + +The settings in this section apply whether or not the metadata approval workflow is enabled. -The configured profile is evaluated on the metadata owner group (per-group role), not the user's global profile. The user must have exactly this profile in the record owner group. For example, with `Reviewer`, only users who are `Reviewer` in the owner group are allowed (not `UserAdmin`). Global `Administrator` is always allowed. +The required user profile is evaluated on the metadata owner group (per-group role), not the user's global profile. The user must have exactly this profile in the record owner group. For example, with `Reviewer`, only users who are `Reviewer` in the owner group are allowed (not `UserAdmin`). Global `Administrator` is always allowed. - **Required profile to publish metadata** Profile required to publish metadata, evaluated in the record owner group (`Reviewer` or `Administrator`). The default value is `Reviewer`. - **Required profile to un-publish metadata** Profile required to un-publish metadata, evaluated in the record owner group (`Reviewer` or `Administrator`). The default value is `Reviewer`. +- **Allow publication of invalid metadata** Allows the publication of metadata that is not valid according to xsd or schematron rules. When disabled, a record that is invalid cannot be published to the `All` group. The default value is enabled. +- **Automatic unpublication of invalid metadata** Automatically unpublishes metadata that, once edited, becomes not valid according to xsd or schematron rules. The default value is disabled. ![](img/metadata-publication.png) +## Metadata save + +Allows to configure the behaviour when a metadata record is saved and the editor is closed. + +This setting applies whether or not the metadata approval workflow is enabled. + +- **Force validation on metadata save** When enabled, the validation of the metadata is forced (and its validation status stored) each time the record is saved and the editor is closed. The default value is disabled. + ## Metadata selection - zip export Allows to configure the zip export of metadata records and their attachments. diff --git a/schemas/iso19115-3.2018/src/test/resources/UpperRhineCastles-ISO19115-3-full-view-form.xml b/schemas/iso19115-3.2018/src/test/resources/UpperRhineCastles-ISO19115-3-full-view-form.xml index 64f0d361335c..75835ee7a546 100644 --- a/schemas/iso19115-3.2018/src/test/resources/UpperRhineCastles-ISO19115-3-full-view-form.xml +++ b/schemas/iso19115-3.2018/src/test/resources/UpperRhineCastles-ISO19115-3-full-view-form.xml @@ -2175,6 +2175,8 @@ false + true + false Reviewer Reviewer @@ -2188,14 +2190,14 @@ false - true true true - false false - false + + false + diff --git a/schemas/iso19115-3.2018/src/test/resources/raw-UpperRhineCastles-editor-form.xml b/schemas/iso19115-3.2018/src/test/resources/raw-UpperRhineCastles-editor-form.xml index 032a3532d274..ad65789198a4 100644 --- a/schemas/iso19115-3.2018/src/test/resources/raw-UpperRhineCastles-editor-form.xml +++ b/schemas/iso19115-3.2018/src/test/resources/raw-UpperRhineCastles-editor-form.xml @@ -234,11 +234,11 @@ -
+
-
- + @@ -297,7 +297,7 @@
-
+
Contact pour la ressource  @@ -513,11 +513,11 @@
-
+
-
- + @@ -790,10 +790,10 @@
- - - -
-
+
-
- + @@ -1231,19 +1231,19 @@
-