Difference between revisions of "Explain Plan Web Services"
(→Example Output) |
(→HTTP Headers) |
||
Line 43: | Line 43: | ||
|} | |} | ||
+ | === Output === | ||
The output JSON object has 4 fields: | The output JSON object has 4 fields: | ||
* source - the URN of the DSD or Dataflow that was used as the source of the mapping | * source - the URN of the DSD or Dataflow that was used as the source of the mapping |
Revision as of 01:50, 8 August 2023
Contents
Overview
Note: this is the explanation for the Web Services in Fusion Registry version 10.
The Registry has the User Interface feature "Test Mapping" which can be used to test an input file against a Mapping. This feature is very useful when debugging why a mapping did not occur. This page details how to directly call the Web Services that perform the explanation of a mapping
There are 2 Web Services. The firsts "explains" what series dimensions of an input file would be mapped and which would be unmapped with regards to a specifc Map, the second analyses a particular Series Key.
'Explain Map' Web Service
From the supplied file and the specified mapping structure URN, returns a JSON object stating which series were mapped and which were unmapped from the input.
Entry Point | ws/secure/structuremap/explainmap |
Access | Secure |
Authentication | HTTP Basic Authentication |
Http Method | POST |
Accepts | SDMX-ML, SDMX-JSON or SDMX-EDI structure message |
Content-Type | application/text or application/xml |
Response Format | JSON object |
Response Statuses | 200 - Query Ok
400 - Missing Header 'URN' or Unrecognised file input 401 - Unauthorized 404 - Cannot resolve reference to Structure Map specified in URN parameter |
HTTP Headers
The following header parameters must be specified:
HTTP Header | Purpose | Allowed Values |
---|---|---|
URN | (Mandatory) States the mapping structure to map the input data against. |
A valid URN for a Mapping. E.g. urn:sdmx:org.sdmx.infomodel.mapping.StructureMap=MAPPING_TEST:SS_DF(1.0).DF_MAP_TEST |
Output
The output JSON object has 4 fields:
- source - the URN of the DSD or Dataflow that was used as the source of the mapping
- target - the URN of the DSD or Dataflow that was used as the target of the mapping
- mapped - a JSON object. Each field is a unique input key that mapped. For each field is a String stating what it mapped to.
- unmapped - a JSON Array of Strings showing which keys from the input were unmapped
Example Output
{ "source": "urn:sdmx:org.sdmx.infomodel.datastructure.Dataflow=MAPPING_TEST:DF_DSD1(1.0)", "target": "urn:sdmx:org.sdmx.infomodel.datastructure.Dataflow=MAPPING_TEST:DF_DSD2(1.0)", "mapped": { "A:B:BEL": "AAAB:BEL:FIXED_EER", "A:C:BEL": "AAAC:BEL:FIXED_EER", "XXX:C:BAR": "AACC:BAR:FIXED_EER" }, "unmapped": [ "C55BCX:C:BEL" ] }
'Explain Plan' Web Service
Given the supplied Key and Map, returns a JSON object stating the input, mappings and output for that series key
- Takes the parameters "dsd", "map", "key"
Entry Point | ws/secure/structuremap/explainplan |
Access | Secure |
Authentication | HTTP Basic Authentication |
Http Method | GET |
Response Format | JSON object |
Response Statuses | 200 - Success 401 - Unauthorized |
Example Output
{ "reverseMapping": false, "input": { "dimensions": { "FREQ": "C55BCX", "BIS_TOPIC": "C", "REF_AREA": "BEL" }, "attributes": { "OBS_STATUS": null, "OBS_PRE_BREAK": null, "OBS_CONF": null, "BREAKS": null, "COVERAGE": null } }, "unmapped": [], "mappings": { "REF_AREA:BEL": { "REF_AREA": [ "BEL" ] }, "OBS_VALUE:*": { "EER_TYPE": [ "FIXED_EER" ], "COVERAGE": [ "FIXED_CVRG" ] } }, "output": { "dimensions": { "INSTRUMENT_TYPE": [ null ], "REF_AREA": [ "BEL" ], "EER_TYPE": [ "FIXED_EER" ] } } }