You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@sis.apache.org by "Martin Desruisseaux (Jira)" <ji...@apache.org> on 2022/11/29 10:55:00 UTC

[jira] [Updated] (SIS-84) Setter methods in metadata objects shall check for ISO 19115 constraints

     [ https://issues.apache.org/jira/browse/SIS-84?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Martin Desruisseaux updated SIS-84:
-----------------------------------
    Fix Version/s:     (was: 1.3)

> Setter methods in metadata objects shall check for ISO 19115 constraints
> ------------------------------------------------------------------------
>
>                 Key: SIS-84
>                 URL: https://issues.apache.org/jira/browse/SIS-84
>             Project: Spatial Information Systems
>          Issue Type: Improvement
>          Components: Metadata
>    Affects Versions: 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 1.0, 1.1
>            Reporter: Martin Desruisseaux
>            Assignee: Martin Desruisseaux
>            Priority: Major
>
> Setter methods in {{ISOMetadata}} subclasses shall enforce the ISO 19115 restriction. This include:
> * Everywhere a {{@ValueRange}} annotation is present, add a runtime check for the same range of values.
> * For every property flagged as {{CONDITIONAL}} for a reason other than union, implement a check for that reason (case-by-case basis). For example:
> ** {{MD_ExtendedElementInformation}} allows a non-null {{domainCode}} only if {{dataType}} is {{CODE_LIST_ELEMENT}}.
> ** {{MD_ExtendedElementInformation}} allows a non-null {{condition}} only if {{obligation}} is {{CONDITIONAL}}.
> ** {{MD_LegalConstraints}} allows a non-empty {{otherConstraints}} only if {{accessConstraintsaccessConstraints}} or {{useConstraints}} is {{OTHER_RESTRICTIONS}}.
> ** {{LI_Lineage}} allows a non-null {{statement}} only if the scope level is {{SERIES}}.
> ** {{DQ_DataQuality}} allows non-null {{reports}} and {{lineage}} only if the scope level is {{DATASET}}.
> ** {{DQ_Scope}} allows a non-null {{levelDescription}} only if {{level}} is neither {{DATASET}} or {{SERIES}}.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)