metanorma-iso 2.8.0 → 2.8.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -104,7 +104,7 @@
104
104
  <!-- insert space before ( -->
105
105
  <xsl:value-of select="java:replaceAll(java:java.lang.String.new($iso_reference_tmp_),'\(',' \(')"/>
106
106
  </xsl:when>
107
- <xsl:when test="$layoutVersion = '1972'">
107
+ <xsl:when test="$layoutVersion = '1972' or $layoutVersion = '1979'">
108
108
  <xsl:value-of select="java:replaceAll(java:java.lang.String.new($iso_reference_tmp),':','-')"/>
109
109
  </xsl:when>
110
110
  <xsl:when test="$layoutVersion = '1987'">
@@ -385,7 +385,7 @@
385
385
  <xsl:variable name="layoutVersion_">
386
386
  <xsl:choose>
387
387
  <xsl:when test="$document_scheme = ''">2024</xsl:when>
388
- <xsl:when test="$document_scheme = '1951' or $document_scheme = '1972' or $document_scheme = '1987' or $document_scheme = '1989' or $document_scheme = '2012' or $document_scheme = '2013' or $document_scheme = '2024'"><xsl:value-of select="$document_scheme"/></xsl:when>
388
+ <xsl:when test="$document_scheme = '1951' or $document_scheme = '1972' or $document_scheme = '1979' or $document_scheme = '1987' or $document_scheme = '1989' or $document_scheme = '2012' or $document_scheme = '2013' or $document_scheme = '2024'"><xsl:value-of select="$document_scheme"/></xsl:when>
389
389
  <xsl:otherwise>default</xsl:otherwise>
390
390
  </xsl:choose>
391
391
  </xsl:variable>
@@ -407,7 +407,15 @@
407
407
  <xsl:attribute name="font-size">10pt</xsl:attribute>
408
408
  </xsl:if>
409
409
 
410
- <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1987' or $layoutVersion = '1989'">
410
+ <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1979'">
411
+ <xsl:attribute name="font-family">Univers, Times New Roman, Cambria Math, <xsl:value-of select="$font_noto_sans"/></xsl:attribute>
412
+ <xsl:attribute name="font-family-generic">Sans</xsl:attribute>
413
+ <xsl:attribute name="font-size">10pt</xsl:attribute>
414
+ <xsl:if test="$layout_columns = 2">
415
+ <xsl:attribute name="font-size">9pt</xsl:attribute>
416
+ </xsl:if>
417
+ </xsl:if>
418
+ <xsl:if test="$layoutVersion = '1987' or $layoutVersion = '1989'">
411
419
  <xsl:attribute name="font-family">Arial, Times New Roman, Cambria Math, <xsl:value-of select="$font_noto_sans"/></xsl:attribute>
412
420
  <xsl:attribute name="font-family-generic">Sans</xsl:attribute>
413
421
  <xsl:attribute name="font-size">10pt</xsl:attribute>
@@ -1002,7 +1010,7 @@
1002
1010
  <xsl:attribute name="force-page-count"><xsl:value-of select="$force-page-count-preface"/></xsl:attribute> <!-- to prevent empty pages -->
1003
1011
  </xsl:if>
1004
1012
 
1005
- <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1987' or ($layoutVersion = '1989' and $revision_date_num &lt;= 19981231)">
1013
+ <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or ($layoutVersion = '1989' and $revision_date_num &lt;= 19981231)">
1006
1014
  <xsl:attribute name="master-reference">preface-1972-1998</xsl:attribute>
1007
1015
  </xsl:if>
1008
1016
  <xsl:if test="$layoutVersion = '2024'">
@@ -1070,7 +1078,7 @@
1070
1078
  </xsl:if>
1071
1079
 
1072
1080
  <xsl:choose>
1073
- <xsl:when test="$layoutVersion = '1972' or $layoutVersion = '1987' or ($layoutVersion = '1989' and $revision_date_num &lt;= 19981231)"><!-- copyright renders in the footer footer-preface-first_1987-1998--></xsl:when>
1081
+ <xsl:when test="$layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or ($layoutVersion = '1989' and $revision_date_num &lt;= 19981231)"><!-- copyright renders in the footer footer-preface-first_1987-1998--></xsl:when>
1074
1082
  <xsl:otherwise>
1075
1083
 
1076
1084
  <!-- <xsl:if test="/iso:iso-standard/iso:boilerplate/iso:copyright-statement"> -->
@@ -1260,7 +1268,7 @@
1260
1268
  </xsl:if> <!-- $layoutVersion = '1951' -->
1261
1269
 
1262
1270
  <!-- <xsl:choose>
1263
- <xsl:when test="($layoutVersion = '1951' or $layoutVersion = '1972' or $layoutVersion = '1987' or $layoutVersion = '1989') and $layout_columns != 1">
1271
+ <xsl:when test="($layoutVersion = '1951' or $layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or $layoutVersion = '1989') and $layout_columns != 1">
1264
1272
  <xsl:choose>
1265
1273
  <xsl:when test="$doctype = 'amendment'">
1266
1274
  <xsl:variable name="flatxml">
@@ -1272,7 +1280,7 @@
1272
1280
  <xsl:call-template name="processMainSectionsDefault_flatxml"/>
1273
1281
  </xsl:otherwise>
1274
1282
  </xsl:choose>
1275
- </xsl:when> ($layoutVersion = '1972' or $layoutVersion = '1987' or $layoutVersion = '1989') and $layout_columns != 1
1283
+ </xsl:when> ($layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or $layoutVersion = '1989') and $layout_columns != 1
1276
1284
  <xsl:otherwise>
1277
1285
  <xsl:choose>
1278
1286
  <xsl:when test="$doctype = 'amendment'">
@@ -1339,6 +1347,7 @@
1339
1347
  <xsl:when test="$isGenerateTableIF = 'true'"><!-- skip last page --></xsl:when>
1340
1348
  <xsl:when test="$layoutVersion = '1951'"/>
1341
1349
  <xsl:when test="$layoutVersion = '1972'"/>
1350
+ <xsl:when test="$layoutVersion = '1979'"/>
1342
1351
  <xsl:when test="$layoutVersion = '1987' and $doctype = 'technical-report'"><!-- UDC, Keywords and Price renders on the first page for technical-report --></xsl:when>
1343
1352
  <xsl:when test="$layoutVersion = '2024'">
1344
1353
  <xsl:call-template name="insertLastPage_2024"/>
@@ -1502,7 +1511,7 @@
1502
1511
  </fo:page-sequence>
1503
1512
  </xsl:when> <!-- END: $layoutVersion = '1951' -->
1504
1513
 
1505
- <xsl:when test="$layoutVersion = '1972'">
1514
+ <xsl:when test="$layoutVersion = '1972' or $layoutVersion = '1979'">
1506
1515
  <fo:page-sequence master-reference="cover-page_1972" force-page-count="no-force">
1507
1516
  <fo:static-content flow-name="cover-page-footer" font-size="7pt">
1508
1517
  <xsl:call-template name="insertSingleLine"/>
@@ -1565,35 +1574,60 @@
1565
1574
 
1566
1575
  <fo:table-body>
1567
1576
  <fo:table-row height="39mm" display-align="center">
1577
+ <xsl:if test="$layoutVersion = '1972'">
1578
+ <xsl:attribute name="height">42mm</xsl:attribute>
1579
+ <xsl:attribute name="font-family">Univers 59 Ultra Condensed</xsl:attribute>
1580
+ <xsl:attribute name="text-transform">uppercase</xsl:attribute>
1581
+ </xsl:if>
1568
1582
  <fo:table-cell>
1569
- <fo:block font-size="33pt" margin-top="2mm">
1583
+ <fo:block font-size="32pt" margin-top="2mm">
1570
1584
  <xsl:if test="string-length($docnumber) &gt; 4">
1571
- <xsl:attribute name="font-size">30pt</xsl:attribute>
1585
+ <xsl:attribute name="font-size">29pt</xsl:attribute>
1586
+ </xsl:if>
1587
+ <xsl:if test="$layoutVersion = '1972'">
1588
+ <xsl:attribute name="font-size">40pt</xsl:attribute>
1589
+ </xsl:if>
1590
+ <xsl:if test="$layoutVersion = '1979'">
1591
+ <xsl:attribute name="letter-spacing">-0.02em</xsl:attribute>
1572
1592
  </xsl:if>
1573
1593
  <xsl:value-of select="$doctype_localized"/>
1574
1594
  </fo:block>
1575
1595
  </fo:table-cell>
1576
1596
  <fo:table-cell>
1577
1597
  <fo:block font-size="0">
1578
- <xsl:variable name="content-height">27</xsl:variable>
1598
+ <xsl:variable name="content-height">
1599
+ <xsl:choose>
1600
+ <xsl:when test="$layoutVersion = '1972'">33</xsl:when>
1601
+ <xsl:otherwise>27</xsl:otherwise>
1602
+ </xsl:choose>
1603
+ </xsl:variable>
1579
1604
  <fo:external-graphic src="{concat('data:image/png;base64,', normalize-space($Image-ISO-Logo-1972))}" content-height="{$content-height}mm" content-width="scale-to-fit" scaling="uniform" fox:alt-text="Image ISO Logo"/>
1580
1605
  </fo:block>
1581
1606
  </fo:table-cell>
1582
1607
  <fo:table-cell text-align="right">
1583
- <fo:block font-size="34pt" font-weight="bold" margin-top="2mm">
1608
+ <fo:block font-size="34pt" margin-top="2mm">
1609
+ <xsl:if test="$layoutVersion = '1972'">
1610
+ <xsl:attribute name="font-size">38pt</xsl:attribute>
1611
+ </xsl:if>
1584
1612
  <xsl:value-of select="$docnumber"/>
1585
1613
  </fo:block>
1586
1614
  </fo:table-cell>
1587
1615
  </fo:table-row>
1588
1616
  <fo:table-row border-top="2pt solid black" height="4.5mm" display-align="center">
1589
1617
  <fo:table-cell number-columns-spanned="3" font-size="5.6pt" text-align-last="justify">
1590
- <fo:block><xsl:value-of select="$ISO_title_en"/>●<xsl:value-of select="$ISO_title_ru"/>●<xsl:value-of select="$ISO_title_fr"/></fo:block>
1618
+ <!-- <fo:block><xsl:value-of select="$ISO_title_en"/>&#x25cf;<xsl:value-of select="$ISO_title_ru"/>&#x25cf;<xsl:value-of select="$ISO_title_fr"/></fo:block> -->
1619
+ <fo:block>
1620
+ <xsl:value-of select="$ISO_title_en"/>
1621
+ <xsl:call-template name="insertBlackCircle"/>
1622
+ <xsl:value-of select="$ISO_title_ru"/>
1623
+ <xsl:call-template name="insertBlackCircle"/>
1624
+ <xsl:value-of select="$ISO_title_fr"/></fo:block>
1591
1625
  </fo:table-cell>
1592
1626
  </fo:table-row>
1593
1627
  </fo:table-body>
1594
1628
  </fo:table>
1595
1629
 
1596
- <fo:block font-size="16pt" font-weight="bold" margin-top="44mm" margin-bottom="6mm" role="H1">
1630
+ <fo:block font-size="18pt" font-family="Univers" font-weight="bold" margin-top="44mm" margin-bottom="6mm" role="H1">
1597
1631
  <xsl:call-template name="insertTitlesLangMain"/>
1598
1632
  </fo:block>
1599
1633
 
@@ -1615,7 +1649,7 @@
1615
1649
 
1616
1650
  </fo:flow>
1617
1651
  </fo:page-sequence>
1618
- </xsl:when> <!-- END: $layoutVersion = '1972' -->
1652
+ </xsl:when> <!-- END: $layoutVersion = '1972' or $layoutVersion = '1979' -->
1619
1653
  <xsl:when test="$layoutVersion = '1987' and $doctype = 'technical-report'"><!-- see preface pages below --></xsl:when>
1620
1654
  <xsl:when test="$layoutVersion = '1987'">
1621
1655
  <fo:page-sequence master-reference="cover-page_1987" force-page-count="no-force">
@@ -2914,7 +2948,12 @@
2914
2948
 
2915
2949
  <fo:block-container font-weight="bold">
2916
2950
 
2917
- <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1987' or ($layoutVersion = '1989' and $revision_date_num &lt;= 19981231)">
2951
+ <xsl:if test="$layoutVersion = '1987'">
2952
+ <xsl:attribute name="font-size">9pt</xsl:attribute>
2953
+ <xsl:attribute name="font-weight">normal</xsl:attribute>
2954
+ </xsl:if>
2955
+
2956
+ <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or ($layoutVersion = '1989' and $revision_date_num &lt;= 19981231)">
2918
2957
  <xsl:attribute name="margin-top">62mm</xsl:attribute>
2919
2958
  </xsl:if>
2920
2959
 
@@ -2928,14 +2967,25 @@
2928
2967
  <xsl:if test="count(*) = 1 and *[local-name() = 'title']"> <!-- if there isn't user ToC -->
2929
2968
 
2930
2969
  <!-- <xsl:if test="$debug = 'true'">
2931
- <redirect:write file="contents_{java:getTime(java:java.util.Date.new())}.xml">
2970
+ <redirect:write file="contents_.xml">
2932
2971
  <xsl:copy-of select="$contents"/>
2933
2972
  </redirect:write>
2934
2973
  </xsl:if> -->
2935
2974
 
2936
2975
  <xsl:variable name="margin-left">12</xsl:variable>
2976
+
2937
2977
  <xsl:for-each select="$contents//item[@display = 'true']"><!-- [not(@level = 2 and starts-with(@section, '0'))] skip clause from preface -->
2938
2978
 
2979
+ <xsl:if test="$layoutVersion = '1987'">
2980
+ <xsl:if test="@type = 'annex' and @level = 1 and not(preceding-sibling::item[@type = 'annex' and @level = 1])">
2981
+ <fo:block role="TOCI" font-weight="bold" margin-top="12pt" margin-bottom="6pt" keep-with-next="always">
2982
+ <xsl:call-template name="getLocalizedString">
2983
+ <xsl:with-param name="key">Annex.pl</xsl:with-param>
2984
+ </xsl:call-template>
2985
+ </fo:block>
2986
+ </xsl:if>
2987
+ </xsl:if>
2988
+
2939
2989
  <fo:block role="TOCI">
2940
2990
  <xsl:if test="@level = 1">
2941
2991
  <xsl:attribute name="margin-top">5pt</xsl:attribute>
@@ -2944,17 +2994,35 @@
2944
2994
  <xsl:attribute name="margin-top">-0.7pt</xsl:attribute>
2945
2995
  </xsl:if>
2946
2996
 
2997
+ <xsl:if test="$layoutVersion = '1987'">
2998
+ <xsl:if test="@type = 'section'">
2999
+ <xsl:attribute name="margin-top">12pt</xsl:attribute>
3000
+ </xsl:if>
3001
+ <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
3002
+ </xsl:if>
3003
+
2947
3004
  <fo:basic-link internal-destination="{@id}" fox:alt-text="{@section} {title}"> <!-- link at this level needs for PDF structure tags -->
2948
3005
 
2949
3006
  <fo:list-block role="SKIP">
2950
3007
  <xsl:attribute name="margin-left"><xsl:value-of select="$margin-left * (@level - 1)"/>mm</xsl:attribute>
3008
+
3009
+ <xsl:if test="$layoutVersion = '1987'">
3010
+ <xsl:attribute name="margin-left">0</xsl:attribute>
3011
+ <xsl:if test="@level &gt;= 3">
3012
+ <xsl:attribute name="margin-left"><xsl:value-of select="$margin-left div 2 * 1.2 * (@level - 2)"/>mm</xsl:attribute>
3013
+ </xsl:if>
3014
+ </xsl:if>
3015
+
2951
3016
  <xsl:if test="@level &gt;= 2 or @type = 'annex'">
2952
3017
  <xsl:attribute name="font-weight">normal</xsl:attribute>
2953
3018
  </xsl:if>
2954
3019
  <xsl:variable name="provisional_distance_between_starts">
2955
3020
  <xsl:choose>
2956
3021
  <!-- skip 0 section without subsections -->
3022
+ <xsl:when test="$layoutVersion = '1987' and @level &gt;= 3"><xsl:value-of select="$margin-left div 2 * 1.2"/></xsl:when>
2957
3023
  <xsl:when test="@level &gt;= 3"><xsl:value-of select="$margin-left * 1.2"/></xsl:when>
3024
+ <xsl:when test="$layoutVersion = '1987' and @type = 'section'">0</xsl:when>
3025
+ <xsl:when test="$layoutVersion = '1987' and @section != ''"><xsl:value-of select="$margin-left div 2 * 1.2"/></xsl:when>
2958
3026
  <xsl:when test="@section != ''"><xsl:value-of select="$margin-left"/></xsl:when>
2959
3027
  <xsl:otherwise>0</xsl:otherwise>
2960
3028
  </xsl:choose>
@@ -2965,6 +3033,7 @@
2965
3033
  <!-- refine the distance depends on the section string length -->
2966
3034
  <xsl:attribute name="provisional-distance-between-starts">
2967
3035
  <xsl:choose>
3036
+ <xsl:when test="$layoutVersion = '1987' and @type = 'section'">0</xsl:when>
2968
3037
  <xsl:when test="$section_length_mm &gt; $provisional_distance_between_starts">
2969
3038
  <xsl:value-of select="concat($section_length_mm, 'mm')"/>
2970
3039
  </xsl:when>
@@ -2977,13 +3046,29 @@
2977
3046
  <fo:list-item role="SKIP">
2978
3047
  <fo:list-item-label end-indent="label-end()" role="SKIP">
2979
3048
  <fo:block role="SKIP">
2980
- <xsl:value-of select="@section"/>
3049
+ <xsl:if test="$layoutVersion = '1987'">
3050
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
3051
+ </xsl:if>
3052
+ <xsl:choose>
3053
+ <xsl:when test="$layoutVersion = '1987' and @type = 'section'"/>
3054
+ <xsl:otherwise>
3055
+ <xsl:value-of select="@section"/>
3056
+ </xsl:otherwise>
3057
+ </xsl:choose>
2981
3058
  </fo:block>
2982
3059
  </fo:list-item-label>
2983
3060
  <fo:list-item-body start-indent="body-start()" role="SKIP">
2984
3061
  <fo:block text-align-last="justify" margin-left="12mm" text-indent="-12mm" role="SKIP">
3062
+
3063
+ <xsl:if test="$layoutVersion = '1987' and @type = 'section'">
3064
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
3065
+ </xsl:if>
3066
+
2985
3067
  <fo:basic-link internal-destination="{@id}" fox:alt-text="{title}" role="SKIP">
2986
3068
 
3069
+ <xsl:if test="$layoutVersion = '1987' and @type = 'section'">
3070
+ <xsl:value-of select="concat(@section, ' ')"/>
3071
+ </xsl:if>
2987
3072
  <xsl:apply-templates select="title"/>
2988
3073
 
2989
3074
  <fo:inline keep-together.within-line="always" role="SKIP">
@@ -2992,6 +3077,9 @@
2992
3077
  <xsl:if test="@level = 1 and @type = 'annex'">
2993
3078
  <xsl:attribute name="font-weight">bold</xsl:attribute>
2994
3079
  </xsl:if>
3080
+ <xsl:if test="$layoutVersion = '1987'">
3081
+ <xsl:attribute name="font-weight">normal</xsl:attribute>
3082
+ </xsl:if>
2995
3083
  <fo:wrapper role="artifact">
2996
3084
  <fo:page-number-citation ref-id="{@id}"/>
2997
3085
  </fo:wrapper>
@@ -3040,6 +3128,9 @@
3040
3128
  <xsl:attribute name="margin-top">0</xsl:attribute>
3041
3129
  </xsl:if>
3042
3130
  <fo:inline font-size="16pt" font-weight="bold" role="SKIP">
3131
+ <xsl:if test="$layoutVersion = '1987'">
3132
+ <xsl:attribute name="font-size">14pt</xsl:attribute>
3133
+ </xsl:if>
3043
3134
  <!-- <xsl:if test="$layoutVersion = '2024'">
3044
3135
  <xsl:attribute name="font-size">15.3pt</xsl:attribute>
3045
3136
  </xsl:if> -->
@@ -3052,6 +3143,9 @@
3052
3143
  <fo:inline keep-together.within-line="always" role="SKIP">
3053
3144
  <fo:leader leader-pattern="space"/>
3054
3145
  <fo:inline font-weight="normal" font-size="10pt" role="SKIP">
3146
+ <xsl:if test="$layoutVersion = '1987'">
3147
+ <xsl:attribute name="font-size">8pt</xsl:attribute>
3148
+ </xsl:if>
3055
3149
  <!-- <xsl:if test="$layoutVersion = '2024'">
3056
3150
  <xsl:attribute name="font-size">9.6pt</xsl:attribute>
3057
3151
  </xsl:if> -->
@@ -3140,7 +3234,7 @@
3140
3234
  <xsl:value-of select="$part-word"/>
3141
3235
  <xsl:apply-templates/>
3142
3236
  </xsl:when>
3143
- <xsl:when test="$layoutVersion = '1972'">
3237
+ <xsl:when test="$layoutVersion = '1972' or $layoutVersion = '1979'">
3144
3238
  <fo:block font-weight="bold" role="SKIP">
3145
3239
  <xsl:value-of select="$part-word"/>
3146
3240
  <xsl:text> </xsl:text>
@@ -3162,7 +3256,7 @@
3162
3256
  <xsl:otherwise>
3163
3257
  <!-- <xsl:value-of select="$linebreak"/> -->
3164
3258
  <xsl:choose>
3165
- <xsl:when test="$layoutVersion = '1972'"/>
3259
+ <xsl:when test="$layoutVersion = '1972' or $layoutVersion = '1979'"/>
3166
3260
  <xsl:otherwise>
3167
3261
  <fo:block font-size="1pt" margin-top="5pt" role="SKIP"> </fo:block>
3168
3262
  </xsl:otherwise>
@@ -3174,8 +3268,8 @@
3174
3268
  </xsl:if>
3175
3269
  <xsl:choose>
3176
3270
  <xsl:when test="$layoutVersion = '1951'"/>
3177
- <xsl:when test="$layoutVersion = '1972' and $isMainLang = 'true'"/>
3178
- <xsl:when test="$layoutVersion = '1972' and $isMainLang = 'false'">
3271
+ <xsl:when test="($layoutVersion = '1972' or $layoutVersion = '1979') and $isMainLang = 'true'"/>
3272
+ <xsl:when test="($layoutVersion = '1972' or $layoutVersion = '1979') and $isMainLang = 'false'">
3179
3273
  <fo:inline font-weight="normal"><xsl:apply-templates/></fo:inline>
3180
3274
  </xsl:when>
3181
3275
  <xsl:when test="$layoutVersion = '1987'">
@@ -3233,7 +3327,7 @@
3233
3327
  <xsl:attribute name="font-size">11pt</xsl:attribute>
3234
3328
  </xsl:if>
3235
3329
  </xsl:if>
3236
- <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1987' or $layoutVersion = '1989'">
3330
+ <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or $layoutVersion = '1989'">
3237
3331
  <xsl:attribute name="font-size">16pt</xsl:attribute>
3238
3332
  <xsl:attribute name="span">all</xsl:attribute>
3239
3333
  <xsl:attribute name="margin-bottom">40pt</xsl:attribute>
@@ -3252,7 +3346,7 @@
3252
3346
  <xsl:template match="iso:sections//iso:p[@class = 'zzSTDTitle1']/iso:span[@class = 'nonboldtitle']" priority="3">
3253
3347
  <!-- Example: <span class="nonboldtitle">Part 1:</span> -->
3254
3348
  <xsl:choose>
3255
- <xsl:when test="$layoutVersion = '1972'">
3349
+ <xsl:when test="$layoutVersion = '1972' or $layoutVersion = '1979'">
3256
3350
  <fo:inline font-weight="bold" role="SKIP">
3257
3351
  <xsl:apply-templates/>
3258
3352
  </fo:inline>
@@ -3269,7 +3363,7 @@
3269
3363
  <!-- Example: <p class="zzSTDTitle2" displayorder="3">AMENDMENT 1: Mass fraction of extraneous matter, milled rice (nonglutinous), sample dividers and recommendations relating to storage and transport conditions</p> -->
3270
3364
  <xsl:if test="$doctype = 'amendment'">
3271
3365
  <fo:block font-size="18pt" margin-top="12pt" margin-bottom="20pt" margin-right="0mm" font-weight="normal" line-height="1.1" role="H1">
3272
- <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1987' or $layoutVersion = '1989'">
3366
+ <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or $layoutVersion = '1989'">
3273
3367
  <xsl:attribute name="font-size">16pt</xsl:attribute>
3274
3368
  </xsl:if>
3275
3369
  <!-- <xsl:if test="$layoutVersion = '2024'">
@@ -3307,6 +3401,7 @@
3307
3401
  <xsl:variable name="type">
3308
3402
  <xsl:choose>
3309
3403
  <xsl:when test="local-name() = 'indexsect'">index</xsl:when>
3404
+ <xsl:when test="@type = 'section'"><xsl:value-of select="@type"/></xsl:when>
3310
3405
  <xsl:otherwise><xsl:value-of select="local-name()"/></xsl:otherwise>
3311
3406
  </xsl:choose>
3312
3407
  </xsl:variable>
@@ -3345,7 +3440,11 @@
3345
3440
  <xsl:attribute name="level">1</xsl:attribute>
3346
3441
  </xsl:if>
3347
3442
  <title>
3348
- <xsl:apply-templates select="xalan:nodeset($title)" mode="contents_item"/>
3443
+ <xsl:apply-templates select="xalan:nodeset($title)" mode="contents_item">
3444
+ <xsl:with-param name="element">
3445
+ <xsl:if test="$level = 1"><xsl:value-of select="$root"/></xsl:if>
3446
+ </xsl:with-param>
3447
+ </xsl:apply-templates>
3349
3448
  </title>
3350
3449
  <xsl:if test="$type != 'index'">
3351
3450
  <xsl:apply-templates mode="contents"/>
@@ -3356,6 +3455,35 @@
3356
3455
 
3357
3456
  <xsl:template match="iso:p | iso:termsource | iso:termnote" mode="contents"/>
3358
3457
 
3458
+ <xsl:template match="/" mode="contents_item">
3459
+ <xsl:param name="element"/>
3460
+ <xsl:apply-templates mode="contents_item">
3461
+ <xsl:with-param name="element" select="$element"/>
3462
+ </xsl:apply-templates>
3463
+ </xsl:template>
3464
+
3465
+ <xsl:template match="*[local-name() = 'strong']/text()" mode="contents_item">
3466
+ <xsl:param name="element"/>
3467
+ <xsl:choose>
3468
+ <xsl:when test="$layoutVersion = '1987' and $element = 'annex' and not(../preceding-sibling::node())"> <!-- omit Annex -->
3469
+ <xsl:value-of select="substring-after(., ' ')"/><xsl:text>  </xsl:text>
3470
+ </xsl:when>
3471
+ <xsl:otherwise>
3472
+ <xsl:value-of select="."/>
3473
+ </xsl:otherwise>
3474
+ </xsl:choose>
3475
+ </xsl:template>
3476
+
3477
+ <xsl:template match="*[local-name() = 'span'][@class = 'obligation']/text()" mode="contents_item">
3478
+ <xsl:param name="element"/>
3479
+ <xsl:choose>
3480
+ <xsl:when test="$layoutVersion = '1987' and $element = 'annex'"/>
3481
+ <xsl:otherwise>
3482
+ <xsl:value-of select="."/>
3483
+ </xsl:otherwise>
3484
+ </xsl:choose>
3485
+ </xsl:template>
3486
+
3359
3487
  <!-- ============================= -->
3360
3488
  <!-- ============================= -->
3361
3489
 
@@ -3436,7 +3564,7 @@
3436
3564
  </xsl:otherwise>
3437
3565
  </xsl:choose>
3438
3566
  </xsl:when>
3439
- <xsl:when test="$layoutVersion = '1972' or $layoutVersion = '1987'">
3567
+ <xsl:when test="$layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987'">
3440
3568
  <xsl:if test="@id = 'boilerplate-place'">
3441
3569
  <fo:block margin-top="6pt"><xsl:if test="$layoutVersion = '1987' and $doctype = 'technical-report'"><xsl:attribute name="margin-top">0</xsl:attribute></xsl:if> </fo:block>
3442
3570
  </xsl:if>
@@ -3473,7 +3601,7 @@
3473
3601
  <xsl:attribute name="line-height">1.1</xsl:attribute>
3474
3602
  <!-- <xsl:attribute name="margin-bottom">52pt</xsl:attribute> -->
3475
3603
  </xsl:if>
3476
- <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1987' or $layoutVersion = '1989'">
3604
+ <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or $layoutVersion = '1989'">
3477
3605
  <xsl:attribute name="span">all</xsl:attribute>
3478
3606
  </xsl:if>
3479
3607
  <xsl:apply-templates/>
@@ -3491,7 +3619,7 @@
3491
3619
  </xsl:when>
3492
3620
  <xsl:otherwise>
3493
3621
  <fo:block font-size="16pt" font-weight="bold" text-align="center" margin-top="6pt" margin-bottom="36pt" keep-with-next="always" role="H1">
3494
- <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1987' or $layoutVersion = '1989'">
3622
+ <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or $layoutVersion = '1989'">
3495
3623
  <xsl:attribute name="font-size">14pt</xsl:attribute>
3496
3624
  <xsl:attribute name="span">all</xsl:attribute>
3497
3625
  </xsl:if>
@@ -3522,6 +3650,12 @@
3522
3650
  <xsl:when test="$level &gt;= 3">9pt</xsl:when> -->
3523
3651
  </xsl:choose>
3524
3652
  </xsl:when>
3653
+ <xsl:when test="$layoutVersion = '1972'">
3654
+ <xsl:choose>
3655
+ <xsl:when test="$level = 1">9pt</xsl:when>
3656
+ <xsl:otherwise>9pt</xsl:otherwise>
3657
+ </xsl:choose>
3658
+ </xsl:when>
3525
3659
  <xsl:when test="$layoutVersion = '1987' and $doctype = 'technical-report'">
3526
3660
  <xsl:choose>
3527
3661
  <xsl:when test="$level = 1">11pt</xsl:when>
@@ -3529,7 +3663,7 @@
3529
3663
  <xsl:when test="$level &gt;= 3">9pt</xsl:when>
3530
3664
  </xsl:choose>
3531
3665
  </xsl:when>
3532
- <xsl:when test="$layoutVersion = '1972' or $layoutVersion = '1987' or $layoutVersion = '1989'">
3666
+ <xsl:when test="$layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or $layoutVersion = '1989'">
3533
3667
  <xsl:choose>
3534
3668
  <xsl:when test="ancestor::iso:annex and $level = 2">12pt</xsl:when>
3535
3669
  <xsl:when test="ancestor::iso:annex and $level = 3">11pt</xsl:when>
@@ -3595,7 +3729,7 @@
3595
3729
 
3596
3730
  <xsl:element name="{$element-name}">
3597
3731
 
3598
- <xsl:if test="$layoutVersion = '1951' or $layoutVersion = '1972' or $layoutVersion = '1987' or $layoutVersion = '1989'">
3732
+ <xsl:if test="$layoutVersion = '1951' or $layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or $layoutVersion = '1989'">
3599
3733
  <!-- copy @id from empty preceding clause -->
3600
3734
  <xsl:copy-of select="preceding-sibling::*[1][local-name() = 'clause' and count(node()) = 0]/@id"/>
3601
3735
  </xsl:if>
@@ -3613,7 +3747,8 @@
3613
3747
  <xsl:when test="$layoutVersion = '1951' and ancestor::iso:preface and $level = 1">20mm</xsl:when>
3614
3748
  <xsl:when test="ancestor::iso:introduction and $level &gt;= 2 and ../preceding-sibling::iso:clause">30pt</xsl:when>
3615
3749
  <xsl:when test="$layoutVersion = '1987' and $doctype = 'technical-report' and ancestor::iso:preface and $level = 1">10mm</xsl:when>
3616
- <xsl:when test="($layoutVersion = '1972' or $layoutVersion = '1987' or ($layoutVersion = '1989' and $revision_date_num &lt;= 19981231)) and ancestor::iso:preface and $level = 1">62mm</xsl:when>
3750
+ <xsl:when test="($layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or ($layoutVersion = '1989' and $revision_date_num &lt;= 19981231)) and ancestor::iso:preface and $level = 1">62mm</xsl:when>
3751
+ <xsl:when test="$layoutVersion = '1972' and $level = 1">30pt</xsl:when>
3617
3752
  <xsl:when test="$layoutVersion = '1989' and ancestor::iso:preface and $level = 1">56pt</xsl:when>
3618
3753
  <xsl:when test="$layoutVersion = '2024' and ancestor::iso:preface and $level = 1">0pt</xsl:when>
3619
3754
  <xsl:when test="ancestor::iso:preface">8pt</xsl:when>
@@ -3653,6 +3788,19 @@
3653
3788
  </xsl:if>
3654
3789
  </xsl:if>
3655
3790
  </xsl:if>
3791
+
3792
+ <xsl:if test="$layoutVersion = '1972'">
3793
+ <xsl:if test="$level = 1">
3794
+ <xsl:attribute name="text-transform">uppercase</xsl:attribute>
3795
+ </xsl:if>
3796
+ </xsl:if>
3797
+
3798
+ <xsl:if test="$layoutVersion = '1987' and ../@type = 'section'">
3799
+ <xsl:attribute name="font-size">14pt</xsl:attribute>
3800
+ <xsl:attribute name="text-align">center</xsl:attribute>
3801
+ <xsl:attribute name="margin-bottom">18pt</xsl:attribute>
3802
+ <xsl:attribute name="keep-with-next">always</xsl:attribute>
3803
+ </xsl:if>
3656
3804
  <xsl:if test="$element-name = 'fo:inline'">
3657
3805
  <xsl:choose>
3658
3806
  <xsl:when test="$lang = 'zh'">
@@ -3670,6 +3818,62 @@
3670
3818
  <xsl:with-param name="letter-spacing" select="0.65"/>
3671
3819
  </xsl:call-template>
3672
3820
  </xsl:when>
3821
+
3822
+ <xsl:when test="$layoutVersion = '1972' and ($level = 3 or $level = 4)">
3823
+ <fo:inline><xsl:apply-templates select="*[local-name() = 'tab'][1]/preceding-sibling::node()"/></fo:inline>
3824
+ <xsl:apply-templates select="*[local-name() = 'tab'][1]"/>
3825
+ <xsl:choose>
3826
+ <xsl:when test="$level = 3">
3827
+ <fo:inline font-weight="normal" font-style="italic"><xsl:apply-templates select="*[local-name() = 'tab'][1]/following-sibling::node()"/></fo:inline>
3828
+ </xsl:when>
3829
+ <xsl:otherwise> <!-- i.e. $level = 4 -->
3830
+
3831
+ <!-- small caps text with letter spacing -->
3832
+ <fo:inline font-weight="normal">
3833
+ <xsl:for-each select="*[local-name() = 'tab'][1]/following-sibling::node()">
3834
+ <xsl:choose>
3835
+ <xsl:when test="self::text()">
3836
+ <fo:inline font-size="70%" letter-spacing="0.1em">
3837
+ <xsl:variable name="textSmallCaps">
3838
+ <xsl:call-template name="recursiveSmallCaps">
3839
+ <xsl:with-param name="text" select="."/>
3840
+ <xsl:with-param name="ratio" select="0.70"/>
3841
+ <xsl:with-param name="letter-spacing" select="'0.1em'"/>
3842
+ </xsl:call-template>
3843
+ </xsl:variable>
3844
+ <xsl:for-each select="xalan:nodeset($textSmallCaps)/node()">
3845
+ <xsl:choose>
3846
+ <xsl:when test="self::fo:inline">
3847
+ <xsl:copy>
3848
+ <xsl:copy-of select="@*"/>
3849
+ <xsl:call-template name="add-letter-spacing">
3850
+ <xsl:with-param name="text" select="."/>
3851
+ <xsl:with-param name="letter-spacing">0.2</xsl:with-param>
3852
+ </xsl:call-template>
3853
+ </xsl:copy>
3854
+ </xsl:when>
3855
+ <xsl:otherwise>
3856
+ <xsl:call-template name="add-letter-spacing">
3857
+ <xsl:with-param name="text" select="."/>
3858
+ <xsl:with-param name="letter-spacing">0.2</xsl:with-param>
3859
+ </xsl:call-template>
3860
+ </xsl:otherwise>
3861
+ </xsl:choose>
3862
+ </xsl:for-each>
3863
+ </fo:inline>
3864
+ </xsl:when>
3865
+ <xsl:otherwise>
3866
+ <xsl:apply-templates select="."/>
3867
+ </xsl:otherwise>
3868
+ </xsl:choose>
3869
+ </xsl:for-each>
3870
+ </fo:inline> <!-- END: small caps text with letter spacing -->
3871
+
3872
+ </xsl:otherwise> <!-- END: $level = 4 -->
3873
+ </xsl:choose>
3874
+
3875
+ </xsl:when>
3876
+
3673
3877
  <xsl:otherwise>
3674
3878
  <xsl:apply-templates/>
3675
3879
  </xsl:otherwise>
@@ -3688,7 +3892,7 @@
3688
3892
 
3689
3893
  <xsl:template match="iso:title[../@inline-header = 'true'][following-sibling::*[1][local-name() = 'p']]" priority="3">
3690
3894
  <xsl:choose>
3691
- <xsl:when test="($layoutVersion = '1951' or $layoutVersion = '1972' or $layoutVersion = '1987' or $layoutVersion = '1989') and $layout_columns != 1"/> <!-- don't show 'title' with inline-header='true' if next element is 'p' -->
3895
+ <xsl:when test="($layoutVersion = '1951' or $layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or $layoutVersion = '1989') and $layout_columns != 1"/> <!-- don't show 'title' with inline-header='true' if next element is 'p' -->
3692
3896
  <xsl:otherwise>
3693
3897
  <xsl:call-template name="title"/>
3694
3898
  </xsl:otherwise>
@@ -3712,7 +3916,7 @@
3712
3916
 
3713
3917
  <xsl:template match="*[local-name() = 'clause'][normalize-space() != '' or *[local-name() = 'figure']]" priority="2">
3714
3918
  <xsl:choose>
3715
- <xsl:when test="($layoutVersion = '1951' or $layoutVersion = '1972' or $layoutVersion = '1987' or $layoutVersion = '1989') and local-name() = 'clause' and count(node()) = 0 and following-sibling::*[1][local-name() = 'title' and not(@id)]"/> <!-- @id will be added to title -->
3919
+ <xsl:when test="($layoutVersion = '1951' or $layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or $layoutVersion = '1989') and local-name() = 'clause' and count(node()) = 0 and following-sibling::*[1][local-name() = 'title' and not(@id)]"/> <!-- @id will be added to title -->
3716
3920
  <xsl:otherwise>
3717
3921
  <xsl:call-template name="template_clause"/>
3718
3922
  </xsl:otherwise>
@@ -3761,6 +3965,7 @@
3761
3965
  <xsl:if test="@id">
3762
3966
  <xsl:attribute name="id"><xsl:value-of select="@id"/></xsl:attribute>
3763
3967
  </xsl:if>
3968
+
3764
3969
  <!-- bookmarks only in paragraph -->
3765
3970
  <xsl:if test="count(iso:bookmark) != 0 and count(*) = count(iso:bookmark) and normalize-space() = ''">
3766
3971
  <xsl:attribute name="font-size">0</xsl:attribute>
@@ -3796,7 +4001,7 @@
3796
4001
  </xsl:if>
3797
4002
 
3798
4003
  <!-- put inline title in the first paragraph -->
3799
- <xsl:if test="($layoutVersion = '1951' or $layoutVersion = '1972' or $layoutVersion = '1987' or $layoutVersion = '1989') and $layout_columns != 1">
4004
+ <xsl:if test="($layoutVersion = '1951' or $layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or $layoutVersion = '1989') and $layout_columns != 1">
3800
4005
  <!-- <xsl:if test="preceding-sibling::*[1]/@inline-header = 'true' and preceding-sibling::*[1][self::iso:title]"> -->
3801
4006
  <xsl:if test="ancestor::*[1]/@inline-header = 'true' and preceding-sibling::*[1][self::iso:title]">
3802
4007
  <xsl:attribute name="space-before">0pt</xsl:attribute>
@@ -3881,6 +4086,32 @@
3881
4086
  </xsl:choose>
3882
4087
  </xsl:template>
3883
4088
 
4089
+ <xsl:template match="*[local-name() = 'note']/*[local-name() = 'name']/text()" priority="5">
4090
+ <xsl:choose>
4091
+ <xsl:when test="$layoutVersion = '1987' and not(translate(.,'0123456789','') = .)"> <!-- NOTE with number -->
4092
+ <xsl:value-of select="substring-after(., ' ')"/>
4093
+ </xsl:when>
4094
+ <xsl:otherwise><xsl:value-of select="."/></xsl:otherwise>
4095
+ </xsl:choose>
4096
+ </xsl:template>
4097
+
4098
+ <xsl:template match="iso:clause[@type = 'section']" priority="3">
4099
+ <xsl:choose>
4100
+ <!-- skip empty clause after templates mode="update_xml_step_move_pagebreak" -->
4101
+ <xsl:when test="not(iso:title) and normalize-space() = ''"/>
4102
+ <xsl:otherwise>
4103
+ <xsl:if test="preceding-sibling::iso:clause[@type = 'section']">
4104
+ <fo:block break-after="page"/>
4105
+ </xsl:if>
4106
+ <fo:block span="all">
4107
+ <xsl:copy-of select="@id"/>
4108
+ <xsl:apply-templates select="iso:title"/>
4109
+ </fo:block>
4110
+ <xsl:apply-templates select="*[not(self::iso:title)]"/>
4111
+ </xsl:otherwise>
4112
+ </xsl:choose>
4113
+ </xsl:template>
4114
+
3884
4115
  <!-- =================== -->
3885
4116
  <!-- Index processing -->
3886
4117
  <!-- =================== -->
@@ -4006,7 +4237,7 @@
4006
4237
  <xsl:param name="border_around_page">false</xsl:param>
4007
4238
  <xsl:param name="insert_header_first">true</xsl:param>
4008
4239
  <xsl:param name="insert_footer_last">true</xsl:param>
4009
- <xsl:if test="($layoutVersion = '1972' or $layoutVersion = '1987' or ($layoutVersion = '1989' and $revision_date_num &lt;= 19981231)) and $is_footer = 'true'">
4240
+ <xsl:if test="($layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or ($layoutVersion = '1989' and $revision_date_num &lt;= 19981231)) and $is_footer = 'true'">
4010
4241
  <xsl:call-template name="insertFooterFirst1972_1998">
4011
4242
  <xsl:with-param name="font-weight" select="$font-weight"/>
4012
4243
  </xsl:call-template>
@@ -4035,7 +4266,7 @@
4035
4266
  </xsl:template>
4036
4267
  <xsl:variable name="font-size_header">
4037
4268
  <xsl:choose>
4038
- <xsl:when test="$layoutVersion = '1972' or $layoutVersion = '1987' or $layoutVersion = '1989'">11pt</xsl:when>
4269
+ <xsl:when test="$layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or $layoutVersion = '1989'">11pt</xsl:when>
4039
4270
  <xsl:otherwise>12pt</xsl:otherwise>
4040
4271
  </xsl:choose>
4041
4272
  </xsl:variable>
@@ -4087,7 +4318,7 @@
4087
4318
  </xsl:when>
4088
4319
  <xsl:otherwise>
4089
4320
  <fo:block-container margin-top="13mm" width="172mm" border-top="0.5mm solid black" border-bottom="0.5mm solid black" display-align="center" background-color="white">
4090
- <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1987' or $layoutVersion = '1989'">
4321
+ <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or $layoutVersion = '1989'">
4091
4322
  <xsl:attribute name="border-top">0.5mm solid black</xsl:attribute>
4092
4323
  <xsl:attribute name="border-bottom">0.5mm solid black</xsl:attribute>
4093
4324
  </xsl:if>
@@ -4118,6 +4349,9 @@
4118
4349
  <fo:table-column column-width="50%"/>
4119
4350
  <fo:table-body>
4120
4351
  <fo:table-row display-align="center" height="9mm">
4352
+ <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1979'">
4353
+ <xsl:attribute name="height">11mm</xsl:attribute>
4354
+ </xsl:if>
4121
4355
  <xsl:if test="$layoutVersion = '2024'">
4122
4356
  <xsl:attribute name="height">8.5mm</xsl:attribute>
4123
4357
  </xsl:if>
@@ -4227,7 +4461,7 @@
4227
4461
 
4228
4462
  <xsl:variable name="font-size_footer_copyright">
4229
4463
  <xsl:choose>
4230
- <xsl:when test="$layoutVersion = '1972' or $layoutVersion = '1987' or $layoutVersion = '1989'">8pt</xsl:when>
4464
+ <xsl:when test="$layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or $layoutVersion = '1989'">8pt</xsl:when>
4231
4465
  <xsl:otherwise>9pt</xsl:otherwise>
4232
4466
  </xsl:choose>
4233
4467
  </xsl:variable>
@@ -4237,7 +4471,7 @@
4237
4471
  <fo:block-container display-align="after" height="86mm">
4238
4472
 
4239
4473
  <fo:block line-height="90%" role="SKIP" margin-bottom="9mm">
4240
- <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1987'">
4474
+ <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987'">
4241
4475
  <xsl:attribute name="margin-bottom">5mm</xsl:attribute>
4242
4476
  </xsl:if>
4243
4477
  <fo:block font-size="8pt" text-align="justify" role="SKIP">
@@ -4310,7 +4544,7 @@
4310
4544
  <fo:table-cell display-align="center" padding-top="0mm" font-size="{$font-size_footer_copyright}">
4311
4545
  <fo:block text-align="right">
4312
4546
  <xsl:choose>
4313
- <xsl:when test="$layoutVersion = '1972' or $layoutVersion = '1987' or ($layoutVersion = '1989' and $revision_date_num &lt;= 19981231)"/>
4547
+ <xsl:when test="$layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or ($layoutVersion = '1989' and $revision_date_num &lt;= 19981231)"/>
4314
4548
  <xsl:otherwise><xsl:value-of select="$copyrightText"/></xsl:otherwise>
4315
4549
  </xsl:choose>
4316
4550
  </fo:block>
@@ -4356,7 +4590,7 @@
4356
4590
  <fo:table-cell display-align="center" padding-top="0mm" font-size="{$font-size_footer_copyright}">
4357
4591
  <fo:block>
4358
4592
  <xsl:choose>
4359
- <xsl:when test="$layoutVersion = '1972' or $layoutVersion = '1987' or ($layoutVersion = '1989' and $revision_date_num &lt;= 19981231)"/>
4593
+ <xsl:when test="$layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or ($layoutVersion = '1989' and $revision_date_num &lt;= 19981231)"/>
4360
4594
  <xsl:otherwise><xsl:value-of select="$copyrightText"/></xsl:otherwise>
4361
4595
  </xsl:choose>
4362
4596
  </fo:block>
@@ -4495,7 +4729,7 @@
4495
4729
  <fo:table-cell display-align="center">
4496
4730
  <fo:block font-size="{$font-size_footer_copyright}">
4497
4731
  <xsl:choose>
4498
- <xsl:when test="$layoutVersion = '1972' or $layoutVersion = '1987' or ($layoutVersion = '1989' and $revision_date_num &lt;= 19981231)"/>
4732
+ <xsl:when test="$layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or ($layoutVersion = '1989' and $revision_date_num &lt;= 19981231)"/>
4499
4733
  <xsl:otherwise><xsl:value-of select="$copyrightText"/></xsl:otherwise>
4500
4734
  </xsl:choose>
4501
4735
  </fo:block>
@@ -4517,7 +4751,7 @@
4517
4751
  <fo:flow flow-name="xsl-region-body">
4518
4752
  <fo:block-container height="252mm" display-align="after">
4519
4753
  <xsl:choose>
4520
- <xsl:when test="$layoutVersion = '1972' or $layoutVersion = '1987'">
4754
+ <xsl:when test="$layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987'">
4521
4755
  <xsl:call-template name="insertSingleLine"/>
4522
4756
  </xsl:when>
4523
4757
  <xsl:otherwise>
@@ -4526,7 +4760,7 @@
4526
4760
  </xsl:choose>
4527
4761
  <fo:block-container>
4528
4762
  <fo:block font-size="12pt" font-weight="bold" padding-top="3.5mm" padding-bottom="0.5mm">
4529
- <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1987'">
4763
+ <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987'">
4530
4764
  <xsl:attribute name="font-size">11pt</xsl:attribute>
4531
4765
  <xsl:attribute name="padding-top">1mm</xsl:attribute>
4532
4766
  <xsl:attribute name="padding-bottom">1mm</xsl:attribute>
@@ -4540,7 +4774,7 @@
4540
4774
  <xsl:attribute name="padding-bottom">2mm</xsl:attribute>
4541
4775
  </xsl:if>
4542
4776
  </xsl:if>
4543
- <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1987' or ($layoutVersion = '1989' and $revision_date_num &lt;= 19981231)">
4777
+ <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or ($layoutVersion = '1989' and $revision_date_num &lt;= 19981231)">
4544
4778
  <fo:block margin-bottom="6pt">
4545
4779
  <xsl:value-of select="$udc"/>
4546
4780
  </fo:block>
@@ -4550,7 +4784,7 @@
4550
4784
  <xsl:value-of select="."/>
4551
4785
  <xsl:if test="position() != last()">
4552
4786
  <xsl:choose>
4553
- <xsl:when test="$layoutVersion = '1972' or $layoutVersion = '1987' or $layoutVersion = '1989'"><xsl:text>: </xsl:text></xsl:when>
4787
+ <xsl:when test="$layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or $layoutVersion = '1989'"><xsl:text>: </xsl:text></xsl:when>
4554
4788
  <xsl:otherwise><xsl:text>; </xsl:text></xsl:otherwise>
4555
4789
  </xsl:choose>
4556
4790
  </xsl:if>
@@ -4584,7 +4818,7 @@
4584
4818
  </xsl:if>
4585
4819
  </fo:block-container>
4586
4820
  <xsl:choose>
4587
- <xsl:when test="$layoutVersion = '1972' or $layoutVersion = '1987'">
4821
+ <xsl:when test="$layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987'">
4588
4822
  <xsl:call-template name="insertSingleLine"/>
4589
4823
  </xsl:when>
4590
4824
  <xsl:when test="$layoutVersion = '1989' and $revision_date_num &lt;= 19981231">
@@ -4826,7 +5060,7 @@
4826
5060
  </xsl:template>
4827
5061
 
4828
5062
  <xsl:template name="insertSmallHorizontalLine">
4829
- <xsl:if test="($layoutVersion = '1951' or $layoutVersion = '1972' or $layoutVersion = '1987' or $layoutVersion = '1989')">
5063
+ <xsl:if test="($layoutVersion = '1951' or $layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or $layoutVersion = '1989')">
4830
5064
  <!-- small horizontal line -->
4831
5065
  <fo:block text-align="center" margin-top="12mm" keep-with-previous="always" role="SKIP">
4832
5066
  <xsl:if test="$layout_columns != 1">
@@ -4837,6 +5071,14 @@
4837
5071
  </xsl:if>
4838
5072
  </xsl:template>
4839
5073
 
5074
+ <xsl:template name="insertBlackCircle">
5075
+ <fo:instream-foreign-object content-width="1.3mm" fox:alt-text="black circle">
5076
+ <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20">
5077
+ <circle cx="10" cy="10" r="5" stroke="black" stroke-width="5" fill="black"/>
5078
+ </svg>
5079
+ </fo:instream-foreign-object>
5080
+ </xsl:template>
5081
+
4840
5082
  <xsl:template name="insertLastBlock">
4841
5083
  <fo:block id="lastBlock" font-size="1pt" keep-with-previous="always" role="SKIP"> </fo:block>
4842
5084
  </xsl:template>
@@ -5453,7 +5695,7 @@
5453
5695
 
5454
5696
  <xsl:template name="refine_termexample-style">
5455
5697
 
5456
- <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1987' or $layoutVersion = '1989'">
5698
+ <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or $layoutVersion = '1989'">
5457
5699
  <xsl:attribute name="font-size">9pt</xsl:attribute>
5458
5700
  </xsl:if>
5459
5701
 
@@ -5469,7 +5711,7 @@
5469
5711
 
5470
5712
  <xsl:template name="refine_example-style">
5471
5713
 
5472
- <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1987' or $layoutVersion = '1989'">
5714
+ <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or $layoutVersion = '1989'">
5473
5715
  <xsl:attribute name="font-size">9pt</xsl:attribute>
5474
5716
  </xsl:if>
5475
5717
 
@@ -5562,7 +5804,7 @@
5562
5804
  <xsl:if test="starts-with(@id, 'array_')">
5563
5805
  <xsl:attribute name="margin-top">6pt</xsl:attribute>
5564
5806
  </xsl:if>
5565
- <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1987' or $layoutVersion = '1989'">
5807
+ <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or $layoutVersion = '1989'">
5566
5808
  <xsl:if test="normalize-space(@width) != 'text-width'">
5567
5809
  <xsl:attribute name="span">all</xsl:attribute>
5568
5810
  </xsl:if>
@@ -5616,7 +5858,7 @@
5616
5858
  <xsl:if test="$continued = 'true'">
5617
5859
  <xsl:attribute name="margin-bottom">2pt</xsl:attribute>
5618
5860
  </xsl:if>
5619
- <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1987' or $layoutVersion = '1989'">
5861
+ <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or $layoutVersion = '1989'">
5620
5862
  <xsl:attribute name="font-size">10pt</xsl:attribute>
5621
5863
  <xsl:if test="normalize-space(../@width) != 'text-width'">
5622
5864
  <xsl:attribute name="span">all</xsl:attribute>
@@ -5949,9 +6191,12 @@
5949
6191
 
5950
6192
  <xsl:template name="refine_note-style">
5951
6193
 
5952
- <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1987' or $layoutVersion = '1989'">
6194
+ <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or $layoutVersion = '1989'">
5953
6195
  <xsl:attribute name="font-size">9pt</xsl:attribute>
5954
6196
  </xsl:if>
6197
+ <xsl:if test="$layoutVersion = '1987'">
6198
+ <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
6199
+ </xsl:if>
5955
6200
  <xsl:if test="$layoutVersion = '2024'">
5956
6201
  <xsl:if test="ancestor::*[local-name() = 'li'] and not(following-sibling::*)">
5957
6202
  <xsl:attribute name="margin-bottom">8pt</xsl:attribute>
@@ -5978,6 +6223,15 @@
5978
6223
  <xsl:template name="refine_note-name-style">
5979
6224
 
5980
6225
  <xsl:variable name="note_name" select="*[local-name() = 'name']"/>
6226
+ <xsl:if test="$layoutVersion = '1987'">
6227
+ <xsl:attribute name="padding-right">1mm</xsl:attribute>
6228
+ <xsl:if test="not(translate($note_name,'0123456789','') = $note_name)"> <!-- NOTE with number -->
6229
+ <xsl:attribute name="padding-right">3mm</xsl:attribute>
6230
+ </xsl:if>
6231
+ <xsl:if test="translate($note_name,'0123456789','') = $note_name"> <!-- NOTE without number -->
6232
+ <xsl:attribute name="font-size">9.5pt</xsl:attribute>
6233
+ </xsl:if>
6234
+ </xsl:if>
5981
6235
  <xsl:if test="$layoutVersion = '2024' and translate($note_name,'0123456789','') = $note_name"> <!-- NOTE without number -->
5982
6236
  <xsl:attribute name="padding-right">8mm</xsl:attribute>
5983
6237
  </xsl:if>
@@ -6011,7 +6265,7 @@
6011
6265
 
6012
6266
  <xsl:template name="refine_termnote-style">
6013
6267
 
6014
- <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1987' or $layoutVersion = '1989'">
6268
+ <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or $layoutVersion = '1989'">
6015
6269
  <xsl:attribute name="font-size">9pt</xsl:attribute>
6016
6270
  </xsl:if>
6017
6271
  <xsl:if test="$doctype = 'amendment' and parent::*[local-name() = 'quote']">
@@ -6093,7 +6347,7 @@
6093
6347
 
6094
6348
  <xsl:template name="refine_figure-block-style">
6095
6349
 
6096
- <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1987' or $layoutVersion = '1989'">
6350
+ <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or $layoutVersion = '1989'">
6097
6351
  <xsl:if test="normalize-space(@width) != 'text-width'">
6098
6352
  <xsl:attribute name="span">all</xsl:attribute>
6099
6353
  <xsl:attribute name="margin-top">6pt</xsl:attribute>
@@ -6360,7 +6614,7 @@
6360
6614
 
6361
6615
  <xsl:template name="refine_fn-body-style">
6362
6616
 
6363
- <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1987' or $layoutVersion = '1989'">
6617
+ <xsl:if test="$layoutVersion = '1972' or $layoutVersion = '1979' or $layoutVersion = '1987' or $layoutVersion = '1989'">
6364
6618
  <xsl:attribute name="font-size">9pt</xsl:attribute>
6365
6619
  </xsl:if>
6366
6620
  <xsl:if test="$layoutVersion = '2024'">
@@ -11543,6 +11797,17 @@
11543
11797
 
11544
11798
  <xsl:template name="refine_note_block_style">
11545
11799
 
11800
+ <xsl:if test="$layoutVersion = '1987'">
11801
+ <xsl:if test="following-sibling::*[1][self::iso:note] and not(preceding-sibling::*[1][self::iso:note])">
11802
+ <!-- NOTES -->
11803
+ <fo:block font-size="9.5pt" keep-with-next="always" margin-bottom="6pt" text-transform="uppercase">
11804
+ <xsl:call-template name="getLocalizedString">
11805
+ <xsl:with-param name="key">Note.pl</xsl:with-param>
11806
+ </xsl:call-template>
11807
+ </fo:block>
11808
+ </xsl:if>
11809
+ </xsl:if>
11810
+
11546
11811
  </xsl:template>
11547
11812
 
11548
11813
  <xsl:template match="*[local-name() = 'note']/*[local-name() = 'p']">
@@ -11599,6 +11864,10 @@
11599
11864
  </xsl:when>
11600
11865
  <xsl:otherwise>
11601
11866
 
11867
+ <xsl:if test="$layoutVersion = '1987' and . = translate(.,'1234567890','')"> <!-- NOTE without number -->
11868
+ <xsl:text> — </xsl:text>
11869
+ </xsl:if>
11870
+
11602
11871
  </xsl:otherwise>
11603
11872
  </xsl:choose>
11604
11873
  </xsl:variable>
@@ -12933,8 +13202,11 @@
12933
13202
  </xsl:template>
12934
13203
 
12935
13204
  <xsl:template match="*[local-name() = 'strong']" mode="contents_item">
13205
+ <xsl:param name="element"/>
12936
13206
  <xsl:copy>
12937
- <xsl:apply-templates mode="contents_item"/>
13207
+ <xsl:apply-templates mode="contents_item">
13208
+ <xsl:with-param name="element" select="$element"/>
13209
+ </xsl:apply-templates>
12938
13210
  </xsl:copy>
12939
13211
  </xsl:template>
12940
13212
 
@@ -13001,7 +13273,10 @@
13001
13273
 
13002
13274
  <!-- Note: to enable the addition of character span markup with semantic styling for DIS Word output -->
13003
13275
  <xsl:template match="*[local-name() = 'span']" mode="contents_item">
13004
- <xsl:apply-templates mode="contents_item"/>
13276
+ <xsl:param name="element"/>
13277
+ <xsl:apply-templates mode="contents_item">
13278
+ <xsl:with-param name="element" select="$element"/>
13279
+ </xsl:apply-templates>
13005
13280
  </xsl:template>
13006
13281
 
13007
13282
  <!-- =============== -->
@@ -16638,7 +16913,7 @@
16638
16913
  <xsl:template name="printEdition">
16639
16914
  <xsl:variable name="edition_i18n" select="normalize-space((//*[contains(local-name(), '-standard')])[1]/*[local-name() = 'bibdata']/*[local-name() = 'edition'][normalize-space(@language) != ''])"/>
16640
16915
 
16641
- <xsl:if test="$layoutVersion != '1972' and $layoutVersion != '2024'">
16916
+ <xsl:if test="$layoutVersion != '1972' and $layoutVersion != '1979' and $layoutVersion != '2024'">
16642
16917
  <xsl:text> </xsl:text>
16643
16918
  </xsl:if>
16644
16919