Dynamic Attributes

From Fusion Registry Wiki
Revision as of 03:20, 29 October 2020 by Mnelson (talk | contribs) (Overview)
Jump to navigation Jump to search


Overview

A Dynamic Attribute is a series attribute defined in a Data Structure Definition where the value for the attribute is derived at the time the dataset is generated. The derived value may include a mixture of hard coded text and reported values from any number of Dimensions for the series.

A typical use case is to provide a Series Title giving each series a human readable description of what data the series is describing. If the series title attribute is set to be a dynamic series attribute then the text for the series title can be derived from other dimensions such as reporting country, series indicator, frequency, and so on. Therefore, a derived title may look something like this:

Annual data of employment status in the United Kingdom

Where the terms Annual, employment status, and United Kingdom are taken from the Frequency, Indicator, and Country dimension respectively.

Supported Features

  • Dynamic Attributes can be applied to Series, Observation, and Group level attributes
  • Multilingual text is supported
  • Variable placeholders enable the text to contain Code Ids, Labels, and Descriptions for any coded Dimension value

Making an Attribute Dynamic

To create a dynamic series attribute, add an Annotation to the Attribute with the Annotation Type of FR_DYNAMIC. The Annotation Text holds the text to output, and can be provided in each locale that requires support in the output.

Variable placeholders are supported using the syntax: $[COMPONENT_ID] for example $[FREQ], the id, name or description of the coded value can be used by adding the postfix .id, .name or .desc

Example

Variable Example Output Text Example
$[INDICATOR.id] EMP
$[INDICATOR.name] Employment
$[INDICATOR.desc] Status in employment

Example

Attribute = SERIES_TITLE
Annotation Type = FR_DYNAMIC
Annotation Text (en) = $[FREQ.name] data of $[INDICATOR.name] in the $[COUNTRY.name]