metanorma-iec 1.2.4 → 1.2.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9b5b65151b0f1bdda67f0206c9e02f13dbbadefe58e8a63ccbafea9bf61af540
4
- data.tar.gz: a37b42bed9ac34b9a52b34f49742f0e37d2cf640517dc99ea991fef86b0b4b9e
3
+ metadata.gz: bbe7886647419d3d25efb24813d1686dee3bf8cd675b36be86cfb0450859bf06
4
+ data.tar.gz: 7a5ac01abe1bf59690b0be12d6e2a9d7a8a923ce9169e5549179a0f35747315c
5
5
  SHA512:
6
- metadata.gz: 6f38bd62a85f6ad02553c35af8cba7c77d65d484f114d7a7b5090b1562765164e91f06109ba48f3ec5a1953e166d22a947061bfa26865b9ff27bee83fa170cff
7
- data.tar.gz: 276a2c079699f9cfb02bad08dfcf5825a4e11b48cfc66c0c54256b1fa76089c8bb7039e2334a7656c21e84a10b6b535421ec9213df4f7b92d7de7e4fd44a3e81
6
+ metadata.gz: 73a29fac4f7691d1b20bb82e1a29108abdff82c26d980244fd2d84bd97e32cde6c234a3f0c46a175e6fa688df1702589ef911a7d6bfe4e11ae054da1bdc22520
7
+ data.tar.gz: 2392e4fe3f0efb9cb7a0dd419111263016b82a8df659e139571b70e88268afe5ea41db4f19ec710270265204ba1b3c895c3b544909b56ce7ce77d35607eb642b
@@ -158,17 +158,7 @@
158
158
  <data type="ID"/>
159
159
  </attribute>
160
160
  <oneOrMore>
161
- <choice>
162
- <ref name="formula"/>
163
- <ref name="ul"/>
164
- <ref name="ol"/>
165
- <ref name="dl"/>
166
- <ref name="quote"/>
167
- <ref name="sourcecode"/>
168
- <ref name="paragraph"/>
169
- <ref name="table"/>
170
- <ref name="figure"/>
171
- </choice>
161
+ <ref name="paragraph"/>
172
162
  </oneOrMore>
173
163
  </element>
174
164
  </define>
@@ -1028,6 +1018,9 @@
1028
1018
  <value>alphabet_upper</value>
1029
1019
  </choice>
1030
1020
  </attribute>
1021
+ <optional>
1022
+ <attribute name="start"/>
1023
+ </optional>
1031
1024
  <oneOrMore>
1032
1025
  <ref name="li"/>
1033
1026
  </oneOrMore>
@@ -23,6 +23,13 @@
23
23
  -->
24
24
  <define name="iec-standard">
25
25
  <element name="iec-standard">
26
+ <attribute name="version"/>
27
+ <attribute name="type">
28
+ <choice>
29
+ <value>semantic</value>
30
+ <value>presentation</value>
31
+ </choice>
32
+ </attribute>
26
33
  <ref name="bibdata"/>
27
34
  <zeroOrMore>
28
35
  <ref name="termdocsource"/>
@@ -64,6 +64,11 @@
64
64
  </choice>
65
65
  </attribute>
66
66
  </optional>
67
+ <optional>
68
+ <attribute name="droploc">
69
+ <data type="boolean"/>
70
+ </attribute>
71
+ </optional>
67
72
  <text/>
68
73
  </element>
69
74
  </define>
@@ -859,6 +864,13 @@
859
864
  </define>
860
865
  <define name="standard-document">
861
866
  <element name="standard-document">
867
+ <attribute name="version"/>
868
+ <attribute name="type">
869
+ <choice>
870
+ <value>semantic</value>
871
+ <value>presentation</value>
872
+ </choice>
873
+ </attribute>
862
874
  <ref name="bibdata"/>
863
875
  <optional>
864
876
  <ref name="boilerplate"/>
@@ -880,7 +892,7 @@
880
892
  <oneOrMore>
881
893
  <choice>
882
894
  <ref name="content"/>
883
- <ref name="preface_abstract"/>
895
+ <ref name="abstract"/>
884
896
  <ref name="foreword"/>
885
897
  <ref name="introduction"/>
886
898
  <ref name="acknowledgements"/>
@@ -1481,11 +1493,6 @@
1481
1493
  </optional>
1482
1494
  </element>
1483
1495
  </define>
1484
- <define name="preface_abstract">
1485
- <element name="abstract">
1486
- <ref name="Basic-Section"/>
1487
- </element>
1488
- </define>
1489
1496
  <define name="term-clause">
1490
1497
  <element name="clause">
1491
1498
  <optional>
@@ -253,7 +253,7 @@
253
253
  <define name="preface">
254
254
  <element name="preface">
255
255
  <optional>
256
- <ref name="preface_abstract"/>
256
+ <ref name="abstract"/>
257
257
  </optional>
258
258
  <ref name="foreword"/>
259
259
  <optional>
@@ -405,6 +405,13 @@
405
405
  -->
406
406
  <define name="iso-standard">
407
407
  <element name="iso-standard">
408
+ <attribute name="version"/>
409
+ <attribute name="type">
410
+ <choice>
411
+ <value>semantic</value>
412
+ <value>presentation</value>
413
+ </choice>
414
+ </attribute>
408
415
  <ref name="bibdata"/>
409
416
  <zeroOrMore>
410
417
  <ref name="termdocsource"/>
@@ -17,7 +17,7 @@
17
17
 
18
18
 
19
19
 
20
- <xsl:variable name="debug">false</xsl:variable>
20
+ <xsl:variable name="debug">true</xsl:variable>
21
21
  <xsl:variable name="pageWidth" select="'210mm'"/>
22
22
  <xsl:variable name="pageHeight" select="'297mm'"/>
23
23
 
@@ -90,7 +90,7 @@
90
90
  <xsl:variable name="docid">
91
91
  <xsl:call-template name="getDocumentId"/>
92
92
  </xsl:variable>
93
- <doc id="{$docid}">
93
+ <doc id="{$docid}" lang="{$lang}">
94
94
  <xsl:call-template name="generateContents"/>
95
95
  </doc>
96
96
 
@@ -108,7 +108,7 @@
108
108
  <xsl:variable name="docid">
109
109
  <xsl:call-template name="getDocumentId"/>
110
110
  </xsl:variable>
111
- <doc id="{$docid}">
111
+ <doc id="{$docid}" lang="{$lang}">
112
112
  <xsl:call-template name="generateContents"/>
113
113
  </doc>
114
114
  </xsl:for-each>
@@ -191,6 +191,10 @@
191
191
 
192
192
  <xsl:call-template name="addPDFUAmeta"/>
193
193
 
194
+ <xsl:call-template name="addBookmarks">
195
+ <xsl:with-param name="contents" select="$contents"/>
196
+ </xsl:call-template>
197
+
194
198
  <!-- For 'Published' documents insert two cover pages -->
195
199
  <xsl:if test="$stage &gt;= 60">
196
200
 
@@ -1184,7 +1188,7 @@
1184
1188
  </xsl:call-template>
1185
1189
  </fo:block>
1186
1190
 
1187
- <xsl:for-each select="xalan:nodeset($contents)//item"><!-- [@display = 'true']
1191
+ <xsl:for-each select="xalan:nodeset($contents)//item[@display = 'true']"><!-- [@display = 'true']
1188
1192
  [@level &lt;= 3]
1189
1193
  [not(@level = 2 and starts-with(@section, '0'))] skip clause from preface -->
1190
1194
  <fo:block text-align-last="justify">
@@ -1228,9 +1232,9 @@
1228
1232
  </fo:list-item-label>
1229
1233
  <fo:list-item-body start-indent="body-start()">
1230
1234
  <fo:block text-align-last="justify">
1231
- <fo:basic-link internal-destination="{@id}" fox:alt-text="{text()}">
1235
+ <fo:basic-link internal-destination="{@id}" fox:alt-text="{title}">
1232
1236
  <xsl:variable name="title">
1233
- <xsl:apply-templates/>
1237
+ <xsl:apply-templates select="title"/>
1234
1238
  </xsl:variable>
1235
1239
  <xsl:call-template name="addLetterSpacing">
1236
1240
  <xsl:with-param name="text" select="$title"/>
@@ -1387,39 +1391,48 @@
1387
1391
  </xsl:variable>
1388
1392
 
1389
1393
  <xsl:variable name="display">
1390
- <xsl:choose>
1391
- <xsl:when test="ancestor-or-self::iec:bibitem">false</xsl:when>
1392
- <xsl:when test="ancestor-or-self::iec:term">false</xsl:when>
1394
+ <xsl:choose>
1393
1395
  <xsl:when test="$level &gt; 3">false</xsl:when>
1394
1396
  <xsl:when test="$section = '' and $type = 'clause'">false</xsl:when><!-- don't show clause with number only in title -->
1395
1397
  <xsl:otherwise>true</xsl:otherwise>
1396
1398
  </xsl:choose>
1397
1399
  </xsl:variable>
1398
1400
 
1399
- <xsl:if test="$display = 'true'">
1401
+
1402
+ <xsl:variable name="skip">
1403
+ <xsl:choose>
1404
+ <xsl:when test="ancestor-or-self::iec:bibitem">true</xsl:when>
1405
+ <xsl:when test="ancestor-or-self::iec:term">true</xsl:when>
1406
+ <xsl:otherwise>false</xsl:otherwise>
1407
+ </xsl:choose>
1408
+ </xsl:variable>
1409
+
1410
+ <xsl:if test="$skip = 'false'">
1400
1411
 
1401
1412
  <xsl:variable name="title">
1402
1413
  <xsl:call-template name="getName"/>
1403
1414
  </xsl:variable>
1404
1415
 
1405
- <item id="{@id}" level="{$level}" section="{$section}" type="{$type}">
1416
+ <item id="{@id}" level="{$level}" section="{$section}" type="{$type}" display="{$display}">
1406
1417
  <xsl:if test="$type ='appendix'">
1407
1418
  <xsl:attribute name="section"/>
1408
1419
  </xsl:if>
1409
- <xsl:choose>
1410
- <xsl:when test="$type = 'foreword' or $type = 'introduction'">
1411
- <xsl:value-of select="java:toUpperCase(java:java.lang.String.new($title))"/>
1412
- </xsl:when>
1413
- <xsl:when test="$type = 'appendix'">
1414
- <xsl:apply-templates select="iec:title" mode="contents_item"/>
1415
- </xsl:when>
1416
- <xsl:otherwise>
1417
- <xsl:apply-templates select="xalan:nodeset($title)" mode="contents_item"/>
1418
- </xsl:otherwise>
1419
- </xsl:choose>
1420
-
1420
+ <title>
1421
+ <xsl:choose>
1422
+ <xsl:when test="$type = 'foreword' or $type = 'introduction'">
1423
+ <xsl:value-of select="java:toUpperCase(java:java.lang.String.new($title))"/>
1424
+ </xsl:when>
1425
+ <xsl:when test="$type = 'appendix'">
1426
+ <xsl:apply-templates select="iec:title" mode="contents_item"/>
1427
+ </xsl:when>
1428
+ <xsl:otherwise>
1429
+ <xsl:apply-templates select="xalan:nodeset($title)" mode="contents_item"/>
1430
+ </xsl:otherwise>
1431
+ </xsl:choose>
1432
+ </title>
1433
+ <xsl:apply-templates mode="contents"/>
1421
1434
  </item>
1422
- <xsl:apply-templates mode="contents"/>
1435
+
1423
1436
  </xsl:if>
1424
1437
 
1425
1438
  </xsl:template>
@@ -2136,6 +2149,12 @@
2136
2149
 
2137
2150
  </title-edition>
2138
2151
 
2152
+ <title-edition lang="fr">
2153
+
2154
+ <xsl:text>Édition </xsl:text>
2155
+
2156
+ </title-edition>
2157
+
2139
2158
 
2140
2159
  <title-toc lang="en">
2141
2160
 
@@ -2248,7 +2267,9 @@
2248
2267
  <xsl:value-of select="$titles/*[local-name() = $name][@lang = 'en']"/>
2249
2268
  </xsl:otherwise>
2250
2269
  </xsl:choose>
2251
- </xsl:template><xsl:variable name="lower">abcdefghijklmnopqrstuvwxyz</xsl:variable><xsl:variable name="upper">ABCDEFGHIJKLMNOPQRSTUVWXYZ</xsl:variable><xsl:variable name="en_chars" select="concat($lower,$upper,',.`1234567890-=~!@#$%^*()_+[]{}\|?/')"/><xsl:variable name="linebreak" select="'&#8232;'"/><xsl:attribute-set name="link-style">
2270
+ </xsl:template><xsl:variable name="lower">abcdefghijklmnopqrstuvwxyz</xsl:variable><xsl:variable name="upper">ABCDEFGHIJKLMNOPQRSTUVWXYZ</xsl:variable><xsl:variable name="en_chars" select="concat($lower,$upper,',.`1234567890-=~!@#$%^*()_+[]{}\|?/')"/><xsl:variable name="linebreak" select="'&#8232;'"/><xsl:attribute-set name="root-style">
2271
+
2272
+ </xsl:attribute-set><xsl:attribute-set name="link-style">
2252
2273
 
2253
2274
 
2254
2275
 
@@ -4252,12 +4273,128 @@
4252
4273
 
4253
4274
  <fo:external-graphic src="{$src}" fox:alt-text="Image {@alt}" xsl:use-attribute-sets="image-graphic-style"/>
4254
4275
  </fo:block>
4255
- </xsl:template><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name'] | *[local-name() = 'table']/*[local-name() = 'name'] | *[local-name() = 'permission']/*[local-name() = 'name'] | *[local-name() = 'recommendation']/*[local-name() = 'name'] | *[local-name() = 'requirement']/*[local-name() = 'name']" mode="contents">
4276
+ </xsl:template><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name'] | *[local-name() = 'table']/*[local-name() = 'name'] | *[local-name() = 'permission']/*[local-name() = 'name'] | *[local-name() = 'recommendation']/*[local-name() = 'name'] | *[local-name() = 'requirement']/*[local-name() = 'name']" mode="contents">
4256
4277
  <xsl:apply-templates mode="contents"/>
4257
4278
  <xsl:text> </xsl:text>
4258
- </xsl:template><xsl:template match="text()" mode="contents">
4279
+ </xsl:template><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name'] | *[local-name() = 'table']/*[local-name() = 'name'] | *[local-name() = 'permission']/*[local-name() = 'name'] | *[local-name() = 'recommendation']/*[local-name() = 'name'] | *[local-name() = 'requirement']/*[local-name() = 'name']" mode="bookmarks">
4280
+ <xsl:apply-templates mode="bookmarks"/>
4281
+ <xsl:text> </xsl:text>
4282
+ </xsl:template><xsl:template match="*[local-name() = 'name']/text()" mode="contents" priority="2">
4259
4283
  <xsl:value-of select="."/>
4260
- </xsl:template><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name'] | *[local-name() = 'image']/*[local-name() = 'name']" mode="presentation">
4284
+ </xsl:template><xsl:template match="*[local-name() = 'name']/text()" mode="bookmarks" priority="2">
4285
+ <xsl:value-of select="."/>
4286
+ </xsl:template><xsl:template match="node()" mode="contents">
4287
+ <xsl:apply-templates mode="contents"/>
4288
+ </xsl:template><xsl:template match="node()" mode="bookmarks">
4289
+ <xsl:apply-templates mode="bookmarks"/>
4290
+ </xsl:template><xsl:template match="*[local-name() = 'stem']" mode="contents">
4291
+ <xsl:apply-templates select="."/>
4292
+ </xsl:template><xsl:template match="*[local-name() = 'stem']" mode="bookmarks">
4293
+ <xsl:apply-templates mode="bookmarks"/>
4294
+ </xsl:template><xsl:template name="addBookmarks">
4295
+ <xsl:param name="contents"/>
4296
+ <xsl:if test="xalan:nodeset($contents)//item">
4297
+ <fo:bookmark-tree>
4298
+ <xsl:choose>
4299
+ <xsl:when test="xalan:nodeset($contents)/doc">
4300
+ <xsl:choose>
4301
+ <xsl:when test="count(xalan:nodeset($contents)/doc) &gt; 1">
4302
+ <xsl:for-each select="xalan:nodeset($contents)/doc">
4303
+ <fo:bookmark internal-destination="{contents/item[1]/@id}" starting-state="hide">
4304
+ <fo:bookmark-title>
4305
+ <xsl:variable name="bookmark-title_">
4306
+ <xsl:choose>
4307
+ <xsl:when test="@lang = 'en'">
4308
+ English
4309
+
4310
+ </xsl:when>
4311
+ <xsl:when test="@lang = 'fr'">
4312
+ Français
4313
+
4314
+ </xsl:when>
4315
+ <xsl:when test="@lang = 'de'">Deutsche</xsl:when>
4316
+ <xsl:otherwise><xsl:value-of select="@lang"/> version</xsl:otherwise>
4317
+ </xsl:choose>
4318
+ </xsl:variable>
4319
+ <xsl:choose>
4320
+ <xsl:when test="normalize-space($bookmark-title_) != ''">
4321
+ <xsl:value-of select="normalize-space($bookmark-title_)"/>
4322
+ </xsl:when>
4323
+ <xsl:otherwise>
4324
+ <xsl:choose>
4325
+ <xsl:when test="@lang = 'en'">English</xsl:when>
4326
+ <xsl:when test="@lang = 'fr'">Français</xsl:when>
4327
+ <xsl:when test="@lang = 'de'">Deutsche</xsl:when>
4328
+ <xsl:otherwise><xsl:value-of select="@lang"/> version</xsl:otherwise>
4329
+ </xsl:choose>
4330
+ </xsl:otherwise>
4331
+ </xsl:choose>
4332
+ </fo:bookmark-title>
4333
+ <xsl:apply-templates select="contents/item" mode="bookmark"/>
4334
+ </fo:bookmark>
4335
+
4336
+ </xsl:for-each>
4337
+ </xsl:when>
4338
+ <xsl:otherwise>
4339
+ <xsl:for-each select="xalan:nodeset($contents)/doc">
4340
+ <xsl:apply-templates select="contents/item" mode="bookmark"/>
4341
+ </xsl:for-each>
4342
+ </xsl:otherwise>
4343
+ </xsl:choose>
4344
+ </xsl:when>
4345
+ <xsl:otherwise>
4346
+ <xsl:apply-templates select="xalan:nodeset($contents)/contents/item" mode="bookmark"/>
4347
+ </xsl:otherwise>
4348
+ </xsl:choose>
4349
+
4350
+
4351
+
4352
+ <xsl:if test="//*[local-name() = 'figure'][@id and *[local-name() = 'name']]">
4353
+ <fo:bookmark internal-destination="{//*[local-name() = 'figure'][@id and *[local-name() = 'name']][1]/@id}" starting-state="hide">
4354
+ <fo:bookmark-title>Figures</fo:bookmark-title>
4355
+ <xsl:for-each select="//*[local-name() = 'figure'][@id and *[local-name() = 'name']]">
4356
+ <fo:bookmark internal-destination="{@id}">
4357
+ <fo:bookmark-title><xsl:apply-templates select="*[local-name() = 'name']/text()" mode="bookmarks"/></fo:bookmark-title>
4358
+ </fo:bookmark>
4359
+ </xsl:for-each>
4360
+ </fo:bookmark>
4361
+ </xsl:if>
4362
+
4363
+
4364
+
4365
+ <xsl:if test="//*[local-name() = 'table'][@id and *[local-name() = 'name']]">
4366
+ <fo:bookmark internal-destination="{//*[local-name() = 'table'][@id and *[local-name() = 'name']][1]/@id}" starting-state="hide">
4367
+ <fo:bookmark-title>
4368
+ <xsl:choose>
4369
+ <xsl:when test="@lang = 'fr'">Tableaux</xsl:when>
4370
+ <xsl:otherwise>Tables</xsl:otherwise>
4371
+ </xsl:choose>
4372
+ </fo:bookmark-title>
4373
+ <xsl:for-each select="//*[local-name() = 'table'][@id and *[local-name() = 'name']]">
4374
+ <fo:bookmark internal-destination="{@id}">
4375
+ <fo:bookmark-title><xsl:apply-templates select="*[local-name() = 'name']//text()" mode="bookmarks"/></fo:bookmark-title>
4376
+ </fo:bookmark>
4377
+ </xsl:for-each>
4378
+ </fo:bookmark>
4379
+ </xsl:if>
4380
+
4381
+
4382
+
4383
+
4384
+ </fo:bookmark-tree>
4385
+ </xsl:if>
4386
+ </xsl:template><xsl:template match="item" mode="bookmark">
4387
+ <fo:bookmark internal-destination="{@id}" starting-state="hide">
4388
+ <fo:bookmark-title>
4389
+ <xsl:if test="@section != ''">
4390
+ <xsl:value-of select="@section"/>
4391
+ <xsl:text> </xsl:text>
4392
+ </xsl:if>
4393
+ <xsl:value-of select="normalize-space(title)"/>
4394
+ </fo:bookmark-title>
4395
+ <xsl:apply-templates mode="bookmark"/>
4396
+ </fo:bookmark>
4397
+ </xsl:template><xsl:template match="title" mode="bookmark"/><xsl:template match="text()" mode="bookmark"/><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name'] | *[local-name() = 'image']/*[local-name() = 'name']" mode="presentation">
4261
4398
  <xsl:if test="normalize-space() != ''">
4262
4399
  <fo:block xsl:use-attribute-sets="figure-name-style">
4263
4400
 
@@ -4315,7 +4452,7 @@
4315
4452
  <xsl:apply-templates/>
4316
4453
  </xsl:otherwise>
4317
4454
  </xsl:choose>
4318
- </xsl:template><xsl:template match="*[local-name() = 'fn']" mode="contents"/><xsl:template match="*[local-name() = 'fn']" mode="contents_item"/><xsl:template match="*[local-name() = 'tab']" mode="contents_item">
4455
+ </xsl:template><xsl:template match="*[local-name() = 'fn']" mode="contents"/><xsl:template match="*[local-name() = 'fn']" mode="bookmarks"/><xsl:template match="*[local-name() = 'fn']" mode="contents_item"/><xsl:template match="*[local-name() = 'tab']" mode="contents_item">
4319
4456
  <xsl:text> </xsl:text>
4320
4457
  </xsl:template><xsl:template match="*[local-name() = 'strong']" mode="contents_item">
4321
4458
  <xsl:copy>
@@ -4919,20 +5056,29 @@
4919
5056
  <!-- 0xA0 to space replacement -->
4920
5057
  <xsl:value-of select="java:replaceAll(java:java.lang.String.new(.),' ',' ')"/>
4921
5058
  </xsl:template><xsl:template match="*[local-name() = 'ul'] | *[local-name() = 'ol']">
4922
- <fo:block-container margin-left="0mm">
4923
- <xsl:if test="parent::*[local-name() = 'note']">
4924
- <xsl:attribute name="margin-left">
4925
- <xsl:choose>
4926
- <xsl:when test="not(ancestor::*[local-name() = 'table'])"><xsl:value-of select="$note-body-indent"/></xsl:when>
4927
- <xsl:otherwise><xsl:value-of select="$note-body-indent-table"/></xsl:otherwise>
4928
- </xsl:choose>
4929
- </xsl:attribute>
4930
-
4931
- </xsl:if>
4932
- <fo:block-container margin-left="0mm">
4933
- <xsl:apply-templates select="." mode="ul_ol"/>
4934
- </fo:block-container>
4935
- </fo:block-container>
5059
+ <xsl:choose>
5060
+ <xsl:when test="parent::*[local-name() = 'note']">
5061
+ <fo:block-container>
5062
+ <xsl:attribute name="margin-left">
5063
+ <xsl:choose>
5064
+ <xsl:when test="not(ancestor::*[local-name() = 'table'])"><xsl:value-of select="$note-body-indent"/></xsl:when>
5065
+ <xsl:otherwise><xsl:value-of select="$note-body-indent-table"/></xsl:otherwise>
5066
+ </xsl:choose>
5067
+ </xsl:attribute>
5068
+
5069
+ <fo:block-container margin-left="0mm">
5070
+ <fo:block>
5071
+ <xsl:apply-templates select="." mode="ul_ol"/>
5072
+ </fo:block>
5073
+ </fo:block-container>
5074
+ </fo:block-container>
5075
+ </xsl:when>
5076
+ <xsl:otherwise>
5077
+ <fo:block>
5078
+ <xsl:apply-templates select="." mode="ul_ol"/>
5079
+ </fo:block>
5080
+ </xsl:otherwise>
5081
+ </xsl:choose>
4936
5082
  </xsl:template><xsl:template match="*[local-name() = 'errata']">
4937
5083
  <!-- <row>
4938
5084
  <date>05-07-2013</date>
@@ -5228,6 +5374,7 @@
5228
5374
 
5229
5375
 
5230
5376
 
5377
+
5231
5378
  </xsl:variable>
5232
5379
  <xsl:if test="$documentNS != $XSLNS">
5233
5380
  <xsl:message>[WARNING]: Document namespace: '<xsl:value-of select="$documentNS"/>' doesn't equal to xslt namespace '<xsl:value-of select="$XSLNS"/>'</xsl:message>
@@ -5253,4 +5400,21 @@
5253
5400
  </xsl:otherwise>
5254
5401
  </xsl:choose>
5255
5402
  </xsl:attribute>
5403
+ </xsl:template><xsl:template name="add-letter-spacing">
5404
+ <xsl:param name="text"/>
5405
+ <xsl:param name="letter-spacing" select="'0.15'"/>
5406
+ <xsl:if test="string-length($text) &gt; 0">
5407
+ <xsl:variable name="char" select="substring($text, 1, 1)"/>
5408
+ <fo:inline padding-right="{$letter-spacing}mm">
5409
+ <xsl:if test="$char = '®'">
5410
+ <xsl:attribute name="font-size">58%</xsl:attribute>
5411
+ <xsl:attribute name="baseline-shift">30%</xsl:attribute>
5412
+ </xsl:if>
5413
+ <xsl:value-of select="$char"/>
5414
+ </fo:inline>
5415
+ <xsl:call-template name="add-letter-spacing">
5416
+ <xsl:with-param name="text" select="substring($text, 2)"/>
5417
+ <xsl:with-param name="letter-spacing" select="$letter-spacing"/>
5418
+ </xsl:call-template>
5419
+ </xsl:if>
5256
5420
  </xsl:template></xsl:stylesheet>
@@ -1,6 +1,6 @@
1
1
  module Metanorma
2
2
  module Iec
3
- VERSION = "1.2.4"
3
+ VERSION = "1.2.5"
4
4
  end
5
5
  end
6
6
 
@@ -29,7 +29,7 @@ Gem::Specification.new do |spec|
29
29
 
30
30
  spec.add_dependency "ruby-jing"
31
31
  spec.add_dependency "isodoc", "~> 1.2.0"
32
- spec.add_dependency "metanorma-iso", "~> 1.5.0"
32
+ spec.add_dependency "metanorma-iso", "~> 1.5.9"
33
33
 
34
34
  spec.add_development_dependency "byebug"
35
35
  spec.add_development_dependency "sassc", "2.4.0"
@@ -89,7 +89,7 @@ RSpec.describe Asciidoctor::Iec do
89
89
  :library-ics: 1,2,3
90
90
  INPUT
91
91
  <?xml version="1.0" encoding="UTF-8"?>
92
- <iec-standard xmlns="https://www.metanorma.org/ns/iec">
92
+ <iec-standard xmlns="https://www.metanorma.org/ns/iec" type="semantic" version="#{Metanorma::Iec::VERSION}">
93
93
  <bibdata type="standard">
94
94
  <title language="en" format="text/plain" type="main">Introduction — Main Title — Title — Title Part</title>
95
95
  <title language="en" format="text/plain" type="title-intro">Introduction</title>
@@ -188,7 +188,7 @@ RSpec.describe Asciidoctor::Iec do
188
188
  :doctype: technical-specification
189
189
  INPUT
190
190
  <?xml version="1.0" encoding="UTF-8"?>
191
- <iec-standard xmlns="https://www.metanorma.org/ns/iec">
191
+ <iec-standard xmlns="https://www.metanorma.org/ns/iec" type="semantic" version="#{Metanorma::Iec::VERSION}">
192
192
  <bibdata type="standard">
193
193
  <docidentifier type="ISO">ISO/IEC/IETF/2CDTS 1000-1-1 ED 1</docidentifier>
194
194
  <docidentifier type="iso-tc">2000</docidentifier>
@@ -336,7 +336,7 @@ RSpec.describe Asciidoctor::Iec do
336
336
  :docnumber: 1000
337
337
  :docstage: 50
338
338
  INPUT
339
- <iec-standard xmlns="https://www.metanorma.org/ns/iec">
339
+ <iec-standard xmlns="https://www.metanorma.org/ns/iec" type="semantic" version="#{Metanorma::Iec::VERSION}">
340
340
  <bibdata type="standard">
341
341
  <docidentifier type="ISO">IEC/FDIS 1000 ED 1</docidentifier>
342
342
  <docnumber>1000</docnumber>
@@ -400,7 +400,7 @@ OUTPUT
400
400
  :docnumber: 1000
401
401
  :docstage: 60
402
402
  INPUT
403
- <iec-standard xmlns="https://www.metanorma.org/ns/iec">
403
+ <iec-standard xmlns="https://www.metanorma.org/ns/iec" type="semantic" version="#{Metanorma::Iec::VERSION}">
404
404
  <bibdata type="standard">
405
405
  <docidentifier type="ISO">IEC 1000 ED 1</docidentifier>
406
406
  <docnumber>1000</docnumber>
@@ -465,7 +465,7 @@ OUTPUT
465
465
  :docstage: 60
466
466
  :docsubstage: 00
467
467
  INPUT
468
- <iec-standard xmlns="https://www.metanorma.org/ns/iec">
468
+ <iec-standard xmlns="https://www.metanorma.org/ns/iec" type="semantic" version="#{Metanorma::Iec::VERSION}">
469
469
  <bibdata type="standard">
470
470
  <docidentifier type="ISO">IEC 1000 ED 1</docidentifier>
471
471
  <docnumber>1000</docnumber>
@@ -18,7 +18,7 @@ RSpec.describe Asciidoctor::Iec do
18
18
  * [[[A,B]]], _TITLE_
19
19
  INPUT
20
20
  <?xml version='1.0' encoding='UTF-8'?>
21
- <iec-standard xmlns='https://www.metanorma.org/ns/iec'>
21
+ <iec-standard xmlns='https://www.metanorma.org/ns/iec' type="semantic" version="#{Metanorma::Iec::VERSION}">
22
22
  <bibdata type='standard'>
23
23
  <docidentifier type='ISO'>IEC 60050 ED 1</docidentifier>
24
24
  <docnumber>60050</docnumber>
@@ -96,7 +96,7 @@ RSpec.describe Asciidoctor::Iec do
96
96
  === General
97
97
  ==== Term 1
98
98
  INPUT
99
- <iec-standard xmlns='https://www.metanorma.org/ns/iec'>
99
+ <iec-standard xmlns='https://www.metanorma.org/ns/iec' type="semantic" version="#{Metanorma::Iec::VERSION}">
100
100
  <bibdata type='standard'>
101
101
  <docidentifier type='ISO'>IEC 60050 ED 1</docidentifier>
102
102
  <docnumber>60050</docnumber>
@@ -174,7 +174,7 @@ OUTPUT
174
174
  Text
175
175
  INPUT
176
176
  <?xml version='1.0' encoding='UTF-8'?>
177
- <iec-standard xmlns='https://www.metanorma.org/ns/iec'>
177
+ <iec-standard xmlns='https://www.metanorma.org/ns/iec' type="semantic" version="#{Metanorma::Iec::VERSION}">
178
178
  <bibdata type='standard'>
179
179
  <docidentifier type='ISO'>IEC 60050 ED 1</docidentifier>
180
180
  <docnumber>60050</docnumber>
@@ -177,7 +177,7 @@ RSpec.describe IsoDoc::Iec do
177
177
  </sections>
178
178
  </iso-standard>
179
179
  INPUT
180
- <iso-standard xmlns='http://riboseinc.com/isoxml'>
180
+ <iso-standard xmlns='http://riboseinc.com/isoxml' type="presentation">
181
181
  <preface>
182
182
  <foreword>
183
183
  <p>
@@ -73,11 +73,15 @@ RSpec.describe IsoDoc do
73
73
  INPUT
74
74
 
75
75
  presxml = <<~OUTPUT
76
- <iso-standard xmlns="http://riboseinc.com/isoxml">
76
+ <iso-standard xmlns="http://riboseinc.com/isoxml" type="presentation">
77
77
  <bibdata>
78
78
  <docnumber>1</docnumber>
79
79
  <language>en</language>
80
80
  </bibdata>
81
+ <local_bibdata>
82
+ <docnumber>1</docnumber>
83
+ <language>en</language>
84
+ </local_bibdata>
81
85
  <preface>
82
86
  <foreword obligation="informative">
83
87
  <title>Foreword</title>
@@ -289,10 +293,13 @@ RSpec.describe IsoDoc do
289
293
  </bibliography>
290
294
  </iso-standard>
291
295
  INPUT
292
- <iso-standard xmlns='http://riboseinc.com/isoxml'>
296
+ <iso-standard xmlns='http://riboseinc.com/isoxml' type="presentation">
293
297
  <bibdata>
294
298
  <language>tlh</language>
295
299
  </bibdata>
300
+ <local_bibdata>
301
+ <language>tlh</language>
302
+ </local_bibdata>
296
303
  <preface>
297
304
  <foreword obligation='informative'>
298
305
  <title>Foreword</title>
@@ -498,10 +505,13 @@ RSpec.describe IsoDoc do
498
505
  INPUT
499
506
 
500
507
  presxml = <<~OUTPUT
501
- <iso-standard xmlns="http://riboseinc.com/isoxml">
508
+ <iso-standard xmlns="http://riboseinc.com/isoxml" type="presentation">
502
509
  <bibdata>
503
510
  <language>fr</language>
504
511
  </bibdata>
512
+ <local_bibdata>
513
+ <language>fr</language>
514
+ </local_bibdata>
505
515
  <preface>
506
516
  <foreword obligation="informative">
507
517
  <title>Foreword</title>
@@ -22,11 +22,15 @@ RSpec.describe IsoDoc do
22
22
  INPUT
23
23
 
24
24
  presxml = <<~OUTPUT
25
- <iso-standard xmlns='http://riboseinc.com/isoxml'>
25
+ <iso-standard xmlns='http://riboseinc.com/isoxml' type="presentation">
26
26
  <bibdata>
27
27
  <docidentifier type='iso'>IEC/PWI 60050-871 ED 2</docidentifier>
28
28
  <docnumber>60050</docnumber>
29
29
  </bibdata>
30
+ <local_bibdata>
31
+ <docidentifier type='iso'>IEC/PWI 60050-871 ED 2</docidentifier>
32
+ <docnumber>60050</docnumber>
33
+ </local_bibdata>
30
34
  <preface>
31
35
  <foreword obligation='informative'>
32
36
  <title>Foreword</title>
@@ -142,7 +146,7 @@ OUTPUT
142
146
  </iec-standard>
143
147
  INPUT
144
148
  presxml = <<~OUTPUT
145
- <iec-standard xmlns='https://www.metanorma.org/ns/iec'>
149
+ <iec-standard xmlns='https://www.metanorma.org/ns/iec' type="presentation">
146
150
  <bibdata type='standard'>
147
151
  <docidentifier type='iso'>IEC 60050 ED 1</docidentifier>
148
152
  <docnumber>60050</docnumber>
@@ -187,6 +191,50 @@ OUTPUT
187
191
  </structuredidentifier>
188
192
  </ext>
189
193
  </bibdata>
194
+ <local_bibdata type='standard'>
195
+ <docidentifier type='iso'>IEC 60050 ED 1</docidentifier>
196
+ <docnumber>60050</docnumber>
197
+ <contributor>
198
+ <role type='author'/>
199
+ <organization>
200
+ <name>International Electrotechnical Commission</name>
201
+ <abbreviation>IEC</abbreviation>
202
+ </organization>
203
+ </contributor>
204
+ <contributor>
205
+ <role type='publisher'/>
206
+ <organization>
207
+ <name>International Electrotechnical Commission</name>
208
+ <abbreviation>IEC</abbreviation>
209
+ </organization>
210
+ </contributor>
211
+ <language>en</language>
212
+ <script>Latn</script>
213
+ <status>
214
+ <stage>60</stage>
215
+ <substage>60</substage>
216
+ </status>
217
+ <copyright>
218
+ <from>2020</from>
219
+ <owner>
220
+ <organization>
221
+ <name>International Electrotechnical Commission</name>
222
+ <abbreviation>IEC</abbreviation>
223
+ </organization>
224
+ </owner>
225
+ </copyright>
226
+ <ext>
227
+ <doctype>article</doctype>
228
+ <editorialgroup>
229
+ <technical-committee/>
230
+ <subcommittee/>
231
+ <workgroup/>
232
+ </editorialgroup>
233
+ <structuredidentifier>
234
+ <project-number>IEC 60050</project-number>
235
+ </structuredidentifier>
236
+ </ext>
237
+ </local_bibdata>
190
238
  <sections> </sections>
191
239
  <bibliography>
192
240
  <references obligation='informative' normative='true' id="X">
@@ -290,11 +338,15 @@ OUTPUT
290
338
  INPUT
291
339
 
292
340
  presxml = <<~INPUT
293
- <iso-standard xmlns="http://riboseinc.com/isoxml">
341
+ <iso-standard xmlns="http://riboseinc.com/isoxml" type="presentation">
294
342
  <bibdata type='standard'>
295
343
  <docidentifier type='ISO'>IEC 60050-192 ED 1</docidentifier>
296
344
  <docnumber>60050</docnumber>
297
345
  </bibdata>
346
+ <local_bibdata type='standard'>
347
+ <docidentifier type='ISO'>IEC 60050-192 ED 1</docidentifier>
348
+ <docnumber>60050</docnumber>
349
+ </local_bibdata>
298
350
  <sections>
299
351
  <clause id="_terms_and_definitions" obligation="normative"><title depth="1">1<tab/>Terms and definitions</title>
300
352
  <terms id="_general" obligation="normative"><title>192-01 General</title>
@@ -473,11 +525,15 @@ end
473
525
  </iso-standard>
474
526
  INPUT
475
527
  presxml = <<~OUTPUT
476
- <iso-standard xmlns='http://riboseinc.com/isoxml'>
528
+ <iso-standard xmlns='http://riboseinc.com/isoxml' type="presentation">
477
529
  <bibdata type='standard'>
478
530
  <docidentifier type='ISO'>IEC 60050-192 ED 1</docidentifier>
479
531
  <docnumber>60050</docnumber>
480
532
  </bibdata>
533
+ <local_bibdata type='standard'>
534
+ <docidentifier type='ISO'>IEC 60050-192 ED 1</docidentifier>
535
+ <docnumber>60050</docnumber>
536
+ </local_bibdata>
481
537
  <sections>
482
538
  <clause id='_terms_and_definitions' obligation='normative'>
483
539
  <title depth='1'>1<tab/>Terms and definitions</title>
@@ -185,7 +185,7 @@ expect(xmlpp(IsoDoc::Iec::PresentationXMLConvert.new({}).convert("test", <<~"INP
185
185
  </iso-standard>
186
186
  INPUT
187
187
  <?xml version='1.0'?>
188
- <iso-standard xmlns='http://riboseinc.com/isoxml'>
188
+ <iso-standard xmlns='http://riboseinc.com/isoxml' type="presentation">
189
189
  <preface>
190
190
  <foreword>
191
191
  <p>
@@ -126,10 +126,13 @@ RSpec.describe IsoDoc::Iec do
126
126
  INPUT
127
127
 
128
128
  presxml = <<~OUTPUT
129
- <iso-standard xmlns="http://riboseinc.com/isoxml">
129
+ <iso-standard xmlns="http://riboseinc.com/isoxml" type="presentation">
130
130
  <bibdata>
131
131
  <language>en</language>
132
132
  </bibdata>
133
+ <local_bibdata>
134
+ <language>en</language>
135
+ </local_bibdata>
133
136
  <preface><foreword>
134
137
  <p id="_f06fd0d1-a203-4f3d-a515-0bdba0f8d83f">
135
138
  <eref bibitemid="ISO712">[110]</eref>
@@ -69,7 +69,7 @@ RSpec.describe IsoDoc do
69
69
  INPUT
70
70
 
71
71
  presxml = <<~OUTPUT
72
- <iso-standard xmlns="http://riboseinc.com/isoxml">
72
+ <iso-standard xmlns="http://riboseinc.com/isoxml" type="presentation">
73
73
  <preface>
74
74
  <foreword obligation="informative">
75
75
  <title>Foreword</title>
@@ -327,7 +327,7 @@ OUTPUT
327
327
  </sections>
328
328
  </iso-standard>
329
329
  INPUT
330
- <iso-standard xmlns='http://riboseinc.com/isoxml'>
330
+ <iso-standard xmlns='http://riboseinc.com/isoxml' type="presentation">
331
331
  <sections>
332
332
  <clause id='D' obligation='normative'>
333
333
  <title depth='1'>
@@ -54,7 +54,7 @@ RSpec.describe IsoDoc do
54
54
  </iso-standard>
55
55
  INPUT
56
56
  presxml = <<~INPUT
57
- <iso-standard xmlns="http://riboseinc.com/isoxml">
57
+ <iso-standard xmlns="http://riboseinc.com/isoxml" type="presentation">
58
58
  <sections>
59
59
  <terms id="_terms_and_definitions" obligation="normative"><title depth="1">1<tab/>Terms and definitions</title>
60
60
 
@@ -141,7 +141,7 @@ UNPUBLISHED_BOILERPLATE = BOILERPLATE.sub(/<\/boilerplate>/, "#{BOILERPLATE_LICE
141
141
 
142
142
  BLANK_HDR = <<~"HDR"
143
143
  <?xml version="1.0" encoding="UTF-8"?>
144
- <iec-standard xmlns="https://www.metanorma.org/ns/iec">
144
+ <iec-standard xmlns="https://www.metanorma.org/ns/iec" type="semantic" version="#{Metanorma::Iec::VERSION}">
145
145
  <bibdata type="standard">
146
146
  <contributor>
147
147
  <role type="author"/>
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metanorma-iec
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.4
4
+ version: 1.2.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-09-11 00:00:00.000000000 Z
11
+ date: 2020-09-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ruby-jing
@@ -44,14 +44,14 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 1.5.0
47
+ version: 1.5.9
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: 1.5.0
54
+ version: 1.5.9
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: byebug
57
57
  requirement: !ruby/object:Gem::Requirement