Time period range selection with annual and non-annual frequencies
As a .Stat DE user,
I need a combined set of selectors in the visualisation page, replacing the current time-period slider,
so that I am able to filter a dataflow view for time-period range in the context of a pre-selected frequency.
References
- Full functional specifications https://oecd.aha.io/features/ONEDATA-50
- Design to be applied (to be updated according to the latest review) https://cis-itn-oecd.github.io/Design-artefacts/demo/de-blueprint/dataset.html
Acceptance Criteria
-
The current time-period slider is replaced by a Time-Period range selector that is merged with a single-selection Frequency filter.
-
The component is always on the first top position in the page. If there is no Frequency, then only Time-Period is displayed.
-
Use the frequencies returned in the Frequency Dimension for the display in the filter (the frequency dimension can be recognised by its concept role or if not available by its ID). Only the frequencies returned for the given dataflow are displayed in the Frequency filter. If there is only one frequency, then we don't display the filter, and Frequency is displayed in the dataflow table/chart header.
-
most used frequencies are:
frequency code ID | description |
---|---|
A2 | Biennial |
A | Annual |
S | Half-yearly, Semester |
Q | Quarterly |
M | Monthly |
W | Weekly |
D | Daily |
H | Hourly |
B | Daily - business week |
N | Minutely |
- Only the first letter of the frequency code ID is to be taken into account for the adaptation of the time-period range selector. Not each frequency has its own time-period range selector, because the selector has only layouts for the main frequencies.
first letter of frequency code ID | time-period selector layout |
---|---|
A | Annual |
S | Half-yearly |
Q | Quarterly |
M | Monthly |
W | Weekly |
D | Daily |
H | Hourly |
N | Minutely |
Anything else | Annual |
-
Frequency is a single selection filter. In any case, the Time-Period selector dynamically updates according to the Frequency selection, and it provides the corresponding box selectors.
-
The configuration
"vis.period.boundaries": [1970, 2020]
is used to return the list of available years in the time-Period selector. -
The configuration
"vis.period.default": [2008, 2018]
is used to display the default range selected for a given dataflow. -
If there is no Frequency dimension returned for a dataflow, then the Frequency Annual is selected by default.
-
As a general behavior, the Time-Period selector layout is dynamic and updates according to the Frequency selection, e.g. I select Daily frequency, and the Time-Period range selector displays the boxes for Year, Month and Day (see in the design).
At this stage, if only Year is filled, or Year and Month, then it means that all available values in this range are returned.
This is achieved by sending only the currently selected (but fully valid!) time-range parts to the SDMX web service, e.g. "2015", "2015-11" or "2015-11-23" are allowed for specifying a daily start or end period but "-11" or "-11-23" are not. -
In the Time-Period selector, each box is a drop-down list associated to a free text fill box. When entering a value that matches an available one, the cursor automatically moves to the next box. This should work for all boxes within Start periods and independently for end periods too.
-
In the "Used filters" area, Frequency cannot be removed, but only replaced. Thus there is no cross in front of the selected Frequency (see mockup below).
-
For time-period ranges, each start / end can be removed, and thus no filter will be applied for each.