Changes for page 13 Structure Mapping
Last modified by Artur on 2025/09/10 11:19
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Attachments (0 modified, 1 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -381,58 +381,48 @@ 381 381 382 382 The model is illustrated below: 383 383 384 +[[image:1750074994887-415.png]] 384 384 385 -**Figure 26 showing the component map mapping the SOURCE_DATE Dimension to the** 386 +**Figure 26 showing the component map mapping the SOURCE_DATE Dimension to the TIME_PERIOD Dimension with the additional information on the component map to describe the numerical datetime system in use ** 386 386 387 -=== =TIME_PERIODDimension with theadditionalinformation on the componentmapto describe the numericaldatetime system inuse====388 +=== 13.7.3 Mapping more complex time inputs === 388 388 389 - ===Mapping more complex time inputs===390 +[[VTL>>doc:sdmx:Glossary.Validation and transformation language.WebHome]] should be used for more complex time inputs that cannot be interpreted using the pattern based on numerical methods. 390 390 391 - VTLshouldbe used for more complex time inputsthatcannot beinterpretedusingthe pattern based on numericalmethods.392 +== 13.8 Using TIME_PERIOD in mapping rules == 392 392 393 - ==UsingTIME_PERIOD in mapping rules==394 +The source TIME_PERIOD [[Dimension>>doc:sdmx:Glossary.Dimension.WebHome]] can be used in conjunction with other input [[Dimensions>>doc:sdmx:Glossary.Dimension.WebHome]] to create discrete mapping rules where the output is conditional on the [[time period>>doc:sdmx:Glossary.Time period.WebHome]] value. 394 394 395 -The sourceTIME_PERIOD Dimensioncan be usedin conjunctionwith otherinputDimensionstocreate discretemappingrules wheretheoutputis conditionalonthetimeperiod value.396 +The main use case is setting the value of Observation [[Attributes>>doc:sdmx:Glossary.Attribute.WebHome]] in the target [[dataset>>doc:sdmx:Glossary.Data set.WebHome]]. 396 396 397 -The main use case is setting the value of Observation Attributes in the target dataset. 398 - 399 -|Rule|Source|Target 400 -|1|((( 398 +(% style="width:709.294px" %) 399 +|(% style="width:103px" %)**Rule**|(% style="width:405px" %)**Source**|(% style="width:198px" %)**Target** 400 +|(% style="width:103px" %)1|(% style="width:405px" %)((( 401 401 If 402 - 403 403 INDICATOR=XULADS; and TIME_PERIOD=2007. 404 -)))|((( 405 -Set 406 - 407 -OBS_CONF=F 403 +)))|(% style="width:198px" %)((( 404 +Set OBS_CONF=F 408 408 ))) 409 -|2|((( 406 +|(% style="width:103px" %)2|(% style="width:405px" %)((( 410 410 If 411 - 412 412 INDICATOR=XULADS; and TIME_PERIOD=2008. 413 -)))|Set OBS_CONF=F 414 -|3|((( 409 +)))|(% style="width:198px" %)Set OBS_CONF=F 410 +|(% style="width:103px" %)3|(% style="width:405px" %)((( 415 415 If 416 - 417 417 INDICATOR=XULADS; and TIME_PERIOD=2009. 418 -)))|((( 419 -Set 420 - 421 -OBS_CONF=F 413 +)))|(% style="width:198px" %)((( 414 +Set OBS_CONF=F 422 422 ))) 423 -|4|((( 416 +|(% style="width:103px" %)4|(% style="width:405px" %)((( 424 424 If 425 - 426 426 INDICATOR=XULADS; and TIME_PERIOD=2010. 427 -)))|((( 428 -Set 429 - 430 -OBS_CONF=**C** 419 +)))|(% style="width:198px" %)((( 420 +Set OBS_CONF=**C** 431 431 ))) 432 432 433 -In the example above, OBS_CONF is an Observation Attribute. 423 +In the example above, OBS_CONF is an Observation [[Attribute>>doc:sdmx:Glossary.Attribute.WebHome]]. 434 434 435 -== 13. Time span mapping rules using validity periods == 425 +== 13.9 Time span mapping rules using validity periods == 436 436 437 437 Creating discrete mapping rules for each TIME_PERIOD is impractical where rules need to cover a specific span of time regardless of frequency, and for high-frequency data. 438 438 ... ... @@ -440,25 +440,22 @@ 440 440 441 441 By specifying validity periods, the example from Section 13.8 can be re-written using two rules as follows: 442 442 443 -|Rule|Source|Target 444 -|1|((( 433 +(% style="width:516.294px" %) 434 +|(% style="width:74px" %)Rule|(% style="width:215px" %)Source|(% style="width:223px" %)Target 435 +|(% style="width:74px" %)1|(% style="width:215px" %)((( 445 445 If 446 - 447 447 INDICATOR=XULADS. 448 - 449 - 450 - Validity Period start period=2007 end period=2009451 -)))|Set OBS_CONF=F 452 -|2|((( 438 +Validity Period 439 +start period=2007 440 +end period=2009 441 +)))|(% style="width:223px" %)Set OBS_CONF=F 442 +|(% style="width:74px" %)2|(% style="width:215px" %)((( 453 453 If 454 - 455 455 INDICATOR=XULADS. 456 - 457 - 458 -Validity Period start period=2010 459 -)))|((( 445 +Validity Period 446 +start period=2010 447 +)))|(% style="width:223px" %)((( 460 460 Set 461 - 462 462 OBS_CONF=F 463 463 ))) 464 464 ... ... @@ -466,78 +466,68 @@ 466 466 467 467 In Rule 2, no end period is specified so remains in effect from the start of the period (2010-01-01T00:00:00) until the end of time. Any observations reporting data for the Indicator XULADS that fall into that time range will have an OBS_CONF value of C. 468 468 469 - ==13.Mapping examples==456 +In Rule 2, no end period is specified so remains in effect from the start of the period (2010-01-01T00:00:00) until the end of time. Any observations reporting data for the Indicator XULADS that fall into that time range will have an OBS_CONF value of C. 470 470 471 -== =13. Many to one mapping(N-1)===458 +== 13.10 Mapping examples == 472 472 473 -|Source|Map To 474 -|((( 475 -**FREQ**="A" 460 +=== 13.10.1 Many to one mapping (N3513 -1) === 476 476 462 +(% style="width:542.294px" %) 463 +|(% style="width:274px" %)**Source**|(% style="width:265px" %)**Map To** 464 +|(% style="width:274px" %)((( 465 +(% style="color:#8e44ad" %)**FREQ**="A" 477 477 ADJUSTMENT="N" 478 - 479 479 **REF_AREA**="PL" 480 - 481 481 **COUNTERPART_AREA**="W0" 482 - 483 483 REF_SECTOR="S1" 484 - 485 485 COUNTERPART_SECTOR="S1" 486 - 487 487 ACCOUNTING_ENTRY="B" 488 - 489 489 STO="B5G" 490 -)))|((( 491 -FREQ="A" 492 - 473 +)))|(% style="width:265px" %)((( 474 +(% style="color:#8e44ad" %)FREQ="A" 493 493 REF_AREA="PL" 494 - 495 495 COUNTERPART_AREA="W0" 496 -INDICATOR="IND_ABC" 477 +INDICATOR="IND_ABC"(%%) 497 497 498 498 ))) 499 499 500 -The bold Dimensions map from source to target verbatim. The mapping simply specifies: 481 +The bold [[Dimensions>>doc:sdmx:Glossary.Dimension.WebHome]] (% style="color:#e74c3c" %)map(%%) from source to target verbatim. The mapping simply specifies: 501 501 502 -FREQ => FREQ 483 +> FREQ => FREQ 484 +> REF_AREA=> REF_AREA 485 +> COUNTERPART_AREA=> COUNTERPART _AREA 503 503 504 -R EF_AREA=>REF_AREA487 +No [[Representation>>doc:sdmx:Glossary.Representation.WebHome]] Mapping is required. The source value simply copies across unmodified. 505 505 506 - COUNTERPART_AREA=>COUNTERPART_AREA489 +The remaining [[Dimensions>>doc:sdmx:Glossary.Dimension.WebHome]] all (% style="color:#e74c3c" %)map(%%) to the Indicator [[Dimension>>doc:sdmx:Glossary.Dimension.WebHome]]. This is an example of many [[Dimensions>>doc:sdmx:Glossary.Dimension.WebHome]] mapping to one [[Dimension>>doc:sdmx:Glossary.Dimension.WebHome]]. In this case a [[Representation>>doc:sdmx:Glossary.Representation.WebHome]] Mapping is required, and the mapping first describes the input 'partial key' and how this (% style="color:#e74c3c" %)maps(%%) to the target indicator: 507 507 508 -N oRepresentationMapping is required. The source value simply copies across unmodified.491 +> N:S1:S1:B:B5G => IND_ABC 509 509 510 - TheremainingDimensions allmap to theIndicatorDimension. Thisis an exampleofmanyDimensionsmappingto one Dimension. In thiscaseaRepresentationMappingisrequired,andthemappingfirstdescribestheinput'partial key'andhow this mapstothetargetindicator:493 +Where the key sequence is based on the order specified in the (% style="color:#e74c3c" %)mapping(%%) (i.e [[ADJUSTMENT>>doc:sdmx:Glossary.Adjustment.WebHome]], REF_SECTOR, etc will result in the first value N being taken from [[ADJUSTMENT>>doc:sdmx:Glossary.Adjustment.WebHome]] as this was the first item in the source [[Dimension>>doc:sdmx:Glossary.Dimension.WebHome]] list. 511 511 512 -N: S1:S1:B:B5G =>IND_ABC495 +**Note**: The key order is NOT based on the [[Dimension>>doc:sdmx:Glossary.Dimension.WebHome]] order of the [[DSD>>doc:sdmx:Glossary.Data structure definition.WebHome]], as the (% style="color:#e74c3c" %)mapping(%%) needs to be resilient to the [[DSD>>doc:sdmx:Glossary.Data structure definition.WebHome]] changing. 513 513 514 - Wherethekey sequence is based on the order specified in the mapping(i.e ADJUSTMENT, REF_SECTOR, etc will result in thefirstvalue N beingtakenfrom ADJUSTMENT asthis was thefirstitemin the sourceDimensionlist.497 +=== 13.10.2 Mapping other data types to Code Id === 515 515 516 - **Note**:ThekeyorderisNOTbased on the Dimensionorder of theDSD,as themappingneeds to be resilienttotheDSDchanging.499 +In the case where the incoming data type is not a string and not a [[code>>doc:sdmx:Glossary.Code.WebHome]] identifier i.e. the source [[Dimension>>doc:sdmx:Glossary.Dimension.WebHome]] is of type Integer and the target is Codelist. This is supported by the RepresentationMap. The RepresentationMap source can reference a Codelist, Valuelist, or be free text, the free text can include regular expressions. 517 517 518 -1. 519 -11. 520 -111. Mapping other data types to Code Id 501 +The following [[representation>>doc:sdmx:Glossary.Representation.WebHome]] (% style="color:#e74c3c" %)mapping(%%) can be used to explicitly (% style="color:#e74c3c" %)map(%%) each [[age>>doc:sdmx:Glossary.Age.WebHome]] to an output [[code>>doc:sdmx:Glossary.Code.WebHome]]. 521 521 522 -In the case where the incoming data type is not a string and not a code identifier i.e. the source Dimension is of type Integer and the target is Codelist. This is supported by the RepresentationMap. The RepresentationMap source can reference a Codelist, Valuelist, or be free text, the free text can include regular expressions. 503 +(% style="width:402.294px" %) 504 +|(% style="width:197px" %)**Source Input Free Text**|(% style="width:204px" %)**Desired Output Code Id** 505 +|(% style="width:197px" %)0|(% style="width:204px" %)A 506 +|(% style="width:197px" %)1|(% style="width:204px" %)A 507 +|(% style="width:197px" %)2|(% style="width:204px" %)A 508 +|(% style="width:197px" %)3|(% style="width:204px" %)B 509 +|(% style="width:197px" %)4|(% style="width:204px" %)B 523 523 524 - Thefollowingrepresentationmappingcan beusedto explicitlymapeachageto anoutput code.511 +If this mapping takes advantage of regular expressions it can be expressed in two rules: 525 525 526 -|Source Input Free Text|Desired Output Code Id 527 -|0|A 528 -|1|A 529 -|2|A 530 -|3|B 531 -|4|B 513 +(% style="width:336.294px" %) 514 +|(% style="width:182px" %)**Regular Expression**|(% style="width:151px" %)**Desired Output** 515 +|(% style="width:182px" %)[0-2]|(% style="width:151px" %)A 516 +|(% style="width:182px" %)[3-4]|(% style="width:151px" %)B 532 532 533 -If this mapping takes advantage of regular expressions it can be expressed in two rules: 534 - 535 - 536 -Regular Expression Desired Output 537 - 538 -|[0-2]|A 539 -|[3-4]|B 540 - 541 541 === 13. Observation Attributes for Time Period === 542 542 543 543 This use case is where a specific observation for a specific time period has an attribute value.
- 1750074994887-415.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +xwiki:XWiki.helena - Size
-
... ... @@ -1,0 +1,1 @@ 1 +12.4 KB - Content