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.
@@ -435,7 +435,7 @@ div.figure, p.figure
435
435
  {text-align: center;}
436
436
 
437
437
 
438
- h1
438
+ h1, .h1
439
439
  {mso-style-priority:1;
440
440
  mso-style-unhide:no;
441
441
  mso-style-qformat:yes;
@@ -449,8 +449,6 @@ h1
449
449
  mso-add-space:auto;
450
450
  mso-pagination:widow-orphan lines-together;
451
451
  page-break-after:avoid;
452
- mso-outline-level:1;
453
- mso-list:l1 level1 lfo6;
454
452
  tab-stops:0.7cm;
455
453
  border:none;
456
454
  mso-border-bottom-alt:solid #152B4D 2.25pt;
@@ -473,6 +471,10 @@ h1
473
471
  mso-ansi-language:EN-US;
474
472
  mso-fareast-language:EN-US;
475
473
  font-weight:normal;}
474
+ h1 {
475
+ mso-outline-level:1;
476
+ mso-list:l1 level1 lfo6;
477
+ }
476
478
  /*
477
479
  h1.Annex
478
480
  {mso-style-priority:1;
@@ -504,7 +506,7 @@ h1.Annex
504
506
  mso-fareast-language:JA;
505
507
  mso-bidi-font-weight:normal;}
506
508
  */
507
- .h2Annex, h2
509
+ .h2Annex, h2, .h2
508
510
  {mso-style-priority:2;
509
511
  mso-style-unhide:no;
510
512
  mso-style-qformat:yes;
@@ -534,7 +536,7 @@ h2
534
536
  {
535
537
  mso-list:l1 level2 lfo6;
536
538
  }
537
- h3
539
+ h3, .h3
538
540
  {mso-style-priority:3;
539
541
  mso-style-unhide:no;
540
542
  mso-style-qformat:yes;
@@ -549,7 +551,6 @@ h3
549
551
  line-height:107%;
550
552
  mso-pagination:widow-orphan lines-together;
551
553
  page-break-after:avoid;
552
- mso-outline-level:3;
553
554
  tab-stops:1.3cm;
554
555
  font-size:12.0pt;
555
556
  font-family:$headerfont;
@@ -560,7 +561,10 @@ h3
560
561
  mso-fareast-language:EN-US;
561
562
  font-weight:bold;
562
563
  mso-bidi-font-weight:normal;}
563
- h4
564
+ h3 {
565
+ mso-outline-level:3;
566
+ }
567
+ h4, .h4
564
568
  {mso-style-priority:4;
565
569
  mso-style-unhide:no;
566
570
  mso-style-qformat:yes;
@@ -576,7 +580,6 @@ h4
576
580
  tab-stops:1.6cm;
577
581
  mso-pagination:widow-orphan lines-together;
578
582
  page-break-after:avoid;
579
- mso-outline-level:4;
580
583
  font-size:$normalfontsize;
581
584
  font-family:$headerfont;
582
585
  color:#1F4E79;
@@ -586,7 +589,10 @@ h4
586
589
  mso-fareast-language:EN-US;
587
590
  font-weight:normal;
588
591
  font-style:italic;}
589
- h5
592
+ h4 {
593
+ mso-outline-level:4;
594
+ }
595
+ h5, .h5
590
596
  {mso-style-priority:5;
591
597
  mso-style-unhide:no;
592
598
  mso-style-qformat:yes;
@@ -602,7 +608,6 @@ h5
602
608
  tab-stops:1.9cm;
603
609
  mso-pagination:widow-orphan lines-together;
604
610
  page-break-after:avoid;
605
- mso-outline-level:5;
606
611
  font-size:$normalfontsize;
607
612
  font-family:$headerfont;
608
613
  color:#1F4E79;
@@ -611,7 +616,10 @@ h5
611
616
  mso-ansi-language:EN-US;
612
617
  mso-fareast-language:EN-US;
613
618
  font-weight:normal;}
614
- h6
619
+ h5 {
620
+ mso-outline-level:5;
621
+ }
622
+ h6, .h6
615
623
  {mso-style-priority:6;
616
624
  mso-style-unhide:no;
617
625
  mso-style-qformat:yes;
@@ -627,7 +635,6 @@ h6
627
635
  tab-stops:2.2cm;
628
636
  mso-pagination:widow-orphan lines-together;
629
637
  page-break-after:avoid;
630
- mso-outline-level:6;
631
638
  font-size:$normalfontsize;
632
639
  font-family:$headerfont;
633
640
  mso-fareast-font-family:"MS Gothic";
@@ -641,6 +648,9 @@ h6
641
648
  mso-fareast-language:EN-US;
642
649
  font-weight:bold;
643
650
  mso-bidi-font-weight:normal;}
651
+ h6 {
652
+ mso-outline-level:6;
653
+ }
644
654
  p.MsoToc1, li.MsoToc1, div.MsoToc1
645
655
  {mso-style-priority:39;
646
656
  mso-style-unhide:no;
@@ -18,6 +18,7 @@ module IsoDoc
18
18
  "test-suite" => "TS",
19
19
  "user-guide" => "UG",
20
20
  "white-paper" => "WP",
21
+ "technical-paper" => "TP",
21
22
  "other" => "other",
22
23
  }.freeze
23
24
 
@@ -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'"/>
@@ -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'"/>