Structure Sets

From FMR Knowledge Base
Revision as of 09:31, 3 March 2021 by Vmurrell (talk | contribs) (Overview)
Jump to navigation Jump to search

Overview

The Structure Maps area allows you to define a number of map types that can be used to map components (Dimensions and Attributes) from one Data Structure to another. This relationship between two Data Structures can be used to map data queries, or datasets from the source Data Structure to the target Data Structure.

Structure sets are no longer used after Version 10.5.7

If you are using a version later than 10.5.7, please refer to this article on Structure Maps and this article on Representation Maps.

Structure Sets

All maps MUST belong to a structure set which is selected when the map is created. It is simply a container and only has one step in the wizard as shown in the example below.


SM1.PNG


Data Structure Maps

Overview

Data Structure Maps are used to map Components (Dimensions and Attributes) from one Data Structure to another. This relationship between two Data Structures can be used to map data queries, or datasets from the source Data Structure to the target Data Structure.

Wizard

From the Structure Maps menu, select the Data Structure Maps Page and use the maintenance button to create a map. Cogs.PNG

Step 1 - High Level Details

The steps in a Data Structure Map Wizard includes step 1 which provides the generic, high level details about the Data Structure Map. See this article for more information on authoring and maintaining structures. Additionally, you must select the Structure set in Step 1.

Step 2 - Mapped Structures

The second step of the wizard is to pick a source and target Data Structure; this defines which two Data Structures will be mapped. To add or modify a source or target, click in the input field to open a list of available structures.


SM3.PNG

Step 3 - Mapped Components

The third step is used to define how the Components of the source Data Structure map to the Components of the target Data Structure. The Source table on the left of the page shows the available Components of the source Data Structure. Selecting a source will update the Target table in the middle of the page, which shows all currently mapped targets. The Available table on the right of the page shows all the Components of the target Data Structure which are not yet mapped to the selected Source. Components can be moved from Available to Target and vice versa by selecting the component in the target or available table and clicking the left or right arrow.

SM4.PNG

Step 4 - Mapped Representation

The last step of the wizard provides a mechanism to define, for each mapped Component, how their representation is mapped. For example if two Reference Area Components are being mapped, with the source Reference Area using an ISO 2 character country Codelist and the target using the ISO 3 character Country Codelist, this step of the wizard provides the mechanism to define the mapping used between each Code in the source and target Reference Area Codelists.


SM5.PNG

The above image shows the Component Maps on the left of the page, as defined in step 3 of the wizard. Each mapped Component can have a Representation Map defined. A Representation Map falls into one of the following three categories:

Implicit – this type of mapping states that the source and targets values will be the same and therefore there is no need explicitly define the mapping. For example if the content is textual, or if the components use the same Codelist, or the source and target Codelists share the same Code Ids then implicit mapping can be used.

Explicit (Value Map) – this type of mapping is ‘inlne’ and stored as part of this Data Structure Map. A value map is imported using CSV, of source to target (as shown below). A Value Map can be used to map any text content and therefore does not have to be a valid Id ($, £, % can all be mapped for example).


SM6.PNG

Explicit (Codelist Map) – this type of mapping references an existing Codelist Map, which is created and maintained separately of this Data Structure Map. This option is only available if there is a Codelist Map defined for the Agency which maps between the source and target Codelist as used by the source and target Components that are being mapped. Codelist Maps are discussed in the next section of this document.


SM7.PNG

Dataflow Maps

Dataflow Maps are almost identical to a Data Structure Map, except that the mapping is performed between two Dataflows. Please refer to the section on Data Structure Maps above for guidance.

Codelist Maps

Overview

Codelist Maps are used to map Codes from one Codelist to another. This relationship between two Codelists can be used when mapping between Dataflows or Data Structures (see Data Structure Maps and Dataflow Maps). This information may also be used for reference or processing from external applications.

Wizard

From the Structure Maps menu, select the Codelist Maps Page and use the maintenance button to create a map. Cogs.PNG

Step 1 - High Level Details

The steps in a Codelist Map Wizard includes step 1 which provides the generic, high level details about the Map. See this article for more information on authoring and maintaining structures. Additionally, you must select the Structure set in Step 1.

Step 2 - Mapped Structures

The second step of the wizard is to pick a source and target Codelist, this defines which two Codelists will be mapped. To pick (or edit) a source or target Codelist, click in the input box and a pop up window will appear showing all the Codelists in the system, allowing one of them to be selected.

Mapping Function - Optional

An optional mapping function can be specified which operates on the source codelist.

SubString allows a substring of the source code to be mapped. The values are zero-indexed. The end index is optional and is non-inclusive. SubString example: to use only the 2nd and 3rd characters of the source code, specify a start index of 1 and an end index of 3.

Regular Expression allows the source codes to be mapped via a Regular expression. Remember to escape special characters. RegEx example: to use the characters up to the first underscore, specify a regex of [^_]*

Step 3 - Import Mapping

The third step allows Code mapping information to be imported from CSV. This step is optional if Manual Mapping is preferred (step 4) then this can be used.

The CSV is expected to have 2 entries per line, one for the source Code Id, and one for the target Code Id. This is shown in the image below.


SM8.PNG

Step 4 - Manual Mapping

The final step allows codes to be manually mapped to the source code. To manually map a code, select the source code, the current Target and a list of Available targets will be presented, as shown in the image below. On selecting an available target, it can be moved to be a target by clicking on the left arrow. Current Targets can be moved into the Available target by clicking on the right arrow.


SM9.PNG

Concept Scheme Maps

Concept Scheme Maps are almost identical to a Codelist Map, except that the mapping is performed between two Concept Schemes as opposed to two Codelists.