DQC Dynamic Flags

Metadata

Data product name

DpdDqcDynamicFlags

Data product custodian

DQC

Name of the Schema file

euc-dqc-DynamicFlags.xsd

Last Edited for DPDD Version

10.0

Processing Element(s) creating/using the data product

Creators:

  • ST-DQ/ST_DQT_DynamicFlags

Consumers:

  • Euclid Metadata Explorer, i.e. QualityViewer

Processing function using the data product

None.

Proposed for inclusion in EAS/SAS

Data Product Elements

Header

object of type sys:genericHeader

Data

object of type dqc:dynamicFlagData

QualityFlags

object of type sqf:sqfDpdDqcDynamicFlags

Parameters

object of type ppr:genericKeyValueParameters

Detailed Description of the Data Product

The DynamicFlags data product may contain flags for a specific data product. These flags have been raised when either a flagCondition returned true or an exception occurred during evaluation of the flagRuleSet. A flagRuleSet contains conditions to be tested against values in a data product. The PE ST_DQT_DynamicFlags evaluates the flagConditions for one or more data products and produces one DynamicFlag data product per input data product. A DynamicFlag data product may contain no flags at all, but it will contain the flagRuleSet(s) that were tested.

See Quality Flags for details.

This data product will be automatically loaded when someone is looking at the flagged data product in the Euclid Metadata Explorer . The flagged items are shown in the ‘Quality’ section.

Elements

FlaggedProductId The Product ID of the DataProduct that is the input to the DynamicFlags PE. All Flags in this specific DpdDqcDynamicFlags DP refer to this input DP.

InputProductIds The Dynamic Flags PE may receive multiple DPs as input. In this case, a DpdDqcDynamicFlags DP is generated for each input DP separately, and all input DP’s IDs will be stored as a list, in case e.g. a flagCondition is performed across all input DPS. (e.g. DpName.Data.ExpTime LT Dp[:].Data.ExpTime)

ExceptionFlags A list of flags that have been raised due to an exception error. E.g. invalid itemPath, type mismatch.

  • FlagId

    An ID is required so the flag can be referred to by a reassessment. Might be removed if reassessments are modified to include an element of type flagInstance (directly referencing the flag instance in the table of flags). NOTE: There can be reassessments of all kinds of flags - i.e. a polymorphism - is this allowed? Can an “xs:choice” mechanism be used? The current implementation of humanReassessmentFlag uses both mechanisms! Delete one of them.

  • FlagRuleSetId

    The ID of the FlagRuleSet giving rise to this flag.

  • FlagRuleSetIndex

    The index (into Data.FlagRuleSets) of the FlagRuleSet being used in this evaluation.

  • ExceptionType

    The type of exception, e.g. “invalid path”, “type mismatch” etc.

  • FlagConditionIndex

    The index of the FlagCondition within the FlagRuleSet indicated by FlagRuleSetIndex.

  • XPaths

    The XPaths that were involved in creating this exception.

NumberOfExceptionFlags Number of exception flags.

DynamicFlags A list of flags that have been raised for InputProductId. A flag is raised when a flagCondition returns true.

  • FlagId

    An ID is required so the flag can be referred to by a reassessment. Might be removed if reassessments are modified to include an element of type flagInstance (directly referencing the flag instance in the table of flags). NOTE: There can be reassessments of all kinds of flags - i.e. a polymorphism - is this allowed? Can an “xs:choice” mechanism be used? The current implementation of humanReassessmentFlag uses both mechanisms! Delete one of them.

  • FlagRuleSetId

    The ID of the FlagRuleSet giving rise to this flag.

  • FlagRuleSetIndex

    The index (into Data.FlagRuleSets) of the FlagRuleSet being used in this evaluation.

  • TriggeredConditions

    List of flagConditions that evaluated to true, and thus triggered a flag.

    • FlagConditionIndex

      The index of flagCondition within the flagRuleSet

    • LeftSide

      Left side of a condition is always an instance (never a literal value). An instance always requires a Path, a Value and an InstanceProductIds.

    • Operator

      An operator to be applied on the left side can be unary or binary

    • RightSide

      Operator might be unary - no right side. In case of a binary operator, the right hand side is either a Literal value or an item Instance (which requires

    a Path, a Value and an InstanceProductIds).

    • AbortProcessing

      “No” (default) means raise flag in case of condition evaluates to true, but continue evaluating subsequent conditions. “Yes” means raise flag in case of condition evaluates to true, and skip subsequent conditions. “Silent” means skip (do not evaluate) subsequent conditions without raising any flag. E.g. if numStars eq 0 succeeds, don’t go on to calculate the average of the (empty) list of star magnitudes.

  • NonEvaluatedConditionsIndices

    List of indices of conditions that were not evaluated due to an abort flag in a succeeded flagCondition.

  • FlaggedItems

    List of flagged items, i.e. all items that are mentioned in TriggeredConditions or AdditionalItemsToFlag in the FlagRuleSet.

    • ItemPath

      A specific XPath pointing to a value that is flagged. For example: //Data/SomePath/SomeValue[1].

    • TriggeredConditionIndices

      Indices of all triggered conditions flagging this item.

FlagRuleSets List of flagRuleSets that have been processed for the InputProductId. The content of this element is the full content of the DpdDqcFlagRuleSet.