Changes for page Guidelines on coding time transformations in SDMX
Last modified by Artur K. on 2026/05/29 14:28
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Attachments (0 modified, 8 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -43,20 +43,20 @@ 43 43 44 44 **Version**: 1.0, 15 September 2016 45 45 46 -|**Recommended code value**|Recommended code description|Annotation 47 -|**N**|Non transformed|TIMETRANS_PER is always 1, since a non-transformed number covers by definition a single period 48 -|**A**|Average|Moving average, i.e. an operation that preserves the frequency of the series 49 -|**C**|Cumulated sum| 50 -|**D**|Difference| 51 -|**DD**|Difference, second order|A second order difference is the delta of deltas 52 -|**F**|Growth rate, flow over stock| 53 -|**FC**|Contribution to growth, flow over stock| 54 -|**G**|Growth rate| 55 -|**GC**|Contribution to growth| 56 -|**I**|Index|In the usual case, the index is fixed to 100 for a specific reference period, in most cases a year. It is recommended that the DSD contains an additional attribute BASE_PER (type ObservationalTimePeriod), which specifies the reference period of the index. In special cases (e.g. National Accounts chain linking), the index is fixed to a value different to 100 in the reference year. In these cases the BASE_PER attribute is even more important. 57 -|**LA**|Annualised levels|This relates to stock versus flow series. For example, many countries publish their Quarterly National Accounts (QNA) at quarterly level, which means that annual Gross Domestic Product (GDP) is the sum of the four quarters, whereas some countries publish their QNA at annual level (e.g. US), which means that annual GDP is the average of the four quarters. In order to present quarterly data in comparable levels across countries and to derive zone aggregates, quarterly data expressed at quarterly levels are “transformed” to annual levels (i.e. multiplied by four) and have this code. 58 -|**S**|Shifted|The time series was moved back or forth in time. This may for instance be used when non-calendar year series are aligned to the calendar year using certain estimation formulas. 59 -|**_O**|Other transformation|This code is taken from the guidelines on generic codes, specifying "Other". In that context it should be used if more complex transformations are applied. An explanation of the transformation or a transformation script should be given in a comment field. 46 +|**Recommended code value**|(% style="width:309px" %)Recommended code description|(% style="width:1262px" %)Annotation 47 +|**N**|(% style="width:309px" %)Non transformed|(% style="width:1262px" %)TIMETRANS_PER is always 1, since a non-transformed number covers by definition a single period 48 +|**A**|(% style="width:309px" %)Average|(% style="width:1262px" %)Moving average, i.e. an operation that preserves the frequency of the series 49 +|**C**|(% style="width:309px" %)Cumulated sum|(% style="width:1262px" %) 50 +|**D**|(% style="width:309px" %)Difference|(% style="width:1262px" %) 51 +|**DD**|(% style="width:309px" %)Difference, second order|(% style="width:1262px" %)A second order difference is the delta of deltas 52 +|**F**|(% style="width:309px" %)Growth rate, flow over stock|(% style="width:1262px" %) 53 +|**FC**|(% style="width:309px" %)Contribution to growth, flow over stock|(% style="width:1262px" %) 54 +|**G**|(% style="width:309px" %)Growth rate|(% style="width:1262px" %) 55 +|**GC**|(% style="width:309px" %)Contribution to growth|(% style="width:1262px" %) 56 +|**I**|(% style="width:309px" %)Index|(% style="width:1262px" %)In the usual case, the index is fixed to 100 for a specific reference period, in most cases a year. It is recommended that the DSD contains an additional attribute BASE_PER (type ObservationalTimePeriod), which specifies the reference period of the index. In special cases (e.g. National Accounts chain linking), the index is fixed to a value different to 100 in the reference year. In these cases the BASE_PER attribute is even more important. 57 +|**LA**|(% style="width:309px" %)Annualised levels|(% style="width:1262px" %)This relates to stock versus flow series. For example, many countries publish their Quarterly National Accounts (QNA) at quarterly level, which means that annual Gross Domestic Product (GDP) is the sum of the four quarters, whereas some countries publish their QNA at annual level (e.g. US), which means that annual GDP is the average of the four quarters. In order to present quarterly data in comparable levels across countries and to derive zone aggregates, quarterly data expressed at quarterly levels are “transformed” to annual levels (i.e. multiplied by four) and have this code. 58 +|**S**|(% style="width:309px" %)Shifted|(% style="width:1262px" %)The time series was moved back or forth in time. This may for instance be used when non-calendar year series are aligned to the calendar year using certain estimation formulas. 59 +|**_O**|(% style="width:309px" %)Other transformation|(% style="width:1262px" %)This code is taken from the guidelines on generic codes, specifying "Other". In that context it should be used if more complex transformations are applied. An explanation of the transformation or a transformation script should be given in a comment field. 60 60 61 61 == 2.2 Time Transformation Periods == 62 62 ... ... @@ -63,40 +63,25 @@ 63 63 Definition: This concept provides information about the number of periods used for a time-related transformation of the time series. 64 64 65 65 **Concept ID: **The concept ID is TIMETRANS_PER. 66 - 67 67 **Code List Name**: Code list for Time Transformation Periods. 68 - 69 69 **Code List ID:** CL_TIMETRANS_PER. 70 - 71 71 **Established international standard(s) used as input for the code list**: None. 72 72 73 73 **Version**: 1.0, 15 September 2016 74 74 75 -|**Recommended code value**|**Recommended 76 -code description**|**Annotation** 77 -|**1**|One| 78 -|**2**|Two| 79 -|**etc.**|etc.| 72 +(% style="width:1172.96px" %) 73 +|(% style="width:320px" %)**Recommended code value**|(% style="width:408px" %)**Recommended 74 +code description**|(% style="width:442px" %)**Annotation** 75 +|(% style="width:320px" %)**1**|(% style="width:408px" %)One|(% style="width:442px" %) 76 +|(% style="width:320px" %)**2**|(% style="width:408px" %)Two|(% style="width:442px" %) 77 +|(% style="width:320px" %)**etc.**|(% style="width:408px" %)etc.|(% style="width:442px" %) 80 80 81 81 == 2.3 Relation of transformation coding to transformation rules == 82 82 83 83 Transformation can also be expressed with transformation rules using a syntax such as the Validation and Transformation Language (VTL). Following the transformation graph model behind VTL, the transformation coding suggested in this guideline can be seen complementary with using transformation rules in VTL. The idea is that a coded non-transformed time series is transformed using a VTL rule and the result is then coded again with transformation codes for further data exchange. This principle is shown in the graph below: 84 84 83 +[[image:1769510498202-796.png]] 85 85 86 -|((( 87 -Level series 88 -))) 89 - 90 -|((( 91 -Transformed series 92 -))) 93 - 94 -|((( 95 -Transformation rule 96 - 97 -(VTL) 98 -))) 99 - 100 100 Using the two concepts as suggested above for coding the type of transformation applied and the number of periods covered will additionally ensure that the parameters used for the formula are directly used in the coding of the resulting series. Thus no complex mapping is needed. The transformation applied is linked to the transformation type concept and the number of periods used for the calculation is linked to the transformation periods concept. 101 101 102 102 **Example:** ... ... @@ -103,40 +103,40 @@ 103 103 104 104 The formula for a simple annual growth rate can be expressed as follows:{{footnote}}Note: often growth rates are expressed as percentage growth, in which case the value is multiplied with 100%. This is however not relevant for this guideline and is left out for simplicity.{{/footnote}} 105 105 106 - //GT= VT-VT-PVT-P//[[image:file:///C:/Users/axyli/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png]]91 +[[image:1769510529532-579.png]] 107 107 108 - àA growth rate over P years in year T is the difference between the current year value and the value P years ago related to the value P years ago; with G being the growth rate, V being the absolute value, T being the time (year) and P the number of periods.93 +A growth rate over P years in year T is the difference between the current year value and the value P years ago related to the value P years ago; with G being the growth rate, V being the absolute value, T being the time (year) and P the number of periods. 109 109 110 110 The growth rate formula can be expressed in VTL and linked to transformation type G. The year T is linked to the respective year in the time series and the parameter P is linked to the transformation period concept. 111 111 112 112 **Example:** 113 113 114 -|**Year à**|**2010**|**2011**|**2012**|**2013** 115 -|**GDP Level**|500|505|510|505 116 -|**Growth rate, 117 -period on period**| |0.0100|0.0099|-0.0098 118 -|**Formula**| |//GT= V2011-V2011-1V2011-1//[[image:file:///C:/Users/axyli/AppData/Local/Temp/msohtmlclip1/01/clip_image002.png]]|//GT=V2012-V2012-1V2012-1//[[image:file:///C:/Users/axyli/AppData/Local/Temp/msohtmlclip1/01/clip_image003.png]]|//GT=V2013-V2013-1V2013-1//[[image:file:///C:/Users/axyli/AppData/Local/Temp/msohtmlclip1/01/clip_image004.png]]119 -|**Growth rate, 120 -over 2 periods**| | |0.0200|0.0000 121 -|**Formula**| | |//GT= V2012-V2012-2V2012-2//[[image:file:///C:/Users/axyli/AppData/Local/Temp/msohtmlclip1/01/clip_image005.png]]|//GT=V2013-V2013-2V2013-2//[[image:file:///C:/Users/axyli/AppData/Local/Temp/msohtmlclip1/01/clip_image006.png]]99 +|(% style="width:427px" %)**Year à**|(% style="width:230px" %)**2010**|(% style="width:365px" %)**2011**|(% style="width:386px" %)**2012**|(% style="width:322px" %)**2013** 100 +|(% style="width:427px" %)**GDP Level**|(% style="width:230px" %)500|(% style="width:365px" %)505|(% style="width:386px" %)510|(% style="width:322px" %)505 101 +|(% style="width:427px" %)**Growth rate, 102 +period on period**|(% style="width:230px" %) |(% style="width:365px" %)0.0100|(% style="width:386px" %)0.0099|(% style="width:322px" %)-0.0098 103 +|(% style="width:427px" %)**Formula**|(% style="width:230px" %) |(% style="width:365px" %)[[image:1769510625588-573.png]]|(% style="width:386px" %)[[image:1769510654674-828.png]]|(% style="width:322px" %)[[image:1769510676535-250.png]] 104 +|(% style="width:427px" %)**Growth rate, 105 +over 2 periods**|(% style="width:230px" %) |(% style="width:365px" %) |(% style="width:386px" %)0.0200|(% style="width:322px" %)0.0000 106 +|(% style="width:427px" %)**Formula**|(% style="width:230px" %) |(% style="width:365px" %) |(% style="width:386px" %)[[image:1769510701118-480.png]]|(% style="width:322px" %)[[image:1769510718908-350.png]] 122 122 123 123 When looking at the formulas, you can see that the same parameters that are used to call a transformation service can be used to code the resulting series, which makes it very easy for data processing systems to ensure consistency between calculations and coding of results: 124 124 125 -|**Year à**|2011|(% rowspan="4" %)(((110 +|**Year **→|2011|(% rowspan="4" %)((( 126 126 **Transformed series:** 127 127 128 -REF_YEAR à2011113 +REF_YEAR → 2011 129 129 130 -OBS_VALUE à0.0100115 +OBS_VALUE → 0.0100 131 131 132 -TRANS_TYPE àG (Formula / VTL function)117 +TRANS_TYPE → G (Formula / VTL function) 133 133 134 -TRANS_PER à1119 +TRANS_PER → 1 135 135 ))) 136 136 |**GDP Level**|505 137 137 |**Growth rate, 138 138 period on period**|0.0100 139 -|**Formula**| //GT= V2011-V2011-1V2011-1//[[image:file:///C:/Users/axyli/AppData/Local/Temp/msohtmlclip1/01/clip_image007.png]]124 +|**Formula**|[[image:1769510755278-324.png]] 140 140 141 141 This is especially useful when only transformed series should be exchanged and level series or transformations are not subject to exchange. An example could be GDP growth rates, where for early estimates often level series are still under embargo, whereas growth rates are publishable. 142 142
- 1769510498202-796.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +xwiki:XWiki.helena - Size
-
... ... @@ -1,0 +1,1 @@ 1 +9.0 KB - Content
- 1769510529532-579.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +xwiki:XWiki.helena - Size
-
... ... @@ -1,0 +1,1 @@ 1 +1.8 KB - Content
- 1769510625588-573.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +xwiki:XWiki.helena - Size
-
... ... @@ -1,0 +1,1 @@ 1 +1.9 KB - Content
- 1769510654674-828.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +xwiki:XWiki.helena - Size
-
... ... @@ -1,0 +1,1 @@ 1 +1.9 KB - Content
- 1769510676535-250.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +xwiki:XWiki.helena - Size
-
... ... @@ -1,0 +1,1 @@ 1 +2.0 KB - Content
- 1769510701118-480.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +xwiki:XWiki.helena - Size
-
... ... @@ -1,0 +1,1 @@ 1 +1.8 KB - Content
- 1769510718908-350.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +xwiki:XWiki.helena - Size
-
... ... @@ -1,0 +1,1 @@ 1 +2.0 KB - Content
- 1769510755278-324.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +xwiki:XWiki.helena - Size
-
... ... @@ -1,0 +1,1 @@ 1 +1.9 KB - Content