Feature to categorise a dataflow
As Jens,
I want to categorise a dataflow in one or several of the categories in any of the available categoryschemes of the current space,
So what less manual work is required before the dataflow can be indexed for the DE search.
Specifications:
-
In the context menu of the dataflow (as well as in the multi-selection menu for dataflows) just below "Transfer data" add a new menu entry to "Categorise structure". Note that this feature is only available for dataflows belonging to an internal space.
-
When this menu is clicked, open a popup window that shows the list of CategorySchemes and corresponding category-trees of the related data space, similarly to the content of the current "Filter by category" selector.
-
When the user selected one or several of the categories in any CategoryScheme and clicked on "Categorise", then immediately generate the corresponding categorisation(s) and submit it/them to related data space SDMX API.
<structure:Categorisations>
<structure:Categorisation id="CAT_[%DF_AGENCY_ALTER]__[%DF_ID]__[@DF_VERSION_ALTER]@[@CS_AGENCY_ALTER]__[@CS_ID]__[@CS_VERSION_ALTER]__[@CAT_ID_ALTER]" agencyID="[%DF_AGENCY]" version="[%DF_VERSION]" isFinal="false">
<common:Name xml:lang="xx">[%DF_NAME_XX]</common:Name>
<structure:Source>
<Ref id="[%DF_ID]" version="[%DF_VERSION]" agencyID="[%DF_AGENCY]" package="datastructure" class="Dataflow" />
</structure:Source>
<structure:Target>
<Ref id="[@CAT_ID]" maintainableParentID="[@CS_ID]" maintainableParentVersion="[@CS_VERSION]" agencyID="[@CS_AGENCY]" package="categoryscheme" class="Category" />
</structure:Target>
</structure:Categorisation>
</structure:Categorisations>
-
If technically not too complicated, then add a spotlight that filters the tree and only shows parents and children (still with their parents) that contain the spotlight text.
-
The user can select more than one category in one or more CategorySchemes in order to categorise the structure/dataflow with several categorisations in one go, and thus as many SDMX categorisations artefacts as needed.
-
Indicate the success of the category creation with the appropriate icon next to the dataflow's context menu, similar to status icons for data transfer.
Legend:
- [%DF_ID]: ID of dataflow
- [%DF_AGENCY]: Agency of dataflow
- [@DF_AGENCY_ALTER]: same as [@DF_AGENCY] with dots '.' replaced by underscore '_'
- [%DF_VERSION]: Version of dataflow
- [@DF_VERSION_ALTER]: same as [@DF_VERSION] with dots '.' replaced by underscore '_'
- [%DF_NAME_XX]: Name of dataflow in language XX
- [@CAT_ID]: ID of category (tree)
- [@CAT_ID_ALTER]: same as [@CAT_ID] with dots '.' replaced by underscore '_'
- [@CS_ID]: ID of CategoryScheme
- [@CS_AGENCY]: Agency of CategoryScheme
- [@CS_AGENCY_ALTER]: same as [@CS_AGENCY] with dots '.' replaced by underscore '_'
- [@CS_VERSION]: Agency of CategyScheme
- [@CS_VERSION_ALTER]: same as [@CS_VERSION] with dots '.' replaced by underscore '_'
Note: If the category selected is a child category then the IDs of all parent categories involved in the branch are to be concatenated using '.', e.g. if the category with ID "THIRD" in the following category-tree was selected, then [@CAT_ID] would stand for "TOP.SECOND.THIRD":
- TOP
- SECOND
- THIRD
- SECOND
Note: Previous image without spotlight: /uploads/e40d07999b9a2b4a908bdf371a36fccd/image.png