metanorma-m3aawg 2.2.3 → 2.2.4

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: daee9c6cb2f4a9ca2f0ba3848ff1b40c876d891781c03c65ea9a439154db640d
4
- data.tar.gz: d5e1cafea8eab1a2b4169c32b96be652aa6befdeb12f3eb85594fc69c8859ebd
3
+ metadata.gz: 20ccba6b8dcbacdb98acd212ad5b39fd551ea3eca04312e45b6ed1f0ca1ca756
4
+ data.tar.gz: f60b3e61fe706e7d491669fc1d67c263c917b19249d9d406b9985e3ad8ffb1a4
5
5
  SHA512:
6
- metadata.gz: 38608fd80156d3152c9c1e8ea86bed27e719cc608123f8dc1f6bcb5e5cccd86bb884144b26e069d617ddb90d18f352d75d0d8793745bc3eb891dd67a78616afb
7
- data.tar.gz: 24d9bb5565baeaea25991ed54a4f13cac425fb23618a371279eac9e62f9fdc5e30ae0cf2d31245bc4d4a409862f31894257f3ed8400b5df392ae2119a002886d
6
+ metadata.gz: d5d9c93276b937d88dcea515b646316aa6bb9556dd1f07cf9f37086e4d51745c3aa49dce7f075cdd89c5de75ce669adee1971ae4013870fb11175b791049fc99
7
+ data.tar.gz: 14ab48069ae129ccbe77be12cfcb442c5cc2d211dc908163d502372cc48381fd5a14e18d8d8d3b21c6456b012c98e427a26df5ec6d39104ef1ad464982c6936a
@@ -450,6 +450,10 @@ div.figure {
450
450
  max-width: 100%;
451
451
  height: auto; }
452
452
 
453
+ table div.figure {
454
+ padding: 0;
455
+ margin: 0; }
456
+
453
457
  /*
454
458
  Document types + stages
455
459
  */
@@ -102,6 +102,12 @@ div.figure {
102
102
  margin: 2em 0 2em -1em;
103
103
  }
104
104
 
105
+ table div.figure {
106
+ padding: 0;
107
+ margin: 0;
108
+ }
109
+
110
+
105
111
  /*
106
112
  Document types + stages
107
113
  */
@@ -10,8 +10,8 @@ module IsoDoc
10
10
  Metanorma::M3AAWG.configuration
11
11
  end
12
12
 
13
- def colophon(body, _docxml)
14
- body.div **{ class: "colophon" } do |div|
13
+ def colophon(_docxml, body)
14
+ body.div class: "colophon" do |div|
15
15
  div << <<~"COLOPHON"
16
16
  <p>As with all M<sup>3</sup>AAWG documents that we publish,
17
17
  please check the M<sup>3</sup>AAWG website
@@ -23,17 +23,6 @@ module IsoDoc
23
23
  end
24
24
  end
25
25
 
26
- def make_body(xml, docxml)
27
- body_attr = { lang: "EN-US", link: "blue", vlink: "#954F72",
28
- "xml:lang": "EN-US", class: "container" }
29
- xml.body **body_attr do |body|
30
- make_body1(body, docxml)
31
- make_body2(body, docxml)
32
- make_body3(body, docxml)
33
- colophon(body, docxml)
34
- end
35
- end
36
-
37
26
  include BaseRender
38
27
  include Init
39
28
  end
@@ -2410,7 +2410,7 @@
2410
2410
  <xsl:variable name="isDeleted" select="@deleted"/>
2411
2411
 
2412
2412
  <xsl:choose>
2413
- <xsl:when test="@width">
2413
+ <xsl:when test="@width and @width != 'full-page-width' and @width != 'text-width'">
2414
2414
 
2415
2415
  <!-- centered table when table name is centered (see table-name-style) -->
2416
2416
 
@@ -2735,6 +2735,7 @@
2735
2735
  This makes columns with large differences between minimum and maximum widths wider than columns with smaller differences. -->
2736
2736
  <xsl:when test="(@width_max &gt; $page_width and @width_min &lt; $page_width) or (@width_min &gt;= $page_width)">
2737
2737
  <!-- difference between the available space and the minimum table width -->
2738
+ <_width_min><xsl:value-of select="@width_min"/></_width_min>
2738
2739
  <xsl:variable name="W" select="$page_width - @width_min"/>
2739
2740
  <W><xsl:value-of select="$W"/></W>
2740
2741
  <!-- difference between maximum and minimum width of the table -->
@@ -3352,17 +3353,20 @@
3352
3353
  <xsl:for-each select="xalan:nodeset($references)//fn">
3353
3354
  <xsl:variable name="reference" select="@reference"/>
3354
3355
  <xsl:if test="not(preceding-sibling::*[@reference = $reference])"> <!-- only unique reference puts in note-->
3355
- <fo:block xsl:use-attribute-sets="table-fn-style">
3356
3356
 
3357
- <fo:inline id="{@id}" xsl:use-attribute-sets="table-fn-number-style">
3357
+ <fo:block xsl:use-attribute-sets="table-fn-style">
3358
3358
 
3359
- <xsl:value-of select="@reference"/>
3359
+ <fo:inline id="{@id}" xsl:use-attribute-sets="table-fn-number-style">
3360
+
3361
+ <xsl:value-of select="@reference"/>
3362
+
3363
+ </fo:inline>
3364
+ <fo:inline xsl:use-attribute-sets="table-fn-body-style">
3365
+ <xsl:copy-of select="./node()"/>
3366
+ </fo:inline>
3367
+
3368
+ </fo:block>
3360
3369
 
3361
- </fo:inline>
3362
- <fo:inline xsl:use-attribute-sets="table-fn-body-style">
3363
- <xsl:copy-of select="./node()"/>
3364
- </fo:inline>
3365
- </fo:block>
3366
3370
  </xsl:if>
3367
3371
  </xsl:for-each>
3368
3372
  </xsl:template>
@@ -4303,12 +4307,12 @@
4303
4307
  <xsl:param name="value"/>
4304
4308
  <xsl:variable name="add_width" select="string-length($value) * 20"/>
4305
4309
  <xsl:variable name="maxwidth" select="60 + $add_width"/>
4306
- <fo:instream-foreign-object fox:alt-text="OpeningTag" baseline-shift="-20%"><!-- alignment-baseline="middle" -->
4307
- <xsl:attribute name="height">5mm</xsl:attribute>
4310
+ <fo:instream-foreign-object fox:alt-text="OpeningTag" baseline-shift="-10%"><!-- alignment-baseline="middle" -->
4311
+ <xsl:attribute name="height">3.5mm</xsl:attribute> <!-- 5mm -->
4308
4312
  <xsl:attribute name="content-width">100%</xsl:attribute>
4309
4313
  <xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
4310
4314
  <xsl:attribute name="scaling">uniform</xsl:attribute>
4311
- <svg xmlns="http://www.w3.org/2000/svg" width="{$maxwidth + 32}" height="80">
4315
+ <!-- <svg xmlns="http://www.w3.org/2000/svg" width="{$maxwidth + 32}" height="80">
4312
4316
  <g>
4313
4317
  <xsl:if test="$type = 'closing' or $type = 'end'">
4314
4318
  <xsl:attribute name="transform">scale(-1 1) translate(-<xsl:value-of select="$maxwidth + 32"/>,0)</xsl:attribute>
@@ -4322,6 +4326,27 @@
4322
4326
  </xsl:if>
4323
4327
  <xsl:value-of select="$kind"/><tspan dy="10" font-size="30pt"><xsl:value-of select="$value"/></tspan>
4324
4328
  </text>
4329
+ </svg> -->
4330
+ <svg xmlns="http://www.w3.org/2000/svg" width="{$maxwidth + 32}" height="80">
4331
+ <g>
4332
+ <xsl:if test="$type = 'closing' or $type = 'end'">
4333
+ <xsl:attribute name="transform">scale(-1 1) translate(-<xsl:value-of select="$maxwidth + 32"/>,0)</xsl:attribute>
4334
+ </xsl:if>
4335
+ <polyline points="0,2.5 {$maxwidth},2.5 {$maxwidth + 20},40 {$maxwidth},77.5 0,77.5" stroke="black" stroke-width="5" fill="white"/>
4336
+ <line x1="9.5" y1="0" x2="9.5" y2="80" stroke="black" stroke-width="19"/>
4337
+ </g>
4338
+ <xsl:variable name="text_x">
4339
+ <xsl:choose>
4340
+ <xsl:when test="$type = 'closing' or $type = 'end'">28</xsl:when>
4341
+ <xsl:otherwise>22</xsl:otherwise>
4342
+ </xsl:choose>
4343
+ </xsl:variable>
4344
+ <text font-family="Arial" x="{$text_x}" y="50" font-size="40pt">
4345
+ <xsl:value-of select="$kind"/>
4346
+ </text>
4347
+ <text font-family="Arial" x="{$text_x + 33}" y="65" font-size="38pt">
4348
+ <xsl:value-of select="$value"/>
4349
+ </text>
4325
4350
  </svg>
4326
4351
  </fo:instream-foreign-object>
4327
4352
  </xsl:template>
@@ -4576,18 +4601,23 @@
4576
4601
 
4577
4602
  <xsl:template name="add-zero-spaces-java">
4578
4603
  <xsl:param name="text" select="."/>
4579
- <!-- add zero-width space (#x200B) after characters: dash, dot, colon, equal, underscore, em dash, thin space, arrow right -->
4580
- <xsl:variable name="text1" select="java:replaceAll(java:java.lang.String.new($text),'(-|\.|:|=|_|—| |→)','$1​')"/>
4604
+
4605
+ <!-- add zero-width space (#x200B) after dot with next non-digit -->
4606
+ <xsl:variable name="text1" select="java:replaceAll(java:java.lang.String.new($text),'(\.)([^\d\s])','$1​$2')"/>
4607
+ <!-- add zero-width space (#x200B) after characters: dash, equal, underscore, em dash, thin space, arrow right -->
4608
+ <xsl:variable name="text2" select="java:replaceAll(java:java.lang.String.new($text1),'(-|=|_|—| |→)','$1​')"/>
4609
+ <!-- add zero-width space (#x200B) after characters: colon, if there aren't digits after -->
4610
+ <xsl:variable name="text3" select="java:replaceAll(java:java.lang.String.new($text2),'(:)(\D)','$1​$2')"/>
4581
4611
  <!-- add zero-width space (#x200B) after characters: 'great than' -->
4582
- <xsl:variable name="text2" select="java:replaceAll(java:java.lang.String.new($text1), '(\u003e)(?!\u003e)', '$1​')"/><!-- negative lookahead: 'great than' not followed by 'great than' -->
4612
+ <xsl:variable name="text4" select="java:replaceAll(java:java.lang.String.new($text3), '(\u003e)(?!\u003e)', '$1​')"/><!-- negative lookahead: 'great than' not followed by 'great than' -->
4583
4613
  <!-- add zero-width space (#x200B) before characters: 'less than' -->
4584
- <xsl:variable name="text3" select="java:replaceAll(java:java.lang.String.new($text2), '(?&lt;!\u003c)(\u003c)', '​$1')"/> <!-- (?<!\u003c)(\u003c) --> <!-- negative lookbehind: 'less than' not preceeded by 'less than' -->
4614
+ <xsl:variable name="text5" select="java:replaceAll(java:java.lang.String.new($text4), '(?&lt;!\u003c)(\u003c)', '​$1')"/> <!-- (?<!\u003c)(\u003c) --> <!-- negative lookbehind: 'less than' not preceeded by 'less than' -->
4585
4615
  <!-- add zero-width space (#x200B) before character: { -->
4586
- <xsl:variable name="text4" select="java:replaceAll(java:java.lang.String.new($text3), '(?&lt;!\W)(\{)', '​$1')"/> <!-- negative lookbehind: '{' not preceeded by 'punctuation char' -->
4616
+ <xsl:variable name="text6" select="java:replaceAll(java:java.lang.String.new($text5), '(?&lt;!\W)(\{)', '​$1')"/> <!-- negative lookbehind: '{' not preceeded by 'punctuation char' -->
4587
4617
  <!-- add zero-width space (#x200B) after character: , -->
4588
- <xsl:variable name="text5" select="java:replaceAll(java:java.lang.String.new($text4), '(\,)(?!\d)', '$1​')"/> <!-- negative lookahead: ',' not followed by digit -->
4618
+ <xsl:variable name="text7" select="java:replaceAll(java:java.lang.String.new($text6), '(\,)(?!\d)', '$1​')"/> <!-- negative lookahead: ',' not followed by digit -->
4589
4619
 
4590
- <xsl:value-of select="$text5"/>
4620
+ <xsl:value-of select="$text7"/>
4591
4621
  </xsl:template>
4592
4622
 
4593
4623
  <xsl:template name="add-zero-spaces-link-java">
@@ -4596,7 +4626,9 @@
4596
4626
  <xsl:value-of select="java:replaceAll(java:java.lang.String.new($text), $regex_url_start, '$1')"/> <!-- http://. https:// or www. -->
4597
4627
  <xsl:variable name="url_continue" select="java:replaceAll(java:java.lang.String.new($text), $regex_url_start, '$2')"/>
4598
4628
  <!-- add zero-width space (#x200B) after characters: dash, dot, colon, equal, underscore, em dash, thin space -->
4599
- <xsl:value-of select="java:replaceAll(java:java.lang.String.new($url_continue),'(-|\.|:|=|_|—| |,|/)','$1​')"/>
4629
+ <xsl:variable name="url" select="java:replaceAll(java:java.lang.String.new($url_continue),'(-|\.|:|=|_|—| |,|/)','$1​')"/>
4630
+ <!-- remove zero-width space at the end -->
4631
+ <xsl:value-of select="java:replaceAll(java:java.lang.String.new($url), '​$', '')"/>
4600
4632
  </xsl:template>
4601
4633
 
4602
4634
  <!-- add zero space after dash character (for table's entries) -->
@@ -4733,7 +4765,7 @@
4733
4765
  </xsl:copy>
4734
4766
  </xsl:template>
4735
4767
 
4736
- <xsl:template match="*[local-name()='th' or local-name() = 'td'][not(*[local-name()='br']) and not(*[local-name()='p']) and not(*[local-name()='sourcecode'])]" mode="table-without-br">
4768
+ <xsl:template match="*[local-name()='th' or local-name() = 'td'][not(*[local-name()='br']) and not(*[local-name()='p']) and not(*[local-name()='sourcecode']) and not(*[local-name()='ul']) and not(*[local-name()='ol'])]" mode="table-without-br">
4737
4769
  <xsl:copy>
4738
4770
  <xsl:copy-of select="@*"/>
4739
4771
  <p>
@@ -4809,6 +4841,14 @@
4809
4841
  <xsl:value-of select="java:replaceAll(java:java.lang.String.new($text),' {2,}',' ')"/>
4810
4842
  </xsl:template>
4811
4843
 
4844
+ <xsl:template match="*[local-name()='th' or local-name()='td']//*[local-name() = 'ol' or local-name() = 'ul']" mode="table-without-br">
4845
+ <xsl:apply-templates mode="table-without-br"/>
4846
+ </xsl:template>
4847
+
4848
+ <xsl:template match="*[local-name()='th' or local-name()='td']//*[local-name() = 'li']" mode="table-without-br">
4849
+ <xsl:apply-templates mode="table-without-br"/>
4850
+ </xsl:template>
4851
+
4812
4852
  <!-- mode="table-without-br" -->
4813
4853
  <!-- ================================== -->
4814
4854
  <!-- END: Step 0. replace <br/> to <p>...</p> -->
@@ -5622,7 +5662,7 @@
5622
5662
 
5623
5663
  <fo:block-container id="{@id}" xsl:use-attribute-sets="note-style">
5624
5664
 
5625
- <fo:block-container margin-left="0mm">
5665
+ <fo:block-container margin-left="0mm" margin-right="0mm">
5626
5666
 
5627
5667
  <fo:block>
5628
5668
 
@@ -5802,11 +5842,14 @@
5802
5842
  <xsl:with-param name="isDeleted" select="$isDeleted"/>
5803
5843
  </xsl:call-template>
5804
5844
 
5845
+ <!-- Example: Dimensions in millimeters -->
5846
+ <xsl:apply-templates select="*[local-name() = 'note'][@type = 'units']"/>
5847
+
5805
5848
  <fo:block xsl:use-attribute-sets="figure-style">
5806
- <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
5849
+ <xsl:apply-templates select="node()[not(local-name() = 'name') and not(local-name() = 'note' and @type = 'units')]"/>
5807
5850
  </fo:block>
5808
5851
  <xsl:call-template name="fn_display_figure"/>
5809
- <xsl:for-each select="*[local-name() = 'note']">
5852
+ <xsl:for-each select="*[local-name() = 'note'][not(@type = 'units')]">
5810
5853
  <xsl:call-template name="note"/>
5811
5854
  </xsl:for-each>
5812
5855
 
@@ -6063,24 +6106,47 @@
6063
6106
 
6064
6107
  </xsl:when>
6065
6108
  <xsl:otherwise>
6066
- <fo:block xsl:use-attribute-sets="image-style">
6067
- <fo:instream-foreign-object fox:alt-text="{$alt-text}">
6068
- <xsl:attribute name="width">100%</xsl:attribute>
6069
- <xsl:attribute name="content-height">100%</xsl:attribute>
6070
- <xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
6071
- <xsl:variable name="svg_width" select="xalan:nodeset($svg_content)/*/@width"/>
6072
- <xsl:variable name="svg_height" select="xalan:nodeset($svg_content)/*/@height"/>
6073
- <!-- effective height 297 - 27.4 - 13 = 256.6 -->
6074
- <!-- effective width 210 - 12.5 - 25 = 172.5 -->
6075
- <!-- effective height / width = 1.48, 1.4 - with title -->
6076
- <xsl:if test="$svg_height &gt; ($svg_width * 1.4)"> <!-- for images with big height -->
6077
- <xsl:variable name="width" select="(($svg_width * 1.4) div $svg_height) * 100"/>
6078
- <xsl:attribute name="width"><xsl:value-of select="$width"/>%</xsl:attribute>
6079
- </xsl:if>
6080
- <xsl:attribute name="scaling">uniform</xsl:attribute>
6081
- <xsl:copy-of select="$svg_content"/>
6082
- </fo:instream-foreign-object>
6083
- </fo:block>
6109
+
6110
+ <xsl:variable name="element">
6111
+ <xsl:choose>
6112
+ <xsl:when test="ancestor::*[local-name() = 'tr'] and $isGenerateTableIF = 'true'">
6113
+ <fo:inline xsl:use-attribute-sets="image-style" text-align="left"/>
6114
+ </xsl:when>
6115
+ <xsl:otherwise>
6116
+ <fo:block xsl:use-attribute-sets="image-style">
6117
+ <xsl:if test="ancestor::*[local-name() = 'dt']">
6118
+ <xsl:attribute name="text-align">left</xsl:attribute>
6119
+ </xsl:if>
6120
+ </fo:block>
6121
+ </xsl:otherwise>
6122
+ </xsl:choose>
6123
+ </xsl:variable>
6124
+
6125
+ <xsl:for-each select="xalan:nodeset($element)/*">
6126
+ <xsl:copy>
6127
+ <xsl:copy-of select="@*"/>
6128
+ <!-- <fo:block xsl:use-attribute-sets="image-style"> -->
6129
+ <fo:instream-foreign-object fox:alt-text="{$alt-text}">
6130
+ <xsl:if test="$isGenerateTableIF = 'false'">
6131
+ <xsl:attribute name="width">100%</xsl:attribute>
6132
+ </xsl:if>
6133
+ <xsl:attribute name="content-height">100%</xsl:attribute>
6134
+ <xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
6135
+ <xsl:variable name="svg_width" select="xalan:nodeset($svg_content)/*/@width"/>
6136
+ <xsl:variable name="svg_height" select="xalan:nodeset($svg_content)/*/@height"/>
6137
+ <!-- effective height 297 - 27.4 - 13 = 256.6 -->
6138
+ <!-- effective width 210 - 12.5 - 25 = 172.5 -->
6139
+ <!-- effective height / width = 1.48, 1.4 - with title -->
6140
+ <xsl:if test="$svg_height &gt; ($svg_width * 1.4)"> <!-- for images with big height -->
6141
+ <xsl:variable name="width" select="(($svg_width * 1.4) div $svg_height) * 100"/>
6142
+ <xsl:attribute name="width"><xsl:value-of select="$width"/>%</xsl:attribute>
6143
+ </xsl:if>
6144
+ <xsl:attribute name="scaling">uniform</xsl:attribute>
6145
+ <xsl:copy-of select="$svg_content"/>
6146
+ </fo:instream-foreign-object>
6147
+ <!-- </fo:block> -->
6148
+ </xsl:copy>
6149
+ </xsl:for-each>
6084
6150
  </xsl:otherwise>
6085
6151
  </xsl:choose>
6086
6152
  </xsl:template>
@@ -6172,6 +6238,13 @@
6172
6238
  </xsl:for-each>
6173
6239
  </xsl:template>
6174
6240
 
6241
+ <!-- For the structures like: <dt><image src="" mimetype="image/svg+xml" height="" width=""><svg xmlns="http://www.w3.org/2000/svg" ... -->
6242
+ <xsl:template match="*[local-name() != 'figure']/*[local-name() = 'image'][*[local-name() = 'svg']]" priority="3">
6243
+ <xsl:for-each select="*[local-name() = 'svg']">
6244
+ <xsl:call-template name="image_svg"/>
6245
+ </xsl:for-each>
6246
+ </xsl:template>
6247
+
6175
6248
  <xsl:template match="*[local-name() = 'figure']/*[local-name() = 'image'][@mimetype = 'image/svg+xml' and @src[not(starts-with(., 'data:image/'))]]" priority="2">
6176
6249
  <xsl:variable name="svg_content" select="document(@src)"/>
6177
6250
  <xsl:variable name="name" select="ancestor::*[local-name() = 'figure']/*[local-name() = 'name']"/>
@@ -6310,6 +6383,8 @@
6310
6383
  <xsl:value-of select="."/>
6311
6384
  </xsl:template>
6312
6385
 
6386
+ <xsl:template match="*[local-name() = 'add'][starts-with(., $ace_tag)]/text()" mode="bookmarks" priority="3"/>
6387
+
6313
6388
  <xsl:template match="node()" mode="contents">
6314
6389
  <xsl:apply-templates mode="contents"/>
6315
6390
  </xsl:template>
@@ -6617,7 +6692,15 @@
6617
6692
  <xsl:value-of select="@section"/>
6618
6693
  <xsl:text> </xsl:text>
6619
6694
  </xsl:if>
6620
- <xsl:value-of select="normalize-space(title)"/>
6695
+ <xsl:variable name="title">
6696
+ <xsl:for-each select="title/node()">
6697
+ <xsl:choose>
6698
+ <xsl:when test="local-name() = 'add' and starts-with(., $ace_tag)"><!-- skip --></xsl:when>
6699
+ <xsl:otherwise><xsl:value-of select="."/></xsl:otherwise>
6700
+ </xsl:choose>
6701
+ </xsl:for-each>
6702
+ </xsl:variable>
6703
+ <xsl:value-of select="normalize-space($title)"/>
6621
6704
  </fo:bookmark-title>
6622
6705
  <xsl:apply-templates mode="bookmark"/>
6623
6706
  </fo:bookmark>
@@ -6643,6 +6726,12 @@
6643
6726
  <xsl:template match="*[local-name() = 'figure']/*[local-name() = 'fn']" priority="2"/>
6644
6727
  <xsl:template match="*[local-name() = 'figure']/*[local-name() = 'note']"/>
6645
6728
 
6729
+ <xsl:template match="*[local-name() = 'figure']/*[local-name() = 'note'][@type = 'units'] | *[local-name() = 'image']/*[local-name() = 'note'][@type = 'units']" priority="2">
6730
+ <fo:block text-align="right" keep-with-next="always">
6731
+ <xsl:apply-templates/>
6732
+ </fo:block>
6733
+ </xsl:template>
6734
+
6646
6735
  <!-- ====== -->
6647
6736
  <!-- ====== -->
6648
6737
  <xsl:template match="*[local-name() = 'title']" mode="contents_item">
@@ -6792,6 +6881,10 @@
6792
6881
  </xsl:for-each>
6793
6882
  </xsl:template>
6794
6883
 
6884
+ <xsl:template match="*[local-name() = 'add'][starts-with(., $ace_tag)]/text()" mode="contents_item" priority="2">
6885
+ <xsl:value-of select="."/>
6886
+ </xsl:template>
6887
+
6795
6888
  <!-- Note: to enable the addition of character span markup with semantic styling for DIS Word output -->
6796
6889
  <xsl:template match="*[local-name() = 'span']" mode="contents_item">
6797
6890
  <xsl:apply-templates mode="contents_item"/>
@@ -2410,7 +2410,7 @@
2410
2410
  <xsl:variable name="isDeleted" select="@deleted"/>
2411
2411
 
2412
2412
  <xsl:choose>
2413
- <xsl:when test="@width">
2413
+ <xsl:when test="@width and @width != 'full-page-width' and @width != 'text-width'">
2414
2414
 
2415
2415
  <!-- centered table when table name is centered (see table-name-style) -->
2416
2416
 
@@ -2735,6 +2735,7 @@
2735
2735
  This makes columns with large differences between minimum and maximum widths wider than columns with smaller differences. -->
2736
2736
  <xsl:when test="(@width_max &gt; $page_width and @width_min &lt; $page_width) or (@width_min &gt;= $page_width)">
2737
2737
  <!-- difference between the available space and the minimum table width -->
2738
+ <_width_min><xsl:value-of select="@width_min"/></_width_min>
2738
2739
  <xsl:variable name="W" select="$page_width - @width_min"/>
2739
2740
  <W><xsl:value-of select="$W"/></W>
2740
2741
  <!-- difference between maximum and minimum width of the table -->
@@ -3352,17 +3353,20 @@
3352
3353
  <xsl:for-each select="xalan:nodeset($references)//fn">
3353
3354
  <xsl:variable name="reference" select="@reference"/>
3354
3355
  <xsl:if test="not(preceding-sibling::*[@reference = $reference])"> <!-- only unique reference puts in note-->
3355
- <fo:block xsl:use-attribute-sets="table-fn-style">
3356
3356
 
3357
- <fo:inline id="{@id}" xsl:use-attribute-sets="table-fn-number-style">
3357
+ <fo:block xsl:use-attribute-sets="table-fn-style">
3358
3358
 
3359
- <xsl:value-of select="@reference"/>
3359
+ <fo:inline id="{@id}" xsl:use-attribute-sets="table-fn-number-style">
3360
+
3361
+ <xsl:value-of select="@reference"/>
3362
+
3363
+ </fo:inline>
3364
+ <fo:inline xsl:use-attribute-sets="table-fn-body-style">
3365
+ <xsl:copy-of select="./node()"/>
3366
+ </fo:inline>
3367
+
3368
+ </fo:block>
3360
3369
 
3361
- </fo:inline>
3362
- <fo:inline xsl:use-attribute-sets="table-fn-body-style">
3363
- <xsl:copy-of select="./node()"/>
3364
- </fo:inline>
3365
- </fo:block>
3366
3370
  </xsl:if>
3367
3371
  </xsl:for-each>
3368
3372
  </xsl:template>
@@ -4303,12 +4307,12 @@
4303
4307
  <xsl:param name="value"/>
4304
4308
  <xsl:variable name="add_width" select="string-length($value) * 20"/>
4305
4309
  <xsl:variable name="maxwidth" select="60 + $add_width"/>
4306
- <fo:instream-foreign-object fox:alt-text="OpeningTag" baseline-shift="-20%"><!-- alignment-baseline="middle" -->
4307
- <xsl:attribute name="height">5mm</xsl:attribute>
4310
+ <fo:instream-foreign-object fox:alt-text="OpeningTag" baseline-shift="-10%"><!-- alignment-baseline="middle" -->
4311
+ <xsl:attribute name="height">3.5mm</xsl:attribute> <!-- 5mm -->
4308
4312
  <xsl:attribute name="content-width">100%</xsl:attribute>
4309
4313
  <xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
4310
4314
  <xsl:attribute name="scaling">uniform</xsl:attribute>
4311
- <svg xmlns="http://www.w3.org/2000/svg" width="{$maxwidth + 32}" height="80">
4315
+ <!-- <svg xmlns="http://www.w3.org/2000/svg" width="{$maxwidth + 32}" height="80">
4312
4316
  <g>
4313
4317
  <xsl:if test="$type = 'closing' or $type = 'end'">
4314
4318
  <xsl:attribute name="transform">scale(-1 1) translate(-<xsl:value-of select="$maxwidth + 32"/>,0)</xsl:attribute>
@@ -4322,6 +4326,27 @@
4322
4326
  </xsl:if>
4323
4327
  <xsl:value-of select="$kind"/><tspan dy="10" font-size="30pt"><xsl:value-of select="$value"/></tspan>
4324
4328
  </text>
4329
+ </svg> -->
4330
+ <svg xmlns="http://www.w3.org/2000/svg" width="{$maxwidth + 32}" height="80">
4331
+ <g>
4332
+ <xsl:if test="$type = 'closing' or $type = 'end'">
4333
+ <xsl:attribute name="transform">scale(-1 1) translate(-<xsl:value-of select="$maxwidth + 32"/>,0)</xsl:attribute>
4334
+ </xsl:if>
4335
+ <polyline points="0,2.5 {$maxwidth},2.5 {$maxwidth + 20},40 {$maxwidth},77.5 0,77.5" stroke="black" stroke-width="5" fill="white"/>
4336
+ <line x1="9.5" y1="0" x2="9.5" y2="80" stroke="black" stroke-width="19"/>
4337
+ </g>
4338
+ <xsl:variable name="text_x">
4339
+ <xsl:choose>
4340
+ <xsl:when test="$type = 'closing' or $type = 'end'">28</xsl:when>
4341
+ <xsl:otherwise>22</xsl:otherwise>
4342
+ </xsl:choose>
4343
+ </xsl:variable>
4344
+ <text font-family="Arial" x="{$text_x}" y="50" font-size="40pt">
4345
+ <xsl:value-of select="$kind"/>
4346
+ </text>
4347
+ <text font-family="Arial" x="{$text_x + 33}" y="65" font-size="38pt">
4348
+ <xsl:value-of select="$value"/>
4349
+ </text>
4325
4350
  </svg>
4326
4351
  </fo:instream-foreign-object>
4327
4352
  </xsl:template>
@@ -4576,18 +4601,23 @@
4576
4601
 
4577
4602
  <xsl:template name="add-zero-spaces-java">
4578
4603
  <xsl:param name="text" select="."/>
4579
- <!-- add zero-width space (#x200B) after characters: dash, dot, colon, equal, underscore, em dash, thin space, arrow right -->
4580
- <xsl:variable name="text1" select="java:replaceAll(java:java.lang.String.new($text),'(-|\.|:|=|_|—| |→)','$1​')"/>
4604
+
4605
+ <!-- add zero-width space (#x200B) after dot with next non-digit -->
4606
+ <xsl:variable name="text1" select="java:replaceAll(java:java.lang.String.new($text),'(\.)([^\d\s])','$1​$2')"/>
4607
+ <!-- add zero-width space (#x200B) after characters: dash, equal, underscore, em dash, thin space, arrow right -->
4608
+ <xsl:variable name="text2" select="java:replaceAll(java:java.lang.String.new($text1),'(-|=|_|—| |→)','$1​')"/>
4609
+ <!-- add zero-width space (#x200B) after characters: colon, if there aren't digits after -->
4610
+ <xsl:variable name="text3" select="java:replaceAll(java:java.lang.String.new($text2),'(:)(\D)','$1​$2')"/>
4581
4611
  <!-- add zero-width space (#x200B) after characters: 'great than' -->
4582
- <xsl:variable name="text2" select="java:replaceAll(java:java.lang.String.new($text1), '(\u003e)(?!\u003e)', '$1​')"/><!-- negative lookahead: 'great than' not followed by 'great than' -->
4612
+ <xsl:variable name="text4" select="java:replaceAll(java:java.lang.String.new($text3), '(\u003e)(?!\u003e)', '$1​')"/><!-- negative lookahead: 'great than' not followed by 'great than' -->
4583
4613
  <!-- add zero-width space (#x200B) before characters: 'less than' -->
4584
- <xsl:variable name="text3" select="java:replaceAll(java:java.lang.String.new($text2), '(?&lt;!\u003c)(\u003c)', '​$1')"/> <!-- (?<!\u003c)(\u003c) --> <!-- negative lookbehind: 'less than' not preceeded by 'less than' -->
4614
+ <xsl:variable name="text5" select="java:replaceAll(java:java.lang.String.new($text4), '(?&lt;!\u003c)(\u003c)', '​$1')"/> <!-- (?<!\u003c)(\u003c) --> <!-- negative lookbehind: 'less than' not preceeded by 'less than' -->
4585
4615
  <!-- add zero-width space (#x200B) before character: { -->
4586
- <xsl:variable name="text4" select="java:replaceAll(java:java.lang.String.new($text3), '(?&lt;!\W)(\{)', '​$1')"/> <!-- negative lookbehind: '{' not preceeded by 'punctuation char' -->
4616
+ <xsl:variable name="text6" select="java:replaceAll(java:java.lang.String.new($text5), '(?&lt;!\W)(\{)', '​$1')"/> <!-- negative lookbehind: '{' not preceeded by 'punctuation char' -->
4587
4617
  <!-- add zero-width space (#x200B) after character: , -->
4588
- <xsl:variable name="text5" select="java:replaceAll(java:java.lang.String.new($text4), '(\,)(?!\d)', '$1​')"/> <!-- negative lookahead: ',' not followed by digit -->
4618
+ <xsl:variable name="text7" select="java:replaceAll(java:java.lang.String.new($text6), '(\,)(?!\d)', '$1​')"/> <!-- negative lookahead: ',' not followed by digit -->
4589
4619
 
4590
- <xsl:value-of select="$text5"/>
4620
+ <xsl:value-of select="$text7"/>
4591
4621
  </xsl:template>
4592
4622
 
4593
4623
  <xsl:template name="add-zero-spaces-link-java">
@@ -4596,7 +4626,9 @@
4596
4626
  <xsl:value-of select="java:replaceAll(java:java.lang.String.new($text), $regex_url_start, '$1')"/> <!-- http://. https:// or www. -->
4597
4627
  <xsl:variable name="url_continue" select="java:replaceAll(java:java.lang.String.new($text), $regex_url_start, '$2')"/>
4598
4628
  <!-- add zero-width space (#x200B) after characters: dash, dot, colon, equal, underscore, em dash, thin space -->
4599
- <xsl:value-of select="java:replaceAll(java:java.lang.String.new($url_continue),'(-|\.|:|=|_|—| |,|/)','$1​')"/>
4629
+ <xsl:variable name="url" select="java:replaceAll(java:java.lang.String.new($url_continue),'(-|\.|:|=|_|—| |,|/)','$1​')"/>
4630
+ <!-- remove zero-width space at the end -->
4631
+ <xsl:value-of select="java:replaceAll(java:java.lang.String.new($url), '​$', '')"/>
4600
4632
  </xsl:template>
4601
4633
 
4602
4634
  <!-- add zero space after dash character (for table's entries) -->
@@ -4733,7 +4765,7 @@
4733
4765
  </xsl:copy>
4734
4766
  </xsl:template>
4735
4767
 
4736
- <xsl:template match="*[local-name()='th' or local-name() = 'td'][not(*[local-name()='br']) and not(*[local-name()='p']) and not(*[local-name()='sourcecode'])]" mode="table-without-br">
4768
+ <xsl:template match="*[local-name()='th' or local-name() = 'td'][not(*[local-name()='br']) and not(*[local-name()='p']) and not(*[local-name()='sourcecode']) and not(*[local-name()='ul']) and not(*[local-name()='ol'])]" mode="table-without-br">
4737
4769
  <xsl:copy>
4738
4770
  <xsl:copy-of select="@*"/>
4739
4771
  <p>
@@ -4809,6 +4841,14 @@
4809
4841
  <xsl:value-of select="java:replaceAll(java:java.lang.String.new($text),' {2,}',' ')"/>
4810
4842
  </xsl:template>
4811
4843
 
4844
+ <xsl:template match="*[local-name()='th' or local-name()='td']//*[local-name() = 'ol' or local-name() = 'ul']" mode="table-without-br">
4845
+ <xsl:apply-templates mode="table-without-br"/>
4846
+ </xsl:template>
4847
+
4848
+ <xsl:template match="*[local-name()='th' or local-name()='td']//*[local-name() = 'li']" mode="table-without-br">
4849
+ <xsl:apply-templates mode="table-without-br"/>
4850
+ </xsl:template>
4851
+
4812
4852
  <!-- mode="table-without-br" -->
4813
4853
  <!-- ================================== -->
4814
4854
  <!-- END: Step 0. replace <br/> to <p>...</p> -->
@@ -5622,7 +5662,7 @@
5622
5662
 
5623
5663
  <fo:block-container id="{@id}" xsl:use-attribute-sets="note-style">
5624
5664
 
5625
- <fo:block-container margin-left="0mm">
5665
+ <fo:block-container margin-left="0mm" margin-right="0mm">
5626
5666
 
5627
5667
  <fo:block>
5628
5668
 
@@ -5802,11 +5842,14 @@
5802
5842
  <xsl:with-param name="isDeleted" select="$isDeleted"/>
5803
5843
  </xsl:call-template>
5804
5844
 
5845
+ <!-- Example: Dimensions in millimeters -->
5846
+ <xsl:apply-templates select="*[local-name() = 'note'][@type = 'units']"/>
5847
+
5805
5848
  <fo:block xsl:use-attribute-sets="figure-style">
5806
- <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
5849
+ <xsl:apply-templates select="node()[not(local-name() = 'name') and not(local-name() = 'note' and @type = 'units')]"/>
5807
5850
  </fo:block>
5808
5851
  <xsl:call-template name="fn_display_figure"/>
5809
- <xsl:for-each select="*[local-name() = 'note']">
5852
+ <xsl:for-each select="*[local-name() = 'note'][not(@type = 'units')]">
5810
5853
  <xsl:call-template name="note"/>
5811
5854
  </xsl:for-each>
5812
5855
 
@@ -6063,24 +6106,47 @@
6063
6106
 
6064
6107
  </xsl:when>
6065
6108
  <xsl:otherwise>
6066
- <fo:block xsl:use-attribute-sets="image-style">
6067
- <fo:instream-foreign-object fox:alt-text="{$alt-text}">
6068
- <xsl:attribute name="width">100%</xsl:attribute>
6069
- <xsl:attribute name="content-height">100%</xsl:attribute>
6070
- <xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
6071
- <xsl:variable name="svg_width" select="xalan:nodeset($svg_content)/*/@width"/>
6072
- <xsl:variable name="svg_height" select="xalan:nodeset($svg_content)/*/@height"/>
6073
- <!-- effective height 297 - 27.4 - 13 = 256.6 -->
6074
- <!-- effective width 210 - 12.5 - 25 = 172.5 -->
6075
- <!-- effective height / width = 1.48, 1.4 - with title -->
6076
- <xsl:if test="$svg_height &gt; ($svg_width * 1.4)"> <!-- for images with big height -->
6077
- <xsl:variable name="width" select="(($svg_width * 1.4) div $svg_height) * 100"/>
6078
- <xsl:attribute name="width"><xsl:value-of select="$width"/>%</xsl:attribute>
6079
- </xsl:if>
6080
- <xsl:attribute name="scaling">uniform</xsl:attribute>
6081
- <xsl:copy-of select="$svg_content"/>
6082
- </fo:instream-foreign-object>
6083
- </fo:block>
6109
+
6110
+ <xsl:variable name="element">
6111
+ <xsl:choose>
6112
+ <xsl:when test="ancestor::*[local-name() = 'tr'] and $isGenerateTableIF = 'true'">
6113
+ <fo:inline xsl:use-attribute-sets="image-style" text-align="left"/>
6114
+ </xsl:when>
6115
+ <xsl:otherwise>
6116
+ <fo:block xsl:use-attribute-sets="image-style">
6117
+ <xsl:if test="ancestor::*[local-name() = 'dt']">
6118
+ <xsl:attribute name="text-align">left</xsl:attribute>
6119
+ </xsl:if>
6120
+ </fo:block>
6121
+ </xsl:otherwise>
6122
+ </xsl:choose>
6123
+ </xsl:variable>
6124
+
6125
+ <xsl:for-each select="xalan:nodeset($element)/*">
6126
+ <xsl:copy>
6127
+ <xsl:copy-of select="@*"/>
6128
+ <!-- <fo:block xsl:use-attribute-sets="image-style"> -->
6129
+ <fo:instream-foreign-object fox:alt-text="{$alt-text}">
6130
+ <xsl:if test="$isGenerateTableIF = 'false'">
6131
+ <xsl:attribute name="width">100%</xsl:attribute>
6132
+ </xsl:if>
6133
+ <xsl:attribute name="content-height">100%</xsl:attribute>
6134
+ <xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
6135
+ <xsl:variable name="svg_width" select="xalan:nodeset($svg_content)/*/@width"/>
6136
+ <xsl:variable name="svg_height" select="xalan:nodeset($svg_content)/*/@height"/>
6137
+ <!-- effective height 297 - 27.4 - 13 = 256.6 -->
6138
+ <!-- effective width 210 - 12.5 - 25 = 172.5 -->
6139
+ <!-- effective height / width = 1.48, 1.4 - with title -->
6140
+ <xsl:if test="$svg_height &gt; ($svg_width * 1.4)"> <!-- for images with big height -->
6141
+ <xsl:variable name="width" select="(($svg_width * 1.4) div $svg_height) * 100"/>
6142
+ <xsl:attribute name="width"><xsl:value-of select="$width"/>%</xsl:attribute>
6143
+ </xsl:if>
6144
+ <xsl:attribute name="scaling">uniform</xsl:attribute>
6145
+ <xsl:copy-of select="$svg_content"/>
6146
+ </fo:instream-foreign-object>
6147
+ <!-- </fo:block> -->
6148
+ </xsl:copy>
6149
+ </xsl:for-each>
6084
6150
  </xsl:otherwise>
6085
6151
  </xsl:choose>
6086
6152
  </xsl:template>
@@ -6172,6 +6238,13 @@
6172
6238
  </xsl:for-each>
6173
6239
  </xsl:template>
6174
6240
 
6241
+ <!-- For the structures like: <dt><image src="" mimetype="image/svg+xml" height="" width=""><svg xmlns="http://www.w3.org/2000/svg" ... -->
6242
+ <xsl:template match="*[local-name() != 'figure']/*[local-name() = 'image'][*[local-name() = 'svg']]" priority="3">
6243
+ <xsl:for-each select="*[local-name() = 'svg']">
6244
+ <xsl:call-template name="image_svg"/>
6245
+ </xsl:for-each>
6246
+ </xsl:template>
6247
+
6175
6248
  <xsl:template match="*[local-name() = 'figure']/*[local-name() = 'image'][@mimetype = 'image/svg+xml' and @src[not(starts-with(., 'data:image/'))]]" priority="2">
6176
6249
  <xsl:variable name="svg_content" select="document(@src)"/>
6177
6250
  <xsl:variable name="name" select="ancestor::*[local-name() = 'figure']/*[local-name() = 'name']"/>
@@ -6310,6 +6383,8 @@
6310
6383
  <xsl:value-of select="."/>
6311
6384
  </xsl:template>
6312
6385
 
6386
+ <xsl:template match="*[local-name() = 'add'][starts-with(., $ace_tag)]/text()" mode="bookmarks" priority="3"/>
6387
+
6313
6388
  <xsl:template match="node()" mode="contents">
6314
6389
  <xsl:apply-templates mode="contents"/>
6315
6390
  </xsl:template>
@@ -6617,7 +6692,15 @@
6617
6692
  <xsl:value-of select="@section"/>
6618
6693
  <xsl:text> </xsl:text>
6619
6694
  </xsl:if>
6620
- <xsl:value-of select="normalize-space(title)"/>
6695
+ <xsl:variable name="title">
6696
+ <xsl:for-each select="title/node()">
6697
+ <xsl:choose>
6698
+ <xsl:when test="local-name() = 'add' and starts-with(., $ace_tag)"><!-- skip --></xsl:when>
6699
+ <xsl:otherwise><xsl:value-of select="."/></xsl:otherwise>
6700
+ </xsl:choose>
6701
+ </xsl:for-each>
6702
+ </xsl:variable>
6703
+ <xsl:value-of select="normalize-space($title)"/>
6621
6704
  </fo:bookmark-title>
6622
6705
  <xsl:apply-templates mode="bookmark"/>
6623
6706
  </fo:bookmark>
@@ -6643,6 +6726,12 @@
6643
6726
  <xsl:template match="*[local-name() = 'figure']/*[local-name() = 'fn']" priority="2"/>
6644
6727
  <xsl:template match="*[local-name() = 'figure']/*[local-name() = 'note']"/>
6645
6728
 
6729
+ <xsl:template match="*[local-name() = 'figure']/*[local-name() = 'note'][@type = 'units'] | *[local-name() = 'image']/*[local-name() = 'note'][@type = 'units']" priority="2">
6730
+ <fo:block text-align="right" keep-with-next="always">
6731
+ <xsl:apply-templates/>
6732
+ </fo:block>
6733
+ </xsl:template>
6734
+
6646
6735
  <!-- ====== -->
6647
6736
  <!-- ====== -->
6648
6737
  <xsl:template match="*[local-name() = 'title']" mode="contents_item">
@@ -6792,6 +6881,10 @@
6792
6881
  </xsl:for-each>
6793
6882
  </xsl:template>
6794
6883
 
6884
+ <xsl:template match="*[local-name() = 'add'][starts-with(., $ace_tag)]/text()" mode="contents_item" priority="2">
6885
+ <xsl:value-of select="."/>
6886
+ </xsl:template>
6887
+
6795
6888
  <!-- Note: to enable the addition of character span markup with semantic styling for DIS Word output -->
6796
6889
  <xsl:template match="*[local-name() = 'span']" mode="contents_item">
6797
6890
  <xsl:apply-templates mode="contents_item"/>
@@ -10,18 +10,9 @@ module IsoDoc
10
10
  Metanorma::M3AAWG.configuration
11
11
  end
12
12
 
13
- def colophon(body, docxml)
13
+ def colophon(_docxml, body)
14
14
  section_break(body)
15
- body.div **{ class: "colophon" } do |div|
16
- end
17
- end
18
-
19
- def make_body(xml, docxml)
20
- body_attr = { lang: "EN-US", link: "blue", vlink: "#954F72" }
21
- xml.body **body_attr do |body|
22
- make_body2(body, docxml)
23
- make_body3(body, docxml)
24
- colophon(body, docxml)
15
+ body.div class: "colophon" do |div|
25
16
  end
26
17
  end
27
18
 
@@ -522,7 +522,6 @@
522
522
  <value>tip</value>
523
523
  <value>important</value>
524
524
  <value>caution</value>
525
- <value>statement</value>
526
525
  </choice>
527
526
  </define>
528
527
  <define name="figure">
@@ -216,6 +216,9 @@
216
216
  <optional>
217
217
  <ref name="fullname"/>
218
218
  </optional>
219
+ <zeroOrMore>
220
+ <ref name="credential"/>
221
+ </zeroOrMore>
219
222
  <zeroOrMore>
220
223
  <ref name="affiliation"/>
221
224
  </zeroOrMore>
@@ -232,6 +235,11 @@
232
235
  <ref name="FullNameType"/>
233
236
  </element>
234
237
  </define>
238
+ <define name="credential">
239
+ <element name="credential">
240
+ <text/>
241
+ </element>
242
+ </define>
235
243
  <define name="FullNameType">
236
244
  <choice>
237
245
  <group>
@@ -305,7 +313,9 @@
305
313
  <zeroOrMore>
306
314
  <ref name="affiliationdescription"/>
307
315
  </zeroOrMore>
308
- <ref name="organization"/>
316
+ <optional>
317
+ <ref name="organization"/>
318
+ </optional>
309
319
  </element>
310
320
  </define>
311
321
  <define name="affiliationname">
@@ -66,6 +66,7 @@
66
66
  <value>caution</value>
67
67
  <value>statement</value>
68
68
  <value>editorial</value>
69
+ <value>box</value>
69
70
  </choice>
70
71
  </define>
71
72
  <define name="index">
@@ -1577,6 +1578,9 @@
1577
1578
  <zeroOrMore>
1578
1579
  <ref name="indexsect"/>
1579
1580
  </zeroOrMore>
1581
+ <optional>
1582
+ <ref name="colophon"/>
1583
+ </optional>
1580
1584
  </element>
1581
1585
  </define>
1582
1586
  <define name="misccontainer">
@@ -1599,6 +1603,13 @@
1599
1603
  </oneOrMore>
1600
1604
  </element>
1601
1605
  </define>
1606
+ <define name="colophon">
1607
+ <element name="colophon">
1608
+ <oneOrMore>
1609
+ <ref name="content"/>
1610
+ </oneOrMore>
1611
+ </element>
1612
+ </define>
1602
1613
  <define name="foreword">
1603
1614
  <element name="foreword">
1604
1615
  <ref name="Content-Section"/>
@@ -1,5 +1,5 @@
1
1
  module Metanorma
2
2
  module M3AAWG
3
- VERSION = "2.2.3".freeze
3
+ VERSION = "2.2.4".freeze
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metanorma-m3aawg
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.2.3
4
+ version: 2.2.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-01-24 00:00:00.000000000 Z
11
+ date: 2023-02-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: htmlentities