Changes for page 10 Constraints
Last modified by Artur on 2025/09/10 11:19
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Attachments (0 modified, 3 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -282,12 +282,15 @@ 282 282 283 283 DSD Constraint 284 284 285 +[[image:1750065367824-357.png]] 285 285 286 286 Dataflow Constraints 287 287 289 +[[image:1750065392163-400.png]] 288 288 289 289 Provision Agreement Constraint 290 290 293 +[[image:1750065461589-995.png]] 291 291 292 292 **10.4.7.2 Combination of Constraints** 293 293 ... ... @@ -295,17 +295,18 @@ 295 295 296 296 Let’s assume a DSD with the following Components: 297 297 298 -|Dimension|FREQ 299 -|Dimension|JD_TYPE 300 -|Dimension|JD_CATEGORY 301 -|Dimension|VIS_CTY 302 -|TimeDimension|TIME_PERIOD 303 -|Attribute|OBS_STATUS 304 -|Attribute|UNIT 305 -|Attribute|COMMENT 306 -|MetadataAttribute|CONTACT 307 -|Measure|MULTISELECT 308 -|Measure|CHOICE 301 +(% style="width:459.294px" %) 302 +|(% style="width:204px" %)(% style="color:#3498db" %)Dimension|(% style="width:252px" %)(% style="color:#3498db" %)FREQ 303 +|(% style="width:204px" %)(% style="color:#3498db" %)Dimension|(% style="width:252px" %)(% style="color:#3498db" %)JD_TYPE 304 +|(% style="width:204px" %)(% style="color:#3498db" %)Dimension|(% style="width:252px" %)(% style="color:#3498db" %)JD_CATEGORY 305 +|(% style="width:204px" %)(% style="color:#3498db" %)Dimension|(% style="width:252px" %)(% style="color:#3498db" %)VIS_CTY 306 +|(% style="width:204px" %)(% style="color:#2980b9" %)TimeDimension|(% style="width:252px" %)(% style="color:#2980b9" %)TIME_PERIOD 307 +|(% style="width:204px" %)(% style="color:#16a085" %)Attribute|(% style="width:252px" %)(% style="color:#16a085" %)OBS_STATUS 308 +|(% style="width:204px" %)(% style="color:#16a085" %)Attribute|(% style="width:252px" %)(% style="color:#16a085" %)UNIT 309 +|(% style="width:204px" %)(% style="color:#16a085" %)Attribute|(% style="width:252px" %)(% style="color:#16a085" %)COMMENT 310 +|(% style="width:204px" %)(% style="color:#f39c12" %)MetadataAttribute|(% style="width:252px" %)(% style="color:#f39c12" %)CONTACT 311 +|(% style="width:204px" %)(% style="color:#e74c3c" %)Measure|(% style="width:252px" %)(% style="color:#e74c3c" %)MULTISELECT 312 +|(% style="width:204px" %)(% style="color:#e74c3c" %)Measure|(% style="width:252px" %)(% style="color:#e74c3c" %)CHOICE 309 309 310 310 On the above, let’s assume the following use cases with their constraining requirements: 311 311 ... ... @@ -317,8 +317,9 @@ 317 317 318 318 This is expressed with the following CubeRegion: 319 319 320 -|FREQ|M, Q 321 -|VIS_CTY|MX 324 +(% style="width:287.294px" %) 325 +|(% style="width:131px" %)(% style="color:#3498db" %)FREQ|(% style="width:153px" %)(% style="color:#3498db" %)M, Q 326 +|(% style="width:131px" %)(% style="color:#3498db" %)VIS_CTY|(% style="width:153px" %)(% style="color:#3498db" %)MX 322 322 323 323 **Use Case 2: A Constraint on allowed combinations for some Dimensions** 324 324 ... ... @@ -328,10 +328,11 @@ 328 328 329 329 This is expressed with the following DataKeySet: 330 330 331 -|Key1|FREQ|M 332 -| |VIS_CTY|DE 333 -|(% rowspan="2" %)Key2|FREQ|Q 334 -|VIS_CTY|MX 336 +(% style="width:388.294px" %) 337 +|(% style="width:105px" %)(% style="color:#2980b9" %)Key1|(% style="width:137px" %)(% style="color:#2980b9" %)FREQ|(% style="width:143px" %)(% style="color:#2980b9" %)M 338 +|(% style="width:105px" %) |(% style="width:137px" %)(% style="color:#2980b9" %)VIS_CTY|(% style="width:143px" %)(% style="color:#2980b9" %)DE 339 +|(% rowspan="2" style="width:105px" %)(% style="color:#2980b9" %)Key2|(% style="width:137px" %)(% style="color:#2980b9" %)FREQ|(% style="width:143px" %)(% style="color:#2980b9" %)Q 340 +|(% style="width:137px" %)(% style="color:#2980b9" %)VIS_CTY|(% style="width:143px" %)(% style="color:#2980b9" %)MX 335 335 336 336 **Use Case 3: A Constraint on allowed values for some Dimensions combined with allowed values for some Attributes** R1: Allow monthly and quarterly data 337 337 ... ... @@ -341,9 +341,10 @@ 341 341 342 342 This may be expressed with the following CubeRegion: 343 343 344 -|FREQ|M, Q 345 -|VIS_CTY|MX 346 -|OBS_STATUS|A 350 +(% style="width:285.294px" %) 351 +|(% style="width:143px" %)(% style="color:#2980b9" %)FREQ|(% style="width:139px" %)(% style="color:#2980b9" %)M, Q 352 +|(% style="width:143px" %)(% style="color:#2980b9" %)VIS_CTY|(% style="width:139px" %)(% style="color:#2980b9" %)MX 353 +|(% style="width:143px" %)(% style="color:#27ae60" %)OBS_STATUS|(% style="width:139px" %)(% style="color:#27ae60" %)A 347 347 348 348 **Use Case 4: A Constraint on allowed combinations for some Dimensions combined with specific Attribute values** 349 349 ... ... @@ -353,12 +353,13 @@ 353 353 354 354 This may be expressed with the following DataKeySet: 355 355 356 -|(% rowspan="3" %)Key1|FREQ|M 357 -|VIS_CTY|DE 358 -|UNIT|EUR 359 -|(% rowspan="3" %)Key2|FREQ|Q 360 -|VIS_CTY|MX 361 -|UNIT|USD 363 +(% style="width:389.294px" %) 364 +|(% rowspan="3" style="width:89px" %)(% style="color:#2980b9" %)Key1|(% style="width:153px" %)(% style="color:#2980b9" %)FREQ|(% style="width:142px" %)(% style="color:#2980b9" %)M 365 +|(% style="width:153px" %)(% style="color:#2980b9" %)VIS_CTY|(% style="width:142px" %)(% style="color:#2980b9" %)DE 366 +|(% style="width:153px" %)(% style="color:#27ae60" %)UNIT|(% style="width:142px" %)(% style="color:#27ae60" %)EUR 367 +|(% rowspan="3" style="width:89px" %)(% style="color:#2980b9" %)Key2|(% style="width:153px" %)(% style="color:#2980b9" %)FREQ|(% style="width:142px" %)(% style="color:#2980b9" %)Q 368 +|(% style="width:153px" %)(% style="color:#2980b9" %)VIS_CTY|(% style="width:142px" %)(% style="color:#2980b9" %)MX 369 +|(% style="width:153px" %)(% style="color:#27ae60" %)UNIT|(% style="width:142px" %)(% style="color:#27ae60" %)USD 362 362 363 363 **Use Case 5: A Constraint on allowed values for some Dimensions together with some combination of Dimension values** 364 364 ... ... @@ -368,12 +368,13 @@ 368 368 369 369 Considering the above examples, the following CubeRegions would be created: 370 370 371 -|(% rowspan="3" %)CubeRegion1|FREQ|Q, A 372 -|VIS_CTY|MX, DE 373 -|OBS_STATUS|A 374 -|(% rowspan="3" %)CubeRegion2|FREQ|M 375 -|VIS_CTY|MX, DE 376 -|OBS_STATUS|F 379 +(% style="width:449.294px" %) 380 +|(% rowspan="3" style="width:126px" %)(% style="color:#2980b9" %)CubeRegion1|(% style="width:137px" %)(% style="color:#2980b9" %)FREQ|(% style="width:183px" %)(% style="color:#2980b9" %)Q, A 381 +|(% style="width:137px" %)(% style="color:#2980b9" %)VIS_CTY|(% style="width:183px" %)(% style="color:#2980b9" %)MX, DE 382 +|(% style="width:137px" %)(% style="color:#27ae60" %)OBS_STATUS|(% style="width:183px" %)(% style="color:#27ae60" %)A 383 +|(% rowspan="3" style="width:126px" %)(% style="color:#2980b9" %)CubeRegion2|(% style="width:137px" %)(% style="color:#2980b9" %)FREQ|(% style="width:183px" %)(% style="color:#2980b9" %)M 384 +|(% style="width:137px" %)(% style="color:#2980b9" %)VIS_CTY|(% style="width:183px" %)(% style="color:#2980b9" %)MX, DE 385 +|(% style="width:137px" %)(% style="color:#27ae60" %)OBS_STATUS|(% style="width:183px" %)(% style="color:#27ae60" %)F 377 377 378 378 The problem with this approach is that according to the business rule for Constraints, only one should be specified per Component. Thus, if a software would perform some conflict resolution would end up with empty sets for FREQ and OBS_STATUS (as they do not share any values). 379 379 ... ... @@ -381,21 +381,24 @@ 381 381 382 382 DSD CubeRegion: 383 383 384 -|FREQ|M, Q, A 385 -|VIS_CTY|MX, DE 386 -|OBS_STATUS|A, F 393 +(% style="width:280.294px" %) 394 +|(% style="width:156px" %)(% style="color:#2980b9" %)FREQ|(% style="width:121px" %)(% style="color:#2980b9" %)M, Q, A 395 +|(% style="width:156px" %)(% style="color:#2980b9" %)VIS_CTY|(% style="width:121px" %)(% style="color:#2980b9" %)MX, DE 396 +|(% style="width:156px" %)(% style="color:#27ae60" %)OBS_STATUS|(% style="width:121px" %)(% style="color:#27ae60" %)A, F 387 387 388 388 Dataflow1 CubeRegion: 389 389 390 -|FREQ|Q, A 391 -|VIS_CTY|MX, DE 392 -|OBS_STATUS|F 400 +(% style="width:285.294px" %) 401 +|(% style="width:157px" %)(% style="color:#2980b9" %)FREQ|(% style="width:125px" %)(% style="color:#2980b9" %)Q, A 402 +|(% style="width:157px" %)(% style="color:#2980b9" %)VIS_CTY|(% style="width:125px" %)(% style="color:#2980b9" %)MX, DE 403 +|(% style="width:157px" %)(% style="color:#27ae60" %)OBS_STATUS|(% style="width:125px" %)(% style="color:#27ae60" %)F 393 393 394 394 Dataflow2 CubeRegion: 395 395 396 -|FREQ|M 397 -|VIS_CTY|MX, DE 398 -|OBS_STATUS|A 407 +(% style="width:288.294px" %) 408 +|(% style="width:159px" %)(% style="color:#2980b9" %)FREQ|(% style="width:126px" %)(% style="color:#2980b9" %)M 409 +|(% style="width:159px" %)(% style="color:#2980b9" %)VIS_CTY|(% style="width:126px" %)(% style="color:#2980b9" %)MX, DE 410 +|(% style="width:159px" %)(% style="color:#27ae60" %)OBS_STATUS|(% style="width:126px" %)(% style="color:#27ae60" %)A 399 399 400 400 **Use case 6: A Constraint on allowed values for some Dimensions combined with allowed values for Measures** 401 401 ... ... @@ -403,14 +403,15 @@ 403 403 404 404 This may be expressed with the following DataKeySet: 405 405 406 -|(% rowspan="4" %)Key1|FREQ|M 407 -|VIS_CTY|DE 408 -|UNIT|EUR 409 -|CHOICE|A 410 -|(% rowspan="4" %)Key2|FREQ|Q 411 -|VIS_CTY|MX 412 -|UNIT|USD 413 -|CHOICE|B 418 +(% style="width:404.294px" %) 419 +|(% rowspan="4" style="width:99px" %)(% style="color:#2980b9" %)Key1|(% style="width:153px" %)(% style="color:#2980b9" %)FREQ|(% style="width:149px" %)(% style="color:#2980b9" %)M 420 +|(% style="width:153px" %)(% style="color:#2980b9" %)VIS_CTY|(% style="width:149px" %)(% style="color:#2980b9" %)DE 421 +|(% style="width:153px" %)(% style="color:#27ae60" %)UNIT|(% style="width:149px" %)(% style="color:#27ae60" %)EUR 422 +|(% style="width:153px" %)(% style="color:#e74c3c" %)CHOICE|(% style="width:149px" %)(% style="color:#e74c3c" %)A 423 +|(% rowspan="4" style="width:99px" %)(% style="color:#2980b9" %)Key2|(% style="width:153px" %)(% style="color:#2980b9" %)FREQ|(% style="width:149px" %)(% style="color:#2980b9" %)Q 424 +|(% style="width:153px" %)(% style="color:#2980b9" %)VIS_CTY|(% style="width:149px" %)(% style="color:#2980b9" %)MX 425 +|(% style="width:153px" %)(% style="color:#27ae60" %)UNIT|(% style="width:149px" %)(% style="color:#27ae60" %)USD 426 +|(% style="width:153px" %)(% style="color:#e74c3c" %)CHOICE|(% style="width:149px" %)(% style="color:#e74c3c" %)B 414 414 415 415 **Use Case 7: A Constraint with wildcards for Codes and removePrefix property** For this example, we assume that the VIS_CTY representation has been prefixed with prefix ‘AREA_’. In this Constraint, we need to remove the prefix. 416 416
- 1750065367824-357.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +xwiki:XWiki.helena - Size
-
... ... @@ -1,0 +1,1 @@ 1 +51.4 KB - Content
- 1750065392163-400.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +xwiki:XWiki.helena - Size
-
... ... @@ -1,0 +1,1 @@ 1 +104.8 KB - Content
- 1750065461589-995.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +xwiki:XWiki.helena - Size
-
... ... @@ -1,0 +1,1 @@ 1 +43.9 KB - Content