metanorma-iec 2.8.6 → 2.8.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b3f4f5353e4610b6e003d791b6f79298ed76879b907b65509e9c1c79d0d77f1f
4
- data.tar.gz: 5341fe473fda7b5d713bf05081379cabc0670253374f250de792ed1e47dcf3fa
3
+ metadata.gz: ac19342ac00ffd2864809a234ebe386440f6e3c8ed183d9adba35377d5285f37
4
+ data.tar.gz: 645567607413485c04a70c83cda7ac93f2450b2a42d856994e5d72f5c379f231
5
5
  SHA512:
6
- metadata.gz: bf5cebae8b73d84939f32e9acfb4165ea63877c66a821fc31fa903227e3bdff71d68dd67e76b857c552f7f5f17ddba5d7583737b6e2c6c116b0caf7676d4d7b2
7
- data.tar.gz: f8612a188177c30fc0b14b72a5ee9d540b28e870cd7e3734b5cbb2e47520fb2e91401db0f8b2d419655d31cbd33694d0a99bdae367ac9dee3fc6bbf0032c09a4
6
+ metadata.gz: 796f8b1d9c80314e4bf1a28223d6fca4435d418c29b13ceb5343dbab15e44fb678efadb25c5a59ee8ca05d3d44b9250c68b20b5f6267ba1164dff67459e321b2
7
+ data.tar.gz: 5ac701fa60ad88317901f25b108af1bddd63d5648e96b4364713268676ace86e71d7344fc15aa09529d01e96a974be85834fa5e5bb068c41f219a05b6f654d18
@@ -673,7 +673,9 @@ p.TermNum {
673
673
  background-color: #f5faff;
674
674
  color: black !important;
675
675
  cursor: pointer;
676
- z-index: 100;
676
+ left: 0;
677
+ top: 0;
678
+ z-index: 103;
677
679
  }
678
680
  #toggle span {
679
681
  text-align: center;
@@ -1362,6 +1362,13 @@ les coordonnées ci-après ou contactez le Comité national de l'IEC de votre pa
1362
1362
  <xsl:call-template name="insertListOf_Item"/>
1363
1363
  </xsl:for-each>
1364
1364
 
1365
+ <xsl:for-each select="$contents//mnx:examples/mnx:example">
1366
+ <xsl:if test="position() = 1">
1367
+ <fo:block margin-bottom="5pt" role="SKIP"><fo:wrapper role="artifact"> </fo:wrapper></fo:block>
1368
+ </xsl:if>
1369
+ <xsl:call-template name="insertListOf_Item"/>
1370
+ </xsl:for-each>
1371
+
1365
1372
  <!-- </fo:block>
1366
1373
  </fo:block-container> -->
1367
1374
  </xsl:template> <!-- END: insertTOCpages -->
@@ -1403,6 +1410,7 @@ les coordonnées ci-après ou contactez le Comité national de l'IEC de votre pa
1403
1410
 
1404
1411
  <xsl:template match="mn:preface//mn:clause[@type = 'toc']/mn:fmt-title" priority="3">
1405
1412
  <fo:block xsl:use-attribute-sets="toc-title-style">
1413
+ <xsl:call-template name="refine_toc-title-style"/>
1406
1414
  <xsl:call-template name="addLetterSpacing">
1407
1415
  <xsl:with-param name="text" select="java:toUpperCase(java:java.lang.String.new(.))"/>
1408
1416
  </xsl:call-template>
@@ -2343,6 +2351,16 @@ les coordonnées ci-après ou contactez le Comité national de l'IEC de votre pa
2343
2351
  </xsl:if>
2344
2352
  </xsl:variable>
2345
2353
 
2354
+ <xsl:variable name="title-list-examples">
2355
+ <xsl:variable name="toc_example_title" select="//mn:metanorma/mn:metanorma-extension/mn:toc[@type='example']/mn:title"/>
2356
+ <xsl:value-of select="$toc_example_title"/>
2357
+ <xsl:if test="normalize-space($toc_example_title) = ''">
2358
+ <xsl:call-template name="getLocalizedString">
2359
+ <xsl:with-param name="key">toc_examples</xsl:with-param>
2360
+ </xsl:call-template>
2361
+ </xsl:if>
2362
+ </xsl:variable>
2363
+
2346
2364
  <xsl:variable name="title-list-recommendations">
2347
2365
  <xsl:variable name="toc_requirement_title" select="//mn:metanorma/mn:metanorma-extension/mn:toc[@type='requirement']/mn:title"/>
2348
2366
  <xsl:value-of select="$toc_requirement_title"/>
@@ -3226,6 +3244,14 @@ les coordonnées ci-après ou contactez le Comité national de l'IEC de votre pa
3226
3244
 
3227
3245
  <xsl:template match="@semx-id | @anchor" mode="update_xml_step1"/>
3228
3246
 
3247
+ <xsl:template match="mn:pagebreak" mode="update_xml_step1">
3248
+ <xsl:copy>
3249
+ <xsl:apply-templates select="@*" mode="update_xml_step1"/>
3250
+ <xsl:attribute name="from_source_xml">true</xsl:attribute>
3251
+ <xsl:apply-templates select="node()" mode="update_xml_step1"/>
3252
+ </xsl:copy>
3253
+ </xsl:template>
3254
+
3229
3255
  <!-- END: update new Presentation XML -->
3230
3256
 
3231
3257
  <!-- =========================================================================== -->
@@ -3263,6 +3289,7 @@ les coordonnées ci-après ou contactez le Comité national de l'IEC de votre pa
3263
3289
  <xsl:for-each select="ancestor-or-self::*[ancestor::mn:preface or ancestor::mn:sections or ancestor-or-self::mn:annex]">
3264
3290
  <xsl:if test="following-sibling::*">false</xsl:if>
3265
3291
  </xsl:for-each>
3292
+ <xsl:if test="@from_source_xml = 'true'">false</xsl:if>
3266
3293
  </xsl:variable>
3267
3294
 
3268
3295
  <xsl:if test="contains($isLast, 'false')">
@@ -4176,6 +4203,7 @@ les coordonnées ci-après ou contactez le Comité national de l'IEC de votre pa
4176
4203
  </xsl:attribute-set> <!-- sourcecode-style -->
4177
4204
 
4178
4205
  <xsl:template name="refine_sourcecode-style">
4206
+ <xsl:call-template name="setKeepAttributes"/>
4179
4207
  </xsl:template> <!-- refine_sourcecode-style -->
4180
4208
 
4181
4209
  <xsl:attribute-set name="sourcecode-number-style">
@@ -4914,10 +4942,38 @@ les coordonnées ci-après ou contactez le Comité national de l'IEC de votre pa
4914
4942
  <xsl:template name="refine_strike-style">
4915
4943
  </xsl:template>
4916
4944
 
4945
+ <xsl:attribute-set name="hr-block-style">
4946
+ <xsl:attribute name="font-size">1pt</xsl:attribute>
4947
+ <xsl:attribute name="keep-with-previous">always</xsl:attribute>
4948
+ <xsl:attribute name="role">SKIP</xsl:attribute>
4949
+ <xsl:attribute name="padding-top">-2pt</xsl:attribute>
4950
+ <xsl:attribute name="space-after">4pt</xsl:attribute>
4951
+ </xsl:attribute-set>
4952
+
4953
+ <xsl:template name="refine_hr-block-style">
4954
+ </xsl:template>
4955
+
4956
+ <xsl:attribute-set name="hr-style">
4957
+ <xsl:attribute name="leader-pattern">rule</xsl:attribute>
4958
+ <xsl:attribute name="leader-length">100%</xsl:attribute>
4959
+ </xsl:attribute-set>
4960
+
4961
+ <xsl:template name="refine_hr-style">
4962
+ </xsl:template>
4963
+
4917
4964
  <xsl:template match="mn:br">
4918
4965
  <xsl:value-of select="$linebreak"/>
4919
4966
  </xsl:template>
4920
4967
 
4968
+ <xsl:template match="mn:hr">
4969
+ <fo:block xsl:use-attribute-sets="hr-block-style">
4970
+ <xsl:call-template name="refine_hr-block-style"/>
4971
+ <fo:leader xsl:use-attribute-sets="hr-style">
4972
+ <xsl:call-template name="refine_hr-style"/>
4973
+ </fo:leader>
4974
+ </fo:block>
4975
+ </xsl:template>
4976
+
4921
4977
  <xsl:template match="mn:em">
4922
4978
  <fo:inline xsl:use-attribute-sets="em-style">
4923
4979
  <xsl:call-template name="refine_em_style"/>
@@ -6149,6 +6205,7 @@ les coordonnées ci-après ou contactez le Comité national de l'IEC de votre pa
6149
6205
  text line 1
6150
6206
  text line 2
6151
6207
  -->
6208
+ <xsl:variable name="example_display_in"><!-- don't change here, only for override xsl --></xsl:variable> <!-- block or inline -->
6152
6209
  <xsl:template match="mn:example" name="example">
6153
6210
  <xsl:call-template name="setNamedDestination"/>
6154
6211
  <fo:block-container id="{@id}" xsl:use-attribute-sets="example-style" role="SKIP">
@@ -6159,6 +6216,7 @@ les coordonnées ci-après ou contactez le Comité national de l'IEC de votre pa
6159
6216
 
6160
6217
  <xsl:variable name="fo_element">
6161
6218
  <xsl:if test=".//mn:table or .//mn:dl or *[not(self::mn:fmt-name)][1][self::mn:sourcecode]">block</xsl:if>
6219
+ <xsl:if test="normalize-space($example_display_in) != ''"><xsl:value-of select="$example_display_in"/></xsl:if>
6162
6220
  <xsl:choose>
6163
6221
  <!-- if example contains only one (except 'name') element (paragraph for example), then display it on the same line as EXAMPLE title -->
6164
6222
  <xsl:when test="count(*[not(self::mn:fmt-name)]) = 1">inline</xsl:when>
@@ -13586,7 +13644,7 @@ les coordonnées ci-après ou contactez le Comité national de l'IEC de votre pa
13586
13644
  <xsl:template name="refine_toc-pagenumber-style">
13587
13645
  </xsl:template>
13588
13646
 
13589
- <!-- List of Figures, Tables -->
13647
+ <!-- List of Figures, Tables, Examples -->
13590
13648
  <xsl:attribute-set name="toc-listof-title-style">
13591
13649
  </xsl:attribute-set>
13592
13650
 
@@ -13688,6 +13746,9 @@ les coordonnées ci-après ou contactez le Comité national de l'IEC de votre pa
13688
13746
  <xsl:if test="(//mn:metanorma/mn:metanorma-extension/mn:toc[@type='figure']/mn:title) or normalize-space($always) = 'true'">
13689
13747
  <xsl:call-template name="processFigures_Contents"/>
13690
13748
  </xsl:if>
13749
+ <xsl:if test="(//mn:metanorma/mn:metanorma-extension/mn:toc[@type='example']/mn:title)">
13750
+ <xsl:call-template name="processExamples_Contents"/>
13751
+ </xsl:if>
13691
13752
  </xsl:template>
13692
13753
 
13693
13754
  <xsl:template name="processTables_Contents">
@@ -13734,7 +13795,29 @@ les coordonnées ci-après ou contactez le Comité national de l'IEC de votre pa
13734
13795
  </mnx:figures>
13735
13796
  </xsl:template>
13736
13797
 
13737
- <xsl:template match="mn:figure/mn:name | mnx:figure/mn:name | mn:table/mn:name | mnx:table/mn:name | mn:permission/mn:name | mnx:permission/mn:name | mn:recommendation/mn:name | mnx:recommendation/mn:name | mn:requirement/mn:name | mnx:requirement/mn:name" mode="contents">
13798
+ <xsl:template name="processExamples_Contents">
13799
+ <mnx:examples>
13800
+ <xsl:for-each select="//mn:example[@id and mn:fmt-name and not(@unnumbered = 'true') and normalize-space(@id) != '']">
13801
+ <xsl:choose>
13802
+ <xsl:when test="mn:fmt-name">
13803
+ <xsl:variable name="fmt_name">
13804
+ <xsl:apply-templates select="mn:fmt-name" mode="update_xml_step1"/>
13805
+ </xsl:variable>
13806
+ <mnx:example id="{@id}" alt-text="{normalize-space($fmt_name)}">
13807
+ <xsl:copy-of select="$fmt_name"/>
13808
+ </mnx:example>
13809
+ </xsl:when>
13810
+ <xsl:otherwise>
13811
+ <mnx:example id="{@id}" alt-text="{mn:name}">
13812
+ <xsl:copy-of select="mn:name"/>
13813
+ </mnx:example>
13814
+ </xsl:otherwise>
13815
+ </xsl:choose>
13816
+ </xsl:for-each>
13817
+ </mnx:examples>
13818
+ </xsl:template>
13819
+
13820
+ <xsl:template match="mn:figure/mn:name | mnx:figure/mn:name | mn:table/mn:name | mnx:table/mn:name | mn:example/mn:name | mnx:example/mn:name | mn:permission/mn:name | mnx:permission/mn:name | mn:recommendation/mn:name | mnx:recommendation/mn:name | mn:requirement/mn:name | mnx:requirement/mn:name" mode="contents">
13738
13821
  <xsl:if test="not(following-sibling::*[1][self::mn:fmt-name])">
13739
13822
  <xsl:apply-templates mode="contents"/>
13740
13823
  <xsl:text> </xsl:text>
@@ -13743,40 +13826,40 @@ les coordonnées ci-après ou contactez le Comité national de l'IEC de votre pa
13743
13826
 
13744
13827
  <xsl:template match="mn:title[following-sibling::*[1][self::mn:fmt-title]]" mode="contents"/>
13745
13828
 
13746
- <xsl:template match="mn:figure/mn:fmt-name | mnx:figure/mn:fmt-name | mn:table/mn:fmt-name | mnx:table/mn:fmt-name | mn:permission/mn:fmt-name | mnx:permission/mn:fmt-name | mn:recommendation/mn:fmt-name | mnx:recommendation/mn:fmt-name | mn:requirement/mn:fmt-name | mnx:requirement/mn:fmt-name" mode="contents">
13829
+ <xsl:template match="mn:figure/mn:fmt-name | mnx:figure/mn:fmt-name | mn:table/mn:fmt-name | mnx:table/mn:fmt-name | mn:example/mn:fmt-name | mnx:example/mn:fmt-name | mn:permission/mn:fmt-name | mnx:permission/mn:fmt-name | mn:recommendation/mn:fmt-name | mnx:recommendation/mn:fmt-name | mn:requirement/mn:fmt-name | mnx:requirement/mn:fmt-name" mode="contents">
13747
13830
  <xsl:apply-templates mode="contents"/>
13748
13831
  <xsl:text> </xsl:text>
13749
13832
  </xsl:template>
13750
13833
 
13751
- <xsl:template match="mn:figure/mn:name | mnx:figure/mn:name | mn:table/mn:name | mnx:table/mn:name | mn:permission/mn:name | mnx:permission/mn:name | mn:recommendation/mn:name | mnx:recommendation/mn:name | mn:requirement/mn:name | mnx:requirement/mn:name | mn:sourcecode/mn:name" mode="bookmarks">
13834
+ <xsl:template match="mn:figure/mn:name | mnx:figure/mn:name | mn:table/mn:name | mnx:table/mn:name | mn:example/mn:name | mnx:example/mn:name | mn:permission/mn:name | mnx:permission/mn:name | mn:recommendation/mn:name | mnx:recommendation/mn:name | mn:requirement/mn:name | mnx:requirement/mn:name | mn:sourcecode/mn:name" mode="bookmarks">
13752
13835
  <xsl:if test="not(following-sibling::*[1][self::mn:fmt-name])">
13753
13836
  <xsl:apply-templates mode="bookmarks"/>
13754
13837
  <xsl:text> </xsl:text>
13755
13838
  </xsl:if>
13756
13839
  </xsl:template>
13757
13840
 
13758
- <xsl:template match="mn:figure/mn:fmt-name | mnx:figure/mn:fmt-name | mn:table/mn:fmt-name | mnx:table/mn:fmt-name | mn:permission/mn:fmt-name | mnx:permission/mn:fmt-name | mn:recommendation/mn:fmt-name | mnx:recommendation/mn:fmt-name | mn:requirement/mn:fmt-name | mnx:requirement/mn:fmt-name | mn:sourcecode/mn:fmt-name | mnx:sourcecode/mn:fmt-name" mode="bookmarks">
13841
+ <xsl:template match="mn:figure/mn:fmt-name | mnx:figure/mn:fmt-name | mn:table/mn:fmt-name | mnx:table/mn:fmt-name | mn:example/mn:fmt-name | mnx:example/mn:fmt-name | mn:permission/mn:fmt-name | mnx:permission/mn:fmt-name | mn:recommendation/mn:fmt-name | mnx:recommendation/mn:fmt-name | mn:requirement/mn:fmt-name | mnx:requirement/mn:fmt-name | mn:sourcecode/mn:fmt-name | mnx:sourcecode/mn:fmt-name" mode="bookmarks">
13759
13842
  <xsl:apply-templates mode="bookmarks"/>
13760
13843
  <xsl:text> </xsl:text>
13761
13844
  </xsl:template>
13762
13845
 
13763
- <xsl:template match="*[self::mn:figure or self::mn:table or self::mn:permission or self::mn:recommendation or self::mn:requirement]/mn:name/text() | *[self::mnx:figure or self::mnx:table or self::mnx:permission or self::mnx:recommendation or self::mnx:requirement]/mn:name/text()" mode="contents" priority="2">
13846
+ <xsl:template match="*[self::mn:figure or self::mn:table or self::mn:example or self::mn:permission or self::mn:recommendation or self::mn:requirement]/mn:name/text() | *[self::mnx:figure or self::mnx:table or self::mnx:example or self::mnx:permission or self::mnx:recommendation or self::mnx:requirement]/mn:name/text()" mode="contents" priority="2">
13764
13847
  <xsl:if test="not(../following-sibling::*[1][self::mn:fmt-name])">
13765
13848
  <xsl:value-of select="."/>
13766
13849
  </xsl:if>
13767
13850
  </xsl:template>
13768
13851
 
13769
- <xsl:template match="*[self::mn:figure or self::mn:table or self::mn:permission or self::mn:recommendation or self::mn:requirement]/mn:fmt-name/text() | *[self::mnx:figure or self::mnx:table or self::mnx:permission or self::mnx:recommendation or self::mnx:requirement]/mn:fmt-name/text()" mode="contents" priority="2">
13852
+ <xsl:template match="*[self::mn:figure or self::mn:table or self::mn:example or self::mn:permission or self::mn:recommendation or self::mn:requirement]/mn:fmt-name/text() | *[self::mnx:figure or self::mnx:table or self::mnx:example or self::mnx:permission or self::mnx:recommendation or self::mnx:requirement]/mn:fmt-name/text()" mode="contents" priority="2">
13770
13853
  <xsl:value-of select="."/>
13771
13854
  </xsl:template>
13772
13855
 
13773
- <xsl:template match="*[self::mn:figure or self::mn:table or self::mn:permission or self::mn:recommendation or self::mn:requirement or self::mn:sourcecode]/mn:name//text() | *[self::mnx:figure or self::mnx:table or self::mnx:permission or self::mnx:recommendation or self::mnx:requirement or self::mnx:sourcecode]/mn:name//text()" mode="bookmarks" priority="2">
13856
+ <xsl:template match="*[self::mn:figure or self::mn:table or self::mn:example or self::mn:permission or self::mn:recommendation or self::mn:requirement or self::mn:sourcecode]/mn:name//text() | *[self::mnx:figure or self::mnx:table or self::mnx:example or self::mnx:permission or self::mnx:recommendation or self::mnx:requirement or self::mnx:sourcecode]/mn:name//text()" mode="bookmarks" priority="2">
13774
13857
  <xsl:if test="not(../following-sibling::*[1][self::mn:fmt-name])">
13775
13858
  <xsl:value-of select="."/>
13776
13859
  </xsl:if>
13777
13860
  </xsl:template>
13778
13861
 
13779
- <xsl:template match="*[self::mn:figure or self::mn:table or self::mn:permission or self::mn:recommendation or self::mn:requirement or self::mn:sourcecode]/mn:fmt-name//text() | *[self::mnx:figure or self::mnx:table or self::mnx:permission or self::mnx:recommendation or self::mnx:requirement or self::mnx:sourcecode]/mn:fmt-name//text()" mode="bookmarks" priority="2">
13862
+ <xsl:template match="*[self::mn:figure or self::mn:table or self::mn:example or self::mn:permission or self::mn:recommendation or self::mn:requirement or self::mn:sourcecode]/mn:fmt-name//text() | *[self::mnx:figure or self::mnx:table or self::mnx:example or self::mnx:permission or self::mnx:recommendation or self::mnx:requirement or self::mnx:sourcecode]/mn:fmt-name//text()" mode="bookmarks" priority="2">
13780
13863
  <xsl:value-of select="."/>
13781
13864
  </xsl:template>
13782
13865
 
@@ -14009,6 +14092,11 @@ les coordonnées ci-après ou contactez le Comité national de l'IEC de votre pa
14009
14092
  <xsl:with-param name="lang" select="@lang"/>
14010
14093
  </xsl:call-template>
14011
14094
 
14095
+ <xsl:call-template name="insertExampleBookmarks">
14096
+ <xsl:with-param name="contents" select="mnx:contents"/>
14097
+ <xsl:with-param name="lang" select="@lang"/>
14098
+ </xsl:call-template>
14099
+
14012
14100
  </fo:bookmark>
14013
14101
 
14014
14102
  </xsl:for-each>
@@ -14027,6 +14115,11 @@ les coordonnées ci-après ou contactez le Comité national de l'IEC de votre pa
14027
14115
  <xsl:with-param name="lang" select="@lang"/>
14028
14116
  </xsl:call-template>
14029
14117
 
14118
+ <xsl:call-template name="insertExampleBookmarks">
14119
+ <xsl:with-param name="contents" select="mnx:contents"/>
14120
+ <xsl:with-param name="lang" select="@lang"/>
14121
+ </xsl:call-template>
14122
+
14030
14123
  </xsl:for-each>
14031
14124
  </xsl:otherwise>
14032
14125
  </xsl:choose>
@@ -14043,6 +14136,11 @@ les coordonnées ci-après ou contactez le Comité national de l'IEC de votre pa
14043
14136
  <xsl:with-param name="lang" select="@lang"/>
14044
14137
  </xsl:call-template>
14045
14138
 
14139
+ <xsl:call-template name="insertExampleBookmarks">
14140
+ <xsl:with-param name="contents" select="$contents_nodes/mnx:contents"/>
14141
+ <xsl:with-param name="lang" select="@lang"/>
14142
+ </xsl:call-template>
14143
+
14046
14144
  </xsl:otherwise>
14047
14145
  </xsl:choose>
14048
14146
 
@@ -14132,6 +14230,53 @@ les coordonnées ci-après ou contactez le Comité national de l'IEC de votre pa
14132
14230
  </fo:bookmark>
14133
14231
  </xsl:if>
14134
14232
  </xsl:template> <!-- insertTableBookmarks -->
14233
+
14234
+ <xsl:template name="insertExampleBookmarks">
14235
+ <xsl:param name="contents"/>
14236
+ <xsl:param name="lang"/>
14237
+ <xsl:variable name="contents_nodes" select="xalan:nodeset($contents)"/>
14238
+ <xsl:if test="$contents_nodes/mnx:example">
14239
+ <fo:bookmark internal-destination="{$contents_nodes/mnx:example[1]/@id}" starting-state="hide">
14240
+ <fo:bookmark-title>
14241
+ <xsl:choose>
14242
+ <xsl:when test="$lang = 'fr'">Exemples</xsl:when>
14243
+ <xsl:otherwise>Examples</xsl:otherwise>
14244
+ </xsl:choose>
14245
+ </fo:bookmark-title>
14246
+ <xsl:for-each select="$contents_nodes/mnx:example">
14247
+ <fo:bookmark internal-destination="{@id}">
14248
+ <fo:bookmark-title>
14249
+ <xsl:value-of select="normalize-space(mnx:title)"/>
14250
+ </fo:bookmark-title>
14251
+ </fo:bookmark>
14252
+ </xsl:for-each>
14253
+ </fo:bookmark>
14254
+ </xsl:if>
14255
+ <xsl:if test="$contents_nodes//mnx:examples/mnx:example">
14256
+ <fo:bookmark internal-destination="empty_bookmark" starting-state="hide">
14257
+ <xsl:attribute name="internal-destination">
14258
+ <xsl:value-of select="$contents_nodes//mnx:examples/mnx:example[1]/@id"/>
14259
+ </xsl:attribute>
14260
+
14261
+ <xsl:variable name="bookmark-title">
14262
+ <xsl:choose>
14263
+ <xsl:when test="$lang = 'fr'">Exemples</xsl:when>
14264
+ <xsl:otherwise>Examples</xsl:otherwise>
14265
+ </xsl:choose>
14266
+
14267
+ </xsl:variable>
14268
+
14269
+ <fo:bookmark-title><xsl:value-of select="$bookmark-title"/></fo:bookmark-title>
14270
+
14271
+ <xsl:for-each select="$contents_nodes//mnx:examples/mnx:example">
14272
+ <fo:bookmark internal-destination="{@id}">
14273
+ <!-- <fo:bookmark-title><xsl:value-of select="normalize-space(.)"/></fo:bookmark-title> -->
14274
+ <fo:bookmark-title><xsl:apply-templates mode="bookmark_clean"/></fo:bookmark-title>
14275
+ </fo:bookmark>
14276
+ </xsl:for-each>
14277
+ </fo:bookmark>
14278
+ </xsl:if>
14279
+ </xsl:template> <!-- insertExampleBookmarks -->
14135
14280
  <!-- End Bookmarks -->
14136
14281
 
14137
14282
  <!-- ============================ -->
@@ -32,8 +32,8 @@ module IsoDoc
32
32
  super
33
33
  end
34
34
 
35
- def std_docid_semantic(text)
36
- text
35
+ def annotate_docid?(_id)
36
+ false
37
37
  end
38
38
  end
39
39
  end
@@ -187,6 +187,15 @@ Applicable to modify and delete</a:documentation>
187
187
  <a:documentation>Optional caption of this block</a:documentation>
188
188
  </attribute>
189
189
  </optional>
190
+ <optional>
191
+ <attribute name="position">
192
+ <a:documentation>For an "add" change, whether the change is added before or after the location</a:documentation>
193
+ <choice>
194
+ <value>before</value>
195
+ <value>after</value>
196
+ </choice>
197
+ </attribute>
198
+ </optional>
190
199
  <optional>
191
200
  <element name="location">
192
201
  <a:documentation>The location(s) in the original document which have undergone the change described in this block</a:documentation>
@@ -1142,11 +1142,11 @@ NOTE: This should preferably be encoded as a URI or short identifier, rather th
1142
1142
  <a:documentation>Information about how long the current description of the bibliographic item is valid for</a:documentation>
1143
1143
  </ref>
1144
1144
  </optional>
1145
- <optional>
1145
+ <zeroOrMore>
1146
1146
  <ref name="depiction">
1147
1147
  <a:documentation>Depiction of the bibliographic item, typically an image</a:documentation>
1148
1148
  </ref>
1149
- </optional>
1149
+ </zeroOrMore>
1150
1150
  </define>
1151
1151
  <define name="ReducedBibliographicItem">
1152
1152
  <a:documentation>Reduced description of a bibliographic resource, without mandatory title and docidentifier, used for document relations
@@ -2015,15 +2015,11 @@ provided that it is not the entire bibliographic item that is so related</a:docu
2015
2015
  <a:documentation>A version of the bibliographic item (within an edition). Can be used for drafts</a:documentation>
2016
2016
  <element name="version">
2017
2017
  <optional>
2018
- <ref name="revision-date">
2019
- <a:documentation>The date at which the current version of the bibliographic item was produced</a:documentation>
2020
- </ref>
2021
- </optional>
2022
- <optional>
2023
- <ref name="draft">
2024
- <a:documentation>The identifier for the current draft of the bibliographic item</a:documentation>
2025
- </ref>
2018
+ <attribute name="type">
2019
+ <a:documentation>Versioning scheme, in case of multiple versioning schemes</a:documentation>
2020
+ </attribute>
2026
2021
  </optional>
2022
+ <text/>
2027
2023
  </element>
2028
2024
  </define>
2029
2025
  <define name="vedition">
@@ -2063,13 +2059,13 @@ provided that it is not the entire bibliographic item that is so related</a:docu
2063
2059
  <ref name="LocalizedString"/>
2064
2060
  </element>
2065
2061
  </optional>
2066
- <oneOrMore>
2062
+ <zeroOrMore>
2067
2063
  <element name="taxon">
2068
2064
  <a:documentation>The keywords as a hierarchical taxonomy. For example, the sequence of `taxon` elements
2069
2065
  `pump`, `centrifugal pump`, `line shaft pump` represents a taxonomic classification</a:documentation>
2070
2066
  <ref name="LocalizedString"/>
2071
2067
  </element>
2072
- </oneOrMore>
2068
+ </zeroOrMore>
2073
2069
  <zeroOrMore>
2074
2070
  <ref name="vocabid">
2075
2071
  <a:documentation>Identifiers for the keyword as a controlled vocabulary</a:documentation>
@@ -1,6 +1,6 @@
1
1
  <?xml version="1.0" encoding="UTF-8"?>
2
2
  <grammar xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
3
- <!-- VERSION v2.1.5 -->
3
+ <!-- VERSION v2.1.6 -->
4
4
 
5
5
  <!--
6
6
  ALERT: cannot have root comments, because of https://github.com/metanorma/metanorma/issues/437
@@ -164,6 +164,9 @@ Sources are currently only rendered in metanorma-plateau</a:documentation>
164
164
  </choice>
165
165
  </attribute>
166
166
  </optional>
167
+ <optional>
168
+ <ref name="DisplayDirective"/>
169
+ </optional>
167
170
  </define>
168
171
  <define name="DlAttributes">
169
172
  <ref name="BlockAttributes"/>
@@ -210,6 +213,12 @@ Sources are currently only rendered in metanorma-plateau</a:documentation>
210
213
  <define name="ExampleAttributes">
211
214
  <ref name="NumberingAttributes"/>
212
215
  <ref name="BlockAttributes"/>
216
+ <optional>
217
+ <attribute name="collapsible">
218
+ <a:documentation>Render the example as collapsible (HTML5 details/summary)</a:documentation>
219
+ <data type="boolean"/>
220
+ </attribute>
221
+ </optional>
213
222
  </define>
214
223
  <define name="ExampleBody">
215
224
  <optional>
@@ -814,6 +823,9 @@ titlecase, or lowercase</a:documentation>
814
823
  </define>
815
824
  <define name="UlAttributes" combine="interleave">
816
825
  <ref name="BlockAttributes"/>
826
+ <optional>
827
+ <ref name="DisplayDirective"/>
828
+ </optional>
817
829
  </define>
818
830
  <define name="TableAttributes" combine="interleave">
819
831
  <optional>
@@ -1968,7 +1980,7 @@ used in document amendments</a:documentation>
1968
1980
  <a:documentation>Zero or more examples of how the term is to be used</a:documentation>
1969
1981
  </ref>
1970
1982
  </zeroOrMore>
1971
- <ref name="TermSource">
1983
+ <ref name="TermSources">
1972
1984
  <a:documentation>Bibliographic references for the managed term</a:documentation>
1973
1985
  </ref>
1974
1986
  </element>
@@ -2077,7 +2089,7 @@ used in document amendments</a:documentation>
2077
2089
  <a:documentation>Information about how the designation is to be used</a:documentation>
2078
2090
  </ref>
2079
2091
  </optional>
2080
- <ref name="TermSource">
2092
+ <ref name="TermSources">
2081
2093
  <a:documentation>Bibliographic references for this designation of the managed term</a:documentation>
2082
2094
  </ref>
2083
2095
  </define>
@@ -2348,7 +2360,7 @@ used in document amendments</a:documentation>
2348
2360
  <ref name="formula"/>
2349
2361
  </choice>
2350
2362
  </oneOrMore>
2351
- <ref name="TermSource">
2363
+ <ref name="TermSources">
2352
2364
  <a:documentation>Bibliographic references for this designation of the managed term</a:documentation>
2353
2365
  </ref>
2354
2366
  </element>
@@ -2365,7 +2377,7 @@ used in document amendments</a:documentation>
2365
2377
  <ref name="formula"/>
2366
2378
  </choice>
2367
2379
  </oneOrMore>
2368
- <ref name="TermSource">
2380
+ <ref name="TermSources">
2369
2381
  <a:documentation>Bibliographic references for this designation of the managed term</a:documentation>
2370
2382
  </ref>
2371
2383
  </element>
@@ -2788,6 +2800,26 @@ to span across both columns</a:documentation>
2788
2800
  </attribute>
2789
2801
  </optional>
2790
2802
  </define>
2803
+ <define name="DisplayDirective">
2804
+ <a:documentation>Directive on how to render a block in Presentation XML </a:documentation>
2805
+ <optional>
2806
+ <attribute name="display">
2807
+ <a:documentation>Display style for block.
2808
+ If the block is `ol` or `ul` and dispay is `table`,
2809
+ the list is to be rendered as a table, with a column for each nested level, and a row for each terminal sublist</a:documentation>
2810
+ </attribute>
2811
+ </optional>
2812
+ <optional>
2813
+ <attribute name="display-directives">
2814
+ <a:documentation>display-directives is a key-value set of attributes, guiding how the rendering of the block should happen.
2815
+ The key-value set is comma-delimited, and encoded as `key1='value1',key2='value'`,
2816
+ as with stem//mn/@data-metanorma-numberformat
2817
+ * If the block is `ol` or `ul` and dispay is `table`, display-directives can have the value `colgroup='col1,col2,...coln'`,
2818
+ where each col value is a percentage width of the column in the output table (with no % suffix).
2819
+ e.g. `colgroup='50,33.3,16.7'` </a:documentation>
2820
+ </attribute>
2821
+ </optional>
2822
+ </define>
2791
2823
  <define name="ReferencesAttributes">
2792
2824
  <optional>
2793
2825
  <attribute name="obligation">
@@ -2800,7 +2832,7 @@ Normative References contents contain normative references, but as a clause in t
2800
2832
  <data type="boolean"/>
2801
2833
  </attribute>
2802
2834
  </define>
2803
- <define name="TermSource">
2835
+ <define name="TermSources">
2804
2836
  <zeroOrMore>
2805
2837
  <ref name="termsource"/>
2806
2838
  </zeroOrMore>
@@ -47,7 +47,15 @@ the tag name of the top level containers</a:documentation>
47
47
  </optional>
48
48
  <optional>
49
49
  <attribute name="model">
50
- <a:documentation>Model of requirements realised by this requirement, e.g. "ogc" for Modspec</a:documentation>
50
+ <a:documentation>Model of requirements realised by this requirement, e.g. "ogc" for Modspec.
51
+ Current legal values: ogc, default</a:documentation>
52
+ </attribute>
53
+ </optional>
54
+ <optional>
55
+ <attribute name="render">
56
+ <a:documentation>Rendering of requirements realised by this requirement. Current legal values:
57
+ default:: default, inline
58
+ ogc:: default</a:documentation>
51
59
  </attribute>
52
60
  </optional>
53
61
  <optional>
@@ -1,6 +1,6 @@
1
1
  module Metanorma
2
2
  module Iec
3
- VERSION = "2.8.6".freeze
3
+ VERSION = "2.8.9".freeze
4
4
  end
5
5
  end
6
6
 
@@ -20,23 +20,23 @@ template:
20
20
  # skip standardidentifier, it is inserted in front of formattedref within metanorma
21
21
  standard: "{% if home_standard %}<em><span_class='stddocTitle'>{{ title }}</span></em> ,_{{ extent }}{% else %}<smallcap>{{ creatornames }}</smallcap>. <em><span_class='stddocTitle'>{{ title }}</span></em> ,_{{ extent }} . {{ labels['version'] | capitalize }}_{{ edition_raw }}. {{labels['updated'] | capitalize }}_{{date_updated}}. {{status | capitalize}}. {{ authorizer }}. {{ labels['availablefrom'] }}:_<span_class='biburl'>{{ uri }}</span>.{% endif %}"
22
22
  website: "<smallcap>{{ creatornames }}</smallcap> ({{ role }}) . <em><span_class='stddocTitle'>{{ title }}</span></em> [website]. {{ labels['version'] | capitalize }}_{{ edition_raw }}. {{place}}: {{ publisher }}. {{date}}. {{ labels['updated'] | capitalize }}:_{{date_updated}}. ._{{ labels['availablefrom'] }}:_<span_class='biburl'>{{ uri }}</span>. [{{ labels['viewed'] }}:_{{date_accessed}}]. "
23
- book: "<smallcap>{{ creatornames }}</smallcap> ({{role}}) . <em>{{ title }}</em> . {{ edition | capitalize_first }}. ({{ series }}). {% if place %}{{place}}{%else%}{{ labels['no_place']}}{%endif%}: {{publisher}}. {{date}}. {{size}}. {{extent}}. ._{{ labels['availablefrom'] }}:_<span_class='biburl'>{{ uri }}</span>. {{ labels['at'] | capitalize}}:_{{ access_location }}. [{{ labels['viewed'] }}:_{{date_accessed}}]."
23
+ book: "<smallcap>{{ creatornames }}</smallcap> ({{role}}) . <em>{{ title }}</em> . {{ edition | capitalize_first }}. ({{ series }}). {% if place %}{{place}}{%else%}{{ labels['no_place']}}{%endif%}: {{publisher}}. {{date}}. {{size}}. {{extent}}. ._{{ labels['availablefrom'] }}:_<span_class='biburl'>{{ uri }}</span>. {{ labels['at_url'] | capitalize}}:_{{ access_location }}. [{{ labels['viewed'] }}:_{{date_accessed}}]."
24
24
  booklet: book
25
25
  manual: book
26
26
  techreport: book
27
27
  proceedings: book
28
- inbook: "<smallcap>{{ creatornames }}</smallcap> ({{role}}) . {{ title }} . <em>{{host_title}}</em> ({{host_role}} {{ host_creatornames}}). {{ edition | capitalize_first }}. ({{ series }}). {% if place %}{{place}}{%else%}{{ labels['no_place']}}{%endif%}: {{publisher}}. {{date}}. {{size}}. {{extent}}. ._{{ labels['availablefrom'] }}:_<span_class='biburl'>{{ uri }}</span>. {{ labels['at'] | capitalize}}:_{{ access_location }}. [{{ labels['viewed'] }}:_{{date_accessed}}]."
28
+ inbook: "<smallcap>{{ creatornames }}</smallcap> ({{role}}) . {{ title }} . <em>{{host_title}}</em> ({{host_role}} {{ host_creatornames}}). {{ edition | capitalize_first }}. ({{ series }}). {% if place %}{{place}}{%else%}{{ labels['no_place']}}{%endif%}: {{publisher}}. {{date}}. {{size}}. {{extent}}. ._{{ labels['availablefrom'] }}:_<span_class='biburl'>{{ uri }}</span>. {{ labels['at_url'] | capitalize}}:_{{ access_location }}. [{{ labels['viewed'] }}:_{{date_accessed}}]."
29
29
  inproceedings: inbook
30
30
  incollection: inbook
31
- journal: "<em>{{ title}}</em> . {{ edition | capitalize_first }}. {{place}}: {{publisher}}. {{date}}. {{size}}. {{extent}}. ._{{ labels['availablefrom'] }}:_<span_class='biburl'>{{ uri }}</span>. {{ labels['at'] | capitalize}}:_{{ access_location }}. [{{ labels['viewed'] }}:_{{date_accessed}}]."
32
- article: "<smallcap>{{ creatornames }}</smallcap> ({{role}}) . {{ title }}. {{ series }} . {{date}}, {{ extent }}. {{ labels['updated'] | capitalize }}:_{{date_updated}}. ._{{ labels['availablefrom'] }}:_<span_class='biburl'>{{ uri }}</span>. {{ labels['at'] | capitalize}}:_{{ access_location }}. [{{ labels['viewed'] }}:_{{date_accessed}}]."
31
+ journal: "<em>{{ title}}</em> . {{ edition | capitalize_first }}. {{place}}: {{publisher}}. {{date}}. {{size}}. {{extent}}. ._{{ labels['availablefrom'] }}:_<span_class='biburl'>{{ uri }}</span>. {{ labels['at_url'] | capitalize}}:_{{ access_location }}. [{{ labels['viewed'] }}:_{{date_accessed}}]."
32
+ article: "<smallcap>{{ creatornames }}</smallcap> ({{role}}) . {{ title }}. {{ series }} . {{date}}, {{ extent }}. {{ labels['updated'] | capitalize }}:_{{date_updated}}. ._{{ labels['availablefrom'] }}:_<span_class='biburl'>{{ uri }}</span>. {{ labels['at_url'] | capitalize}}:_{{ access_location }}. [{{ labels['viewed'] }}:_{{date_accessed}}]."
33
33
  software: "<smallcap>{{ creatornames }}</smallcap> ({{ role}}) . <em>{{ title }}</em> . {{ labels['version'] | capitalize }}_{{ edition_raw }}. {{medium | capitalize}}. {{place}}: {{publisher}}. {{date}}. {{size}}. {{extent}}. {{ labels['updated'] | capitalize }}:_{{date_updated}}. ._{{ labels['availablefrom'] }}:_<span_class='biburl'>{{ uri }}</span>. [{{ labels['viewed'] }}:_{{date_accessed}}]. "
34
34
  electronic resource: software
35
- dataset: "<smallcap>{{ creatornames }}</smallcap> ({{ role }}) . <em>{{ title }}</em> . {{ labels['version'] | capitalize }}_{{ edition_raw }}. {{medium | capitalize }}. {{ labels['in'] | capitalize }}:_{{series}}. {{date}}. {{ labels['updated'] | capitalize }}:_{{date_updated}}. {{ authoritative_identifier | join '. ' }}. {{ other_identifier | join '. ' }}. ._{{ labels['availablefrom'] }}:_<span_class='biburl'>{{ uri }}</span>. {{ size }}. {{ extent}}. [{{ labels['viewed'] }}:_{{date_accessed}}]. "
35
+ dataset: "<smallcap>{{ creatornames }}</smallcap> ({{ role }}) . <em>{{ title }}</em> . {{ labels['version'] | capitalize }}_{{ edition_raw }}. {{medium | capitalize }}. {{ labels['in_series'] | capitalize }}:_{{series}}. {{date}}. {{ labels['updated'] | capitalize }}:_{{date_updated}}. {{ authoritative_identifier | join '. ' }}. {{ other_identifier | join '. ' }}. ._{{ labels['availablefrom'] }}:_<span_class='biburl'>{{ uri }}</span>. {{ size }}. {{ extent}}. [{{ labels['viewed'] }}:_{{date_accessed}}]. "
36
36
  webresource: website
37
- unpublished: "<smallcap>{{ creatornames }}</smallcap> ({{ role }}) . <em>{{ title }}</em> . {{ medium | capitalize }}. {{ date }}. {{ labels['at'] | capitalize}}:_{{ access_location }}. ._{{ labels['availablefrom'] }}:_<span_class='biburl'>{{ uri }}</span>. [{{ labels['viewed'] }}:_{{date_accessed}}]."
37
+ unpublished: "<smallcap>{{ creatornames }}</smallcap> ({{ role }}) . <em>{{ title }}</em> . {{ medium | capitalize }}. {{ date }}. {{ labels['at_url'] | capitalize}}:_{{ access_location }}. ._{{ labels['availablefrom'] }}:_<span_class='biburl'>{{ uri }}</span>. [{{ labels['viewed'] }}:_{{date_accessed}}]."
38
38
  presentation: unpublished
39
- thesis: "<smallcap>{{ creatornames }}</smallcap> ({{ role }}) . <em>{{ title }}</em> . {{ medium | capitalize }}. {{place}}: {{ publisher }}. {{ date }}. {{ labels['at'] | capitalize}}:_{{ access_location }}. ._{{ labels['availablefrom'] }}:_<span_class='biburl'>{{ uri }}</span>. [{{ labels['viewed'] }}:_{{date_accessed}}]."
39
+ thesis: "<smallcap>{{ creatornames }}</smallcap> ({{ role }}) . <em>{{ title }}</em> . {{ medium | capitalize }}. {{place}}: {{ publisher }}. {{ date }}. {{ labels['at_url'] | capitalize}}:_{{ access_location }}. ._{{ labels['availablefrom'] }}:_<span_class='biburl'>{{ uri }}</span>. [{{ labels['viewed'] }}:_{{date_accessed}}]."
40
40
  misc: "<smallcap>{{ creatornames }}</smallcap> ({{ role }}) . <em>{{ title }}</em> . {{ date }}."
41
41
  # following are # unsupported types:
42
42
  map: misc
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metanorma-iec
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.8.6
4
+ version: 2.8.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2026-05-13 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: metanorma-iso
@@ -290,7 +289,6 @@ homepage: https://github.com/metanorma/metanorma-iec
290
289
  licenses:
291
290
  - BSD-2-Clause
292
291
  metadata: {}
293
- post_install_message:
294
292
  rdoc_options: []
295
293
  require_paths:
296
294
  - lib
@@ -305,8 +303,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
305
303
  - !ruby/object:Gem::Version
306
304
  version: '0'
307
305
  requirements: []
308
- rubygems_version: 3.5.22
309
- signing_key:
306
+ rubygems_version: 4.0.10
310
307
  specification_version: 4
311
308
  summary: metanorma-iec lets you write IEC standards in AsciiDoc.
312
309
  test_files: []