metanorma-ogc 1.5.4.1 → 1.5.5

Sign up to get free protection for your applications and to get access to all the features.
@@ -923,7 +923,7 @@
923
923
  </fo:block>
924
924
  </xsl:template>
925
925
 
926
- <xsl:template match="ogc:title">
926
+ <xsl:template match="ogc:title" name="title">
927
927
 
928
928
  <xsl:variable name="level">
929
929
  <xsl:call-template name="getLevel"/>
@@ -1173,13 +1173,10 @@
1173
1173
  <fo:list-item id="{@id}">
1174
1174
  <fo:list-item-label end-indent="label-end()">
1175
1175
  <fo:block>
1176
- <xsl:if test="local-name(..) = 'ul'">
1177
- <xsl:attribute name="color">
1178
- <xsl:value-of select="$color_design"/>
1179
- </xsl:attribute>
1180
- </xsl:if>
1181
1176
  <xsl:choose>
1182
- <xsl:when test="local-name(..) = 'ul'">•</xsl:when> <!-- &#x2014; dash -->
1177
+ <xsl:when test="local-name(..) = 'ul'">
1178
+ <xsl:call-template name="setULLabel"/>
1179
+ </xsl:when>
1183
1180
  <xsl:otherwise> <!-- for ordered lists -->
1184
1181
  <xsl:choose>
1185
1182
  <xsl:when test="../@class = 'steps'">
@@ -4007,6 +4004,7 @@
4007
4004
  </xsl:template><xsl:template match="*[local-name()='dd']" mode="dl"/><xsl:template match="*[local-name()='dd']" mode="dl_process">
4008
4005
  <xsl:apply-templates/>
4009
4006
  </xsl:template><xsl:template match="*[local-name()='dd']"/><xsl:template match="*[local-name()='dd']" mode="process">
4007
+ <xsl:apply-templates select="@language"/>
4010
4008
  <xsl:apply-templates/>
4011
4009
  </xsl:template><xsl:template match="*[local-name()='dd']/*[local-name()='p']" mode="inline">
4012
4010
  <fo:inline><xsl:text> </xsl:text><xsl:apply-templates/></fo:inline>
@@ -6303,6 +6301,51 @@
6303
6301
  </xsl:template><xsl:template match="*[local-name() = 'name']/text()">
6304
6302
  <!-- 0xA0 to space replacement -->
6305
6303
  <xsl:value-of select="java:replaceAll(java:java.lang.String.new(.),' ',' ')"/>
6304
+ </xsl:template><xsl:variable name="ul_labels_">
6305
+
6306
+
6307
+
6308
+
6309
+
6310
+
6311
+
6312
+
6313
+
6314
+
6315
+
6316
+
6317
+
6318
+ <label color="{$color_design}">•</label>
6319
+
6320
+
6321
+
6322
+
6323
+
6324
+ </xsl:variable><xsl:variable name="ul_labels" select="xalan:nodeset($ul_labels_)"/><xsl:template name="setULLabel">
6325
+ <xsl:variable name="list_level_" select="count(ancestor::*[local-name() = 'ul']) + count(ancestor::*[local-name() = 'ol'])"/>
6326
+ <xsl:variable name="list_level">
6327
+ <xsl:choose>
6328
+ <xsl:when test="$list_level_ &lt;= 3"><xsl:value-of select="$list_level_"/></xsl:when>
6329
+ <xsl:otherwise><xsl:value-of select="$list_level_ mod 3"/></xsl:otherwise>
6330
+ </xsl:choose>
6331
+ </xsl:variable>
6332
+ <xsl:choose>
6333
+ <xsl:when test="$ul_labels/label[not(@level)]"> <!-- one label for all levels -->
6334
+ <xsl:apply-templates select="$ul_labels/label[not(@level)]" mode="ul_labels"/>
6335
+ </xsl:when>
6336
+ <xsl:when test="$list_level mod 3 = 0">
6337
+ <xsl:apply-templates select="$ul_labels/label[@level = 3]" mode="ul_labels"/>
6338
+ </xsl:when>
6339
+ <xsl:when test="$list_level mod 2 = 0">
6340
+ <xsl:apply-templates select="$ul_labels/label[@level = 2]" mode="ul_labels"/>
6341
+ </xsl:when>
6342
+ <xsl:otherwise>
6343
+ <xsl:apply-templates select="$ul_labels/label[@level = 1]" mode="ul_labels"/>
6344
+ </xsl:otherwise>
6345
+ </xsl:choose>
6346
+ </xsl:template><xsl:template match="label" mode="ul_labels">
6347
+ <xsl:copy-of select="@*[not(local-name() = 'level')]"/>
6348
+ <xsl:value-of select="."/>
6306
6349
  </xsl:template><xsl:template match="*[local-name() = 'ul'] | *[local-name() = 'ol']">
6307
6350
  <xsl:choose>
6308
6351
  <xsl:when test="parent::*[local-name() = 'note'] or parent::*[local-name() = 'termnote']">
@@ -6898,6 +6941,10 @@
6898
6941
  </svg>
6899
6942
  </fo:instream-foreign-object>
6900
6943
  </fo:inline>
6944
+ </xsl:template><xsl:template match="@language">
6945
+ <xsl:copy-of select="."/>
6946
+ </xsl:template><xsl:template match="*[local-name() = 'p'][@type = 'floating-title']" priority="4">
6947
+ <xsl:call-template name="title"/>
6901
6948
  </xsl:template><xsl:template name="convertDate">
6902
6949
  <xsl:param name="date"/>
6903
6950
  <xsl:param name="format" select="'short'"/>
@@ -923,7 +923,7 @@
923
923
  </fo:block>
924
924
  </xsl:template>
925
925
 
926
- <xsl:template match="ogc:title">
926
+ <xsl:template match="ogc:title" name="title">
927
927
 
928
928
  <xsl:variable name="level">
929
929
  <xsl:call-template name="getLevel"/>
@@ -1173,13 +1173,10 @@
1173
1173
  <fo:list-item id="{@id}">
1174
1174
  <fo:list-item-label end-indent="label-end()">
1175
1175
  <fo:block>
1176
- <xsl:if test="local-name(..) = 'ul'">
1177
- <xsl:attribute name="color">
1178
- <xsl:value-of select="$color_design"/>
1179
- </xsl:attribute>
1180
- </xsl:if>
1181
1176
  <xsl:choose>
1182
- <xsl:when test="local-name(..) = 'ul'">•</xsl:when> <!-- &#x2014; dash -->
1177
+ <xsl:when test="local-name(..) = 'ul'">
1178
+ <xsl:call-template name="setULLabel"/>
1179
+ </xsl:when>
1183
1180
  <xsl:otherwise> <!-- for ordered lists -->
1184
1181
  <xsl:choose>
1185
1182
  <xsl:when test="../@class = 'steps'">
@@ -4007,6 +4004,7 @@
4007
4004
  </xsl:template><xsl:template match="*[local-name()='dd']" mode="dl"/><xsl:template match="*[local-name()='dd']" mode="dl_process">
4008
4005
  <xsl:apply-templates/>
4009
4006
  </xsl:template><xsl:template match="*[local-name()='dd']"/><xsl:template match="*[local-name()='dd']" mode="process">
4007
+ <xsl:apply-templates select="@language"/>
4010
4008
  <xsl:apply-templates/>
4011
4009
  </xsl:template><xsl:template match="*[local-name()='dd']/*[local-name()='p']" mode="inline">
4012
4010
  <fo:inline><xsl:text> </xsl:text><xsl:apply-templates/></fo:inline>
@@ -6303,6 +6301,51 @@
6303
6301
  </xsl:template><xsl:template match="*[local-name() = 'name']/text()">
6304
6302
  <!-- 0xA0 to space replacement -->
6305
6303
  <xsl:value-of select="java:replaceAll(java:java.lang.String.new(.),' ',' ')"/>
6304
+ </xsl:template><xsl:variable name="ul_labels_">
6305
+
6306
+
6307
+
6308
+
6309
+
6310
+
6311
+
6312
+
6313
+
6314
+
6315
+
6316
+
6317
+
6318
+ <label color="{$color_design}">•</label>
6319
+
6320
+
6321
+
6322
+
6323
+
6324
+ </xsl:variable><xsl:variable name="ul_labels" select="xalan:nodeset($ul_labels_)"/><xsl:template name="setULLabel">
6325
+ <xsl:variable name="list_level_" select="count(ancestor::*[local-name() = 'ul']) + count(ancestor::*[local-name() = 'ol'])"/>
6326
+ <xsl:variable name="list_level">
6327
+ <xsl:choose>
6328
+ <xsl:when test="$list_level_ &lt;= 3"><xsl:value-of select="$list_level_"/></xsl:when>
6329
+ <xsl:otherwise><xsl:value-of select="$list_level_ mod 3"/></xsl:otherwise>
6330
+ </xsl:choose>
6331
+ </xsl:variable>
6332
+ <xsl:choose>
6333
+ <xsl:when test="$ul_labels/label[not(@level)]"> <!-- one label for all levels -->
6334
+ <xsl:apply-templates select="$ul_labels/label[not(@level)]" mode="ul_labels"/>
6335
+ </xsl:when>
6336
+ <xsl:when test="$list_level mod 3 = 0">
6337
+ <xsl:apply-templates select="$ul_labels/label[@level = 3]" mode="ul_labels"/>
6338
+ </xsl:when>
6339
+ <xsl:when test="$list_level mod 2 = 0">
6340
+ <xsl:apply-templates select="$ul_labels/label[@level = 2]" mode="ul_labels"/>
6341
+ </xsl:when>
6342
+ <xsl:otherwise>
6343
+ <xsl:apply-templates select="$ul_labels/label[@level = 1]" mode="ul_labels"/>
6344
+ </xsl:otherwise>
6345
+ </xsl:choose>
6346
+ </xsl:template><xsl:template match="label" mode="ul_labels">
6347
+ <xsl:copy-of select="@*[not(local-name() = 'level')]"/>
6348
+ <xsl:value-of select="."/>
6306
6349
  </xsl:template><xsl:template match="*[local-name() = 'ul'] | *[local-name() = 'ol']">
6307
6350
  <xsl:choose>
6308
6351
  <xsl:when test="parent::*[local-name() = 'note'] or parent::*[local-name() = 'termnote']">
@@ -6898,6 +6941,10 @@
6898
6941
  </svg>
6899
6942
  </fo:instream-foreign-object>
6900
6943
  </fo:inline>
6944
+ </xsl:template><xsl:template match="@language">
6945
+ <xsl:copy-of select="."/>
6946
+ </xsl:template><xsl:template match="*[local-name() = 'p'][@type = 'floating-title']" priority="4">
6947
+ <xsl:call-template name="title"/>
6901
6948
  </xsl:template><xsl:template name="convertDate">
6902
6949
  <xsl:param name="date"/>
6903
6950
  <xsl:param name="format" select="'short'"/>
@@ -923,7 +923,7 @@
923
923
  </fo:block>
924
924
  </xsl:template>
925
925
 
926
- <xsl:template match="ogc:title">
926
+ <xsl:template match="ogc:title" name="title">
927
927
 
928
928
  <xsl:variable name="level">
929
929
  <xsl:call-template name="getLevel"/>
@@ -1173,13 +1173,10 @@
1173
1173
  <fo:list-item id="{@id}">
1174
1174
  <fo:list-item-label end-indent="label-end()">
1175
1175
  <fo:block>
1176
- <xsl:if test="local-name(..) = 'ul'">
1177
- <xsl:attribute name="color">
1178
- <xsl:value-of select="$color_design"/>
1179
- </xsl:attribute>
1180
- </xsl:if>
1181
1176
  <xsl:choose>
1182
- <xsl:when test="local-name(..) = 'ul'">•</xsl:when> <!-- &#x2014; dash -->
1177
+ <xsl:when test="local-name(..) = 'ul'">
1178
+ <xsl:call-template name="setULLabel"/>
1179
+ </xsl:when>
1183
1180
  <xsl:otherwise> <!-- for ordered lists -->
1184
1181
  <xsl:choose>
1185
1182
  <xsl:when test="../@class = 'steps'">
@@ -4007,6 +4004,7 @@
4007
4004
  </xsl:template><xsl:template match="*[local-name()='dd']" mode="dl"/><xsl:template match="*[local-name()='dd']" mode="dl_process">
4008
4005
  <xsl:apply-templates/>
4009
4006
  </xsl:template><xsl:template match="*[local-name()='dd']"/><xsl:template match="*[local-name()='dd']" mode="process">
4007
+ <xsl:apply-templates select="@language"/>
4010
4008
  <xsl:apply-templates/>
4011
4009
  </xsl:template><xsl:template match="*[local-name()='dd']/*[local-name()='p']" mode="inline">
4012
4010
  <fo:inline><xsl:text> </xsl:text><xsl:apply-templates/></fo:inline>
@@ -6303,6 +6301,51 @@
6303
6301
  </xsl:template><xsl:template match="*[local-name() = 'name']/text()">
6304
6302
  <!-- 0xA0 to space replacement -->
6305
6303
  <xsl:value-of select="java:replaceAll(java:java.lang.String.new(.),' ',' ')"/>
6304
+ </xsl:template><xsl:variable name="ul_labels_">
6305
+
6306
+
6307
+
6308
+
6309
+
6310
+
6311
+
6312
+
6313
+
6314
+
6315
+
6316
+
6317
+
6318
+ <label color="{$color_design}">•</label>
6319
+
6320
+
6321
+
6322
+
6323
+
6324
+ </xsl:variable><xsl:variable name="ul_labels" select="xalan:nodeset($ul_labels_)"/><xsl:template name="setULLabel">
6325
+ <xsl:variable name="list_level_" select="count(ancestor::*[local-name() = 'ul']) + count(ancestor::*[local-name() = 'ol'])"/>
6326
+ <xsl:variable name="list_level">
6327
+ <xsl:choose>
6328
+ <xsl:when test="$list_level_ &lt;= 3"><xsl:value-of select="$list_level_"/></xsl:when>
6329
+ <xsl:otherwise><xsl:value-of select="$list_level_ mod 3"/></xsl:otherwise>
6330
+ </xsl:choose>
6331
+ </xsl:variable>
6332
+ <xsl:choose>
6333
+ <xsl:when test="$ul_labels/label[not(@level)]"> <!-- one label for all levels -->
6334
+ <xsl:apply-templates select="$ul_labels/label[not(@level)]" mode="ul_labels"/>
6335
+ </xsl:when>
6336
+ <xsl:when test="$list_level mod 3 = 0">
6337
+ <xsl:apply-templates select="$ul_labels/label[@level = 3]" mode="ul_labels"/>
6338
+ </xsl:when>
6339
+ <xsl:when test="$list_level mod 2 = 0">
6340
+ <xsl:apply-templates select="$ul_labels/label[@level = 2]" mode="ul_labels"/>
6341
+ </xsl:when>
6342
+ <xsl:otherwise>
6343
+ <xsl:apply-templates select="$ul_labels/label[@level = 1]" mode="ul_labels"/>
6344
+ </xsl:otherwise>
6345
+ </xsl:choose>
6346
+ </xsl:template><xsl:template match="label" mode="ul_labels">
6347
+ <xsl:copy-of select="@*[not(local-name() = 'level')]"/>
6348
+ <xsl:value-of select="."/>
6306
6349
  </xsl:template><xsl:template match="*[local-name() = 'ul'] | *[local-name() = 'ol']">
6307
6350
  <xsl:choose>
6308
6351
  <xsl:when test="parent::*[local-name() = 'note'] or parent::*[local-name() = 'termnote']">
@@ -6898,6 +6941,10 @@
6898
6941
  </svg>
6899
6942
  </fo:instream-foreign-object>
6900
6943
  </fo:inline>
6944
+ </xsl:template><xsl:template match="@language">
6945
+ <xsl:copy-of select="."/>
6946
+ </xsl:template><xsl:template match="*[local-name() = 'p'][@type = 'floating-title']" priority="4">
6947
+ <xsl:call-template name="title"/>
6901
6948
  </xsl:template><xsl:template name="convertDate">
6902
6949
  <xsl:param name="date"/>
6903
6950
  <xsl:param name="format" select="'short'"/>
@@ -530,7 +530,7 @@
530
530
  </fo:block>
531
531
  </xsl:template>
532
532
 
533
- <xsl:template match="ogc:title">
533
+ <xsl:template match="ogc:title" name="title">
534
534
 
535
535
  <xsl:variable name="level">
536
536
  <xsl:call-template name="getLevel"/>
@@ -709,7 +709,9 @@
709
709
  <fo:list-item-label end-indent="label-end()">
710
710
  <fo:block>
711
711
  <xsl:choose>
712
- <xsl:when test="local-name(..) = 'ul'">—</xsl:when> <!-- dash -->
712
+ <xsl:when test="local-name(..) = 'ul'">
713
+ <xsl:call-template name="setULLabel"/>
714
+ </xsl:when>
713
715
  <xsl:otherwise> <!-- for ordered lists -->
714
716
  <xsl:choose>
715
717
  <xsl:when test="../@class = 'steps'">
@@ -3262,6 +3264,7 @@
3262
3264
  </xsl:template><xsl:template match="*[local-name()='dd']" mode="dl"/><xsl:template match="*[local-name()='dd']" mode="dl_process">
3263
3265
  <xsl:apply-templates/>
3264
3266
  </xsl:template><xsl:template match="*[local-name()='dd']"/><xsl:template match="*[local-name()='dd']" mode="process">
3267
+ <xsl:apply-templates select="@language"/>
3265
3268
  <xsl:apply-templates/>
3266
3269
  </xsl:template><xsl:template match="*[local-name()='dd']/*[local-name()='p']" mode="inline">
3267
3270
  <fo:inline><xsl:text> </xsl:text><xsl:apply-templates/></fo:inline>
@@ -5509,6 +5512,51 @@
5509
5512
  </xsl:template><xsl:template match="*[local-name() = 'name']/text()">
5510
5513
  <!-- 0xA0 to space replacement -->
5511
5514
  <xsl:value-of select="java:replaceAll(java:java.lang.String.new(.),' ',' ')"/>
5515
+ </xsl:template><xsl:variable name="ul_labels_">
5516
+
5517
+
5518
+
5519
+
5520
+
5521
+
5522
+
5523
+
5524
+
5525
+
5526
+
5527
+
5528
+
5529
+
5530
+ <label>—</label> <!-- em dash -->
5531
+
5532
+
5533
+
5534
+
5535
+ </xsl:variable><xsl:variable name="ul_labels" select="xalan:nodeset($ul_labels_)"/><xsl:template name="setULLabel">
5536
+ <xsl:variable name="list_level_" select="count(ancestor::*[local-name() = 'ul']) + count(ancestor::*[local-name() = 'ol'])"/>
5537
+ <xsl:variable name="list_level">
5538
+ <xsl:choose>
5539
+ <xsl:when test="$list_level_ &lt;= 3"><xsl:value-of select="$list_level_"/></xsl:when>
5540
+ <xsl:otherwise><xsl:value-of select="$list_level_ mod 3"/></xsl:otherwise>
5541
+ </xsl:choose>
5542
+ </xsl:variable>
5543
+ <xsl:choose>
5544
+ <xsl:when test="$ul_labels/label[not(@level)]"> <!-- one label for all levels -->
5545
+ <xsl:apply-templates select="$ul_labels/label[not(@level)]" mode="ul_labels"/>
5546
+ </xsl:when>
5547
+ <xsl:when test="$list_level mod 3 = 0">
5548
+ <xsl:apply-templates select="$ul_labels/label[@level = 3]" mode="ul_labels"/>
5549
+ </xsl:when>
5550
+ <xsl:when test="$list_level mod 2 = 0">
5551
+ <xsl:apply-templates select="$ul_labels/label[@level = 2]" mode="ul_labels"/>
5552
+ </xsl:when>
5553
+ <xsl:otherwise>
5554
+ <xsl:apply-templates select="$ul_labels/label[@level = 1]" mode="ul_labels"/>
5555
+ </xsl:otherwise>
5556
+ </xsl:choose>
5557
+ </xsl:template><xsl:template match="label" mode="ul_labels">
5558
+ <xsl:copy-of select="@*[not(local-name() = 'level')]"/>
5559
+ <xsl:value-of select="."/>
5512
5560
  </xsl:template><xsl:template match="*[local-name() = 'ul'] | *[local-name() = 'ol']">
5513
5561
  <xsl:choose>
5514
5562
  <xsl:when test="parent::*[local-name() = 'note'] or parent::*[local-name() = 'termnote']">
@@ -6102,6 +6150,10 @@
6102
6150
  </svg>
6103
6151
  </fo:instream-foreign-object>
6104
6152
  </fo:inline>
6153
+ </xsl:template><xsl:template match="@language">
6154
+ <xsl:copy-of select="."/>
6155
+ </xsl:template><xsl:template match="*[local-name() = 'p'][@type = 'floating-title']" priority="4">
6156
+ <xsl:call-template name="title"/>
6105
6157
  </xsl:template><xsl:template name="convertDate">
6106
6158
  <xsl:param name="date"/>
6107
6159
  <xsl:param name="format" select="'short'"/>
@@ -189,14 +189,27 @@ module IsoDoc
189
189
  end
190
190
 
191
191
  def bibdata_i18n(bib)
192
- stage = bib&.at(ns("./status/stage"))
193
192
  doctype = bib&.at(ns("./ext/doctype"))
193
+ rename_stage(bib&.at(ns("./status/stage")), doctype, bib)
194
+ rename_doctype(doctype, bib&.at(ns("./date[@type = 'published']")) ||
195
+ bib&.at(ns("./date[@type = 'issued']")))
196
+ super
197
+ end
198
+
199
+ def rename_stage(stage, doctype, _bib)
194
200
  if stage&.text == "approved" &&
195
201
  !%w(standard abstract-specification-topic
196
202
  community-standard).include?(doctype&.text)
197
203
  stage.children = "published"
198
204
  end
199
- super
205
+ end
206
+
207
+ def rename_doctype(doctype, date)
208
+ return unless doctype&.text == "white-paper" && date
209
+
210
+ if Date.iso8601(date.text) >= Date.iso8601("2021-12-16")
211
+ doctype.children = "technical-paper"
212
+ end
200
213
  end
201
214
 
202
215
  def ol(docxml)
@@ -1,5 +1,5 @@
1
1
  module Metanorma
2
2
  module Ogc
3
- VERSION = "1.5.4.1".freeze
3
+ VERSION = "1.5.5".freeze
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metanorma-ogc
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.4.1
4
+ version: 1.5.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-12-13 00:00:00.000000000 Z
11
+ date: 2021-12-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: iso-639