metanorma-plateau 1.1.3 → 1.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3721,10 +3721,16 @@
3721
3721
  <xsl:attribute-set name="license-statement-style">
3722
3722
  </xsl:attribute-set> <!-- license-statement-style -->
3723
3723
 
3724
+ <xsl:template name="refine_license-statement-style">
3725
+ </xsl:template>
3726
+
3724
3727
  <xsl:attribute-set name="license-statement-title-style">
3725
3728
  <xsl:attribute name="keep-with-next">always</xsl:attribute>
3726
3729
  </xsl:attribute-set> <!-- license-statement-title-style -->
3727
3730
 
3731
+ <xsl:template name="refine_license-statement-title-style">
3732
+ </xsl:template>
3733
+
3728
3734
  <xsl:attribute-set name="license-statement-p-style">
3729
3735
  </xsl:attribute-set> <!-- license-statement-p-style -->
3730
3736
 
@@ -3735,23 +3741,47 @@
3735
3741
  <xsl:attribute-set name="legal-statement-style">
3736
3742
  </xsl:attribute-set> <!-- legal-statement-style -->
3737
3743
 
3744
+ <xsl:template name="refine_legal-statement-style">
3745
+ </xsl:template>
3746
+
3738
3747
  <xsl:attribute-set name="legal-statement-title-style">
3739
3748
  <xsl:attribute name="keep-with-next">always</xsl:attribute>
3740
3749
  </xsl:attribute-set> <!-- legal-statement-title-style -->
3741
3750
 
3751
+ <xsl:template name="refine_legal-statement-title-style">
3752
+ </xsl:template>
3753
+
3742
3754
  <xsl:attribute-set name="legal-statement-p-style">
3743
3755
  </xsl:attribute-set> <!-- legal-statement-p-style -->
3744
3756
 
3757
+ <xsl:template name="refine_legal-statement-p-style">
3758
+ <xsl:if test="@align">
3759
+ <xsl:attribute name="text-align">
3760
+ <xsl:value-of select="@align"/>
3761
+ </xsl:attribute>
3762
+ </xsl:if>
3763
+ </xsl:template>
3764
+
3745
3765
  <xsl:attribute-set name="feedback-statement-style">
3746
3766
  </xsl:attribute-set> <!-- feedback-statement-style -->
3747
3767
 
3768
+ <xsl:template name="refine_feedback-statement-style">
3769
+ </xsl:template>
3770
+
3748
3771
  <xsl:attribute-set name="feedback-statement-title-style">
3749
3772
  <xsl:attribute name="keep-with-next">always</xsl:attribute>
3750
3773
  </xsl:attribute-set> <!-- feedback-statement-title-style -->
3751
3774
 
3775
+ <xsl:template name="refine_feedback-statement-title-style">
3776
+
3777
+ </xsl:template>
3778
+
3752
3779
  <xsl:attribute-set name="feedback-statement-p-style">
3753
3780
  </xsl:attribute-set> <!-- feedback-statement-p-style -->
3754
3781
 
3782
+ <xsl:template name="refine_feedback-statement-p-style">
3783
+ </xsl:template>
3784
+
3755
3785
  <!-- End boilerplate sections styles -->
3756
3786
 
3757
3787
  <!-- ================================= -->
@@ -3777,6 +3807,7 @@
3777
3807
 
3778
3808
  <xsl:template match="mn:license-statement">
3779
3809
  <fo:block xsl:use-attribute-sets="license-statement-style">
3810
+ <xsl:call-template name="refine_license-statement-style"/>
3780
3811
  <xsl:apply-templates/>
3781
3812
  </fo:block>
3782
3813
  </xsl:template> <!-- license-statement -->
@@ -3794,6 +3825,7 @@
3794
3825
  <xsl:template match="mn:legal-statement">
3795
3826
  <xsl:param name="isLegacy">false</xsl:param>
3796
3827
  <fo:block xsl:use-attribute-sets="legal-statement-style">
3828
+ <xsl:call-template name="refine_legal-statement-style"/>
3797
3829
  <xsl:apply-templates/>
3798
3830
  </fo:block>
3799
3831
  </xsl:template> <!-- legal-statement -->
@@ -3961,6 +3993,27 @@
3961
3993
  <xsl:attribute-set name="sourcecode-container-style">
3962
3994
  </xsl:attribute-set>
3963
3995
 
3996
+ <xsl:template name="refine_sourcecode-container-style">
3997
+ <xsl:if test="not(ancestor::mn:li) or ancestor::mn:example">
3998
+ <xsl:attribute name="margin-left">0mm</xsl:attribute>
3999
+ </xsl:if>
4000
+
4001
+ <xsl:if test="ancestor::mn:example">
4002
+ <xsl:attribute name="margin-right">0mm</xsl:attribute>
4003
+ </xsl:if>
4004
+
4005
+ <xsl:copy-of select="@id"/>
4006
+
4007
+ <xsl:if test="parent::mn:note">
4008
+ <xsl:attribute name="margin-left">
4009
+ <xsl:choose>
4010
+ <xsl:when test="not(ancestor::mn:table)"><xsl:value-of select="$note-body-indent"/></xsl:when>
4011
+ <xsl:otherwise><xsl:value-of select="$note-body-indent-table"/></xsl:otherwise>
4012
+ </xsl:choose>
4013
+ </xsl:attribute>
4014
+ </xsl:if>
4015
+ </xsl:template>
4016
+
3964
4017
  <xsl:attribute-set name="sourcecode-style">
3965
4018
  <xsl:attribute name="white-space">pre</xsl:attribute>
3966
4019
  <xsl:attribute name="wrap-option">wrap</xsl:attribute>
@@ -3978,6 +4031,9 @@
3978
4031
  <xsl:attribute name="keep-with-previous">always</xsl:attribute>
3979
4032
  </xsl:attribute-set> <!-- sourcecode-name-style -->
3980
4033
 
4034
+ <xsl:template name="refine_sourcecode-name-style">
4035
+ </xsl:template>
4036
+
3981
4037
  <xsl:template name="add-zero-spaces-equal">
3982
4038
  <xsl:param name="text" select="."/>
3983
4039
  <xsl:variable name="zero-space-after-equals">==========</xsl:variable>
@@ -4065,24 +4121,8 @@
4065
4121
  <xsl:otherwise>
4066
4122
  <fo:block-container xsl:use-attribute-sets="sourcecode-container-style" role="SKIP">
4067
4123
 
4068
- <xsl:if test="not(ancestor::mn:li) or ancestor::mn:example">
4069
- <xsl:attribute name="margin-left">0mm</xsl:attribute>
4070
- </xsl:if>
4071
-
4072
- <xsl:if test="ancestor::mn:example">
4073
- <xsl:attribute name="margin-right">0mm</xsl:attribute>
4074
- </xsl:if>
4124
+ <xsl:call-template name="refine_sourcecode-container-style"/>
4075
4125
 
4076
- <xsl:copy-of select="@id"/>
4077
-
4078
- <xsl:if test="parent::mn:note">
4079
- <xsl:attribute name="margin-left">
4080
- <xsl:choose>
4081
- <xsl:when test="not(ancestor::mn:table)"><xsl:value-of select="$note-body-indent"/></xsl:when>
4082
- <xsl:otherwise><xsl:value-of select="$note-body-indent-table"/></xsl:otherwise>
4083
- </xsl:choose>
4084
- </xsl:attribute>
4085
- </xsl:if>
4086
4126
  <fo:block-container margin-left="0mm" role="SKIP">
4087
4127
 
4088
4128
  <fo:block xsl:use-attribute-sets="sourcecode-style">
@@ -4409,6 +4449,7 @@
4409
4449
  <xsl:template match="mn:sourcecode/mn:fmt-name">
4410
4450
  <xsl:if test="normalize-space() != ''">
4411
4451
  <fo:block xsl:use-attribute-sets="sourcecode-name-style">
4452
+ <xsl:call-template name="refine_sourcecode-name-style"/>
4412
4453
  <xsl:apply-templates/>
4413
4454
  </fo:block>
4414
4455
  </xsl:if>
@@ -4455,11 +4496,30 @@
4455
4496
  <xsl:attribute-set name="pre-style">
4456
4497
  <xsl:attribute name="font-family">Courier New, <xsl:value-of select="$font_noto_sans_mono"/></xsl:attribute>
4457
4498
  <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
4458
- </xsl:attribute-set>
4499
+ </xsl:attribute-set> <!-- pre-style -->
4500
+
4501
+ <xsl:template name="refine_pre-style">
4502
+ </xsl:template>
4459
4503
 
4460
4504
  <xsl:attribute-set name="tt-style">
4461
4505
  </xsl:attribute-set>
4462
4506
 
4507
+ <xsl:template name="refine_tt-style">
4508
+ <xsl:variable name="_font-size"> <!-- inherit -->
4509
+ </xsl:variable>
4510
+ <xsl:variable name="font-size" select="normalize-space($_font-size)"/>
4511
+ <xsl:if test="$font-size != ''">
4512
+ <xsl:attribute name="font-size">
4513
+ <xsl:choose>
4514
+ <xsl:when test="$font-size = 'inherit'"><xsl:value-of select="$font-size"/></xsl:when>
4515
+ <xsl:when test="contains($font-size, '%')"><xsl:value-of select="$font-size"/></xsl:when>
4516
+ <xsl:when test="ancestor::mn:note or ancestor::mn:example"><xsl:value-of select="$font-size * 0.91"/>pt</xsl:when>
4517
+ <xsl:otherwise><xsl:value-of select="$font-size"/>pt</xsl:otherwise>
4518
+ </xsl:choose>
4519
+ </xsl:attribute>
4520
+ </xsl:if>
4521
+ </xsl:template>
4522
+
4463
4523
  <xsl:variable name="color-added-text">
4464
4524
  <xsl:text>rgb(0, 255, 0)</xsl:text>
4465
4525
  </xsl:variable>
@@ -4472,9 +4532,14 @@
4472
4532
  <xsl:attribute name="padding-bottom">0.5mm</xsl:attribute> -->
4473
4533
  </xsl:attribute-set>
4474
4534
 
4535
+ <xsl:template name="refine_add-style">
4536
+ </xsl:template>
4537
+
4475
4538
  <xsl:variable name="add-style">
4476
- <add-style xsl:use-attribute-sets="add-style"/>
4477
- </xsl:variable>
4539
+ <add-style xsl:use-attribute-sets="add-style">
4540
+ <xsl:call-template name="refine_add-style"/>
4541
+ </add-style>
4542
+ </xsl:variable>
4478
4543
  <xsl:template name="append_add-style">
4479
4544
  <xsl:copy-of select="xalan:nodeset($add-style)/add-style/@*"/>
4480
4545
  </xsl:template>
@@ -4487,24 +4552,77 @@
4487
4552
  <xsl:attribute name="text-decoration">line-through</xsl:attribute>
4488
4553
  </xsl:attribute-set>
4489
4554
 
4555
+ <xsl:template name="refine_del-style">
4556
+ </xsl:template>
4557
+
4558
+ <xsl:attribute-set name="strong-style">
4559
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
4560
+ </xsl:attribute-set>
4561
+
4562
+ <xsl:template name="refine_strong_style">
4563
+ <xsl:if test="ancestor::*['preferred']">
4564
+ <xsl:attribute name="role">SKIP</xsl:attribute>
4565
+ </xsl:if>
4566
+ </xsl:template> <!-- refine_strong_style -->
4567
+
4568
+ <xsl:attribute-set name="em-style">
4569
+ <xsl:attribute name="font-style">italic</xsl:attribute>
4570
+ </xsl:attribute-set>
4571
+
4572
+ <xsl:template name="refine_em_style">
4573
+ </xsl:template> <!-- refine_em_style -->
4574
+
4575
+ <xsl:attribute-set name="sup-style">
4576
+ <xsl:attribute name="font-size">80%</xsl:attribute>
4577
+ <xsl:attribute name="vertical-align">super</xsl:attribute>
4578
+ </xsl:attribute-set>
4579
+
4580
+ <xsl:template name="refine_sup-style">
4581
+ </xsl:template>
4582
+
4583
+ <xsl:attribute-set name="sub-style">
4584
+ <xsl:attribute name="font-size">80%</xsl:attribute>
4585
+ <xsl:attribute name="vertical-align">sub</xsl:attribute>
4586
+ </xsl:attribute-set>
4587
+
4588
+ <xsl:template name="refine_sub-style">
4589
+ </xsl:template>
4590
+
4591
+ <xsl:attribute-set name="underline-style">
4592
+ <xsl:attribute name="text-decoration">underline</xsl:attribute>
4593
+ </xsl:attribute-set>
4594
+
4595
+ <xsl:template name="refine_underline-style">
4596
+ </xsl:template>
4597
+
4598
+ <xsl:attribute-set name="hi-style">
4599
+ <xsl:attribute name="background-color">yellow</xsl:attribute>
4600
+ </xsl:attribute-set>
4601
+
4602
+ <xsl:template name="refine_hi-style">
4603
+ </xsl:template>
4604
+
4605
+ <xsl:attribute-set name="strike-style">
4606
+ <xsl:attribute name="text-decoration">line-through</xsl:attribute>
4607
+ </xsl:attribute-set>
4608
+
4609
+ <xsl:template name="refine_strike-style">
4610
+ </xsl:template>
4611
+
4490
4612
  <xsl:template match="mn:br">
4491
4613
  <xsl:value-of select="$linebreak"/>
4492
4614
  </xsl:template>
4493
4615
 
4494
- <xsl:template match="mn:em">
4495
- <fo:inline font-style="italic">
4496
- <xsl:call-template name="refine_italic_style"/>
4616
+ <xsl:template match="mn:em">
4617
+ <fo:inline xsl:use-attribute-sets="em-style">
4618
+ <xsl:call-template name="refine_em_style"/>
4497
4619
  <xsl:apply-templates/>
4498
4620
  </fo:inline>
4499
4621
  </xsl:template>
4500
4622
 
4501
- <xsl:template name="refine_italic_style">
4502
- </xsl:template>
4503
-
4504
4623
  <xsl:template match="mn:strong | *[local-name()='b']">
4505
4624
  <xsl:param name="split_keep-within-line"/>
4506
- <fo:inline font-weight="bold">
4507
-
4625
+ <fo:inline xsl:use-attribute-sets="strong-style">
4508
4626
  <xsl:call-template name="refine_strong_style"/>
4509
4627
 
4510
4628
  <xsl:apply-templates>
@@ -4513,44 +4631,27 @@
4513
4631
  </fo:inline>
4514
4632
  </xsl:template>
4515
4633
 
4516
- <xsl:template name="refine_strong_style">
4517
- <xsl:if test="ancestor::*['preferred']">
4518
- <xsl:attribute name="role">SKIP</xsl:attribute>
4519
- </xsl:if>
4520
- </xsl:template>
4521
-
4522
4634
  <xsl:template match="*[local-name()='padding']">
4523
4635
  <fo:inline padding-right="{@value}"> </fo:inline>
4524
4636
  </xsl:template>
4525
4637
 
4526
4638
  <xsl:template match="mn:sup">
4527
- <fo:inline font-size="80%" vertical-align="super">
4639
+ <fo:inline xsl:use-attribute-sets="sup-style">
4640
+ <xsl:call-template name="refine_sup-style"/>
4528
4641
  <xsl:apply-templates/>
4529
4642
  </fo:inline>
4530
4643
  </xsl:template>
4531
4644
 
4532
4645
  <xsl:template match="mn:sub">
4533
- <fo:inline font-size="80%" vertical-align="sub">
4646
+ <fo:inline xsl:use-attribute-sets="sub-style">
4647
+ <xsl:call-template name="refine_sub-style"/>
4534
4648
  <xsl:apply-templates/>
4535
4649
  </fo:inline>
4536
4650
  </xsl:template>
4537
4651
 
4538
4652
  <xsl:template match="mn:tt">
4539
4653
  <fo:inline xsl:use-attribute-sets="tt-style">
4540
-
4541
- <xsl:variable name="_font-size"> <!-- inherit -->
4542
- </xsl:variable>
4543
- <xsl:variable name="font-size" select="normalize-space($_font-size)"/>
4544
- <xsl:if test="$font-size != ''">
4545
- <xsl:attribute name="font-size">
4546
- <xsl:choose>
4547
- <xsl:when test="$font-size = 'inherit'"><xsl:value-of select="$font-size"/></xsl:when>
4548
- <xsl:when test="contains($font-size, '%')"><xsl:value-of select="$font-size"/></xsl:when>
4549
- <xsl:when test="ancestor::mn:note or ancestor::mn:example"><xsl:value-of select="$font-size * 0.91"/>pt</xsl:when>
4550
- <xsl:otherwise><xsl:value-of select="$font-size"/>pt</xsl:otherwise>
4551
- </xsl:choose>
4552
- </xsl:attribute>
4553
- </xsl:if>
4654
+ <xsl:call-template name="refine_tt-style"/>
4554
4655
  <xsl:apply-templates/>
4555
4656
  </fo:inline>
4556
4657
  </xsl:template> <!-- tt -->
@@ -4569,7 +4670,8 @@
4569
4670
  </xsl:template>
4570
4671
 
4571
4672
  <xsl:template match="mn:underline">
4572
- <fo:inline text-decoration="underline">
4673
+ <fo:inline xsl:use-attribute-sets="underline-style">
4674
+ <xsl:call-template name="refine_underline-style"/>
4573
4675
  <xsl:apply-templates/>
4574
4676
  </fo:inline>
4575
4677
  </xsl:template>
@@ -4727,6 +4829,7 @@
4727
4829
 
4728
4830
  <xsl:template match="mn:del">
4729
4831
  <fo:inline xsl:use-attribute-sets="del-style">
4832
+ <xsl:call-template name="refine_del-style"/>
4730
4833
  <xsl:apply-templates/>
4731
4834
  </fo:inline>
4732
4835
  </xsl:template>
@@ -4736,7 +4839,8 @@
4736
4839
 
4737
4840
  <!-- highlight text -->
4738
4841
  <xsl:template match="mn:hi | mn:span[@class = 'fmt-hi']" priority="3">
4739
- <fo:inline background-color="yellow">
4842
+ <fo:inline xsl:use-attribute-sets="hi-style">
4843
+ <xsl:call-template name="refine_hi-style"/>
4740
4844
  <xsl:apply-templates/>
4741
4845
  </fo:inline>
4742
4846
  </xsl:template>
@@ -4822,7 +4926,8 @@
4822
4926
  </xsl:template>
4823
4927
 
4824
4928
  <xsl:template match="mn:strike">
4825
- <fo:inline text-decoration="line-through">
4929
+ <fo:inline xsl:use-attribute-sets="strike-style">
4930
+ <xsl:call-template name="refine_strike-style"/>
4826
4931
  <xsl:apply-templates/>
4827
4932
  </fo:inline>
4828
4933
  </xsl:template>
@@ -4902,6 +5007,7 @@
4902
5007
 
4903
5008
  <xsl:template match="mn:pre" name="pre">
4904
5009
  <fo:block xsl:use-attribute-sets="pre-style">
5010
+ <xsl:call-template name="refine_pre-style"/>
4905
5011
  <xsl:copy-of select="@id"/>
4906
5012
  <xsl:choose>
4907
5013
 
@@ -4932,22 +5038,40 @@
4932
5038
  <xsl:attribute-set name="permission-style">
4933
5039
  </xsl:attribute-set>
4934
5040
 
5041
+ <xsl:template name="refine_permission-style">
5042
+ </xsl:template>
5043
+
4935
5044
  <xsl:attribute-set name="permission-name-style">
4936
5045
  </xsl:attribute-set>
4937
5046
 
5047
+ <xsl:template name="refine_permission-name-style">
5048
+ </xsl:template>
5049
+
4938
5050
  <xsl:attribute-set name="permission-label-style">
4939
5051
  </xsl:attribute-set>
4940
5052
 
5053
+ <xsl:template name="refine_permission-label-style">
5054
+ </xsl:template>
5055
+
4941
5056
  <xsl:attribute-set name="requirement-style">
4942
5057
  </xsl:attribute-set>
4943
5058
 
5059
+ <xsl:template name="refine_requirement-style">
5060
+ </xsl:template>
5061
+
4944
5062
  <xsl:attribute-set name="requirement-name-style">
4945
5063
  <xsl:attribute name="keep-with-next">always</xsl:attribute>
4946
5064
  </xsl:attribute-set>
4947
5065
 
5066
+ <xsl:template name="refine_requirement-name-style">
5067
+ </xsl:template>
5068
+
4948
5069
  <xsl:attribute-set name="requirement-label-style">
4949
5070
  </xsl:attribute-set>
4950
5071
 
5072
+ <xsl:template name="refine_requirement-label-style">
5073
+ </xsl:template>
5074
+
4951
5075
  <xsl:attribute-set name="subject-style">
4952
5076
  </xsl:attribute-set>
4953
5077
 
@@ -4975,18 +5099,28 @@
4975
5099
  <xsl:attribute-set name="recommendation-style">
4976
5100
  </xsl:attribute-set>
4977
5101
 
5102
+ <xsl:template name="refine_recommendation-style">
5103
+ </xsl:template>
5104
+
4978
5105
  <xsl:attribute-set name="recommendation-name-style">
4979
5106
  </xsl:attribute-set>
4980
5107
 
5108
+ <xsl:template name="refine_recommendation-name-style">
5109
+ </xsl:template>
5110
+
4981
5111
  <xsl:attribute-set name="recommendation-label-style">
4982
5112
  </xsl:attribute-set>
4983
5113
 
5114
+ <xsl:template name="refine_recommendation-label-style">
5115
+ </xsl:template>
5116
+
4984
5117
  <!-- ========== -->
4985
5118
  <!-- permission -->
4986
5119
  <!-- ========== -->
4987
5120
  <xsl:template match="mn:permission">
4988
5121
  <xsl:call-template name="setNamedDestination"/>
4989
5122
  <fo:block id="{@id}" xsl:use-attribute-sets="permission-style">
5123
+ <xsl:call-template name="refine_permission-style"/>
4990
5124
  <xsl:apply-templates select="mn:fmt-name"/>
4991
5125
  <xsl:apply-templates select="node()[not(self::mn:fmt-name)]"/>
4992
5126
  </fo:block>
@@ -4995,6 +5129,7 @@
4995
5129
  <xsl:template match="mn:permission/mn:fmt-name">
4996
5130
  <xsl:if test="normalize-space() != ''">
4997
5131
  <fo:block xsl:use-attribute-sets="permission-name-style">
5132
+ <xsl:call-template name="refine_permission-name-style"/>
4998
5133
  <xsl:apply-templates/>
4999
5134
  </fo:block>
5000
5135
  </xsl:if>
@@ -5002,6 +5137,7 @@
5002
5137
 
5003
5138
  <xsl:template match="mn:permission/mn:label">
5004
5139
  <fo:block xsl:use-attribute-sets="permission-label-style">
5140
+ <xsl:call-template name="refine_permission-label-style"/>
5005
5141
  <xsl:apply-templates/>
5006
5142
  </fo:block>
5007
5143
  </xsl:template>
@@ -5014,6 +5150,7 @@
5014
5150
  <xsl:template match="mn:requirement">
5015
5151
  <xsl:call-template name="setNamedDestination"/>
5016
5152
  <fo:block id="{@id}" xsl:use-attribute-sets="requirement-style">
5153
+ <xsl:call-template name="refine_requirement-style"/>
5017
5154
  <xsl:apply-templates select="mn:fmt-name"/>
5018
5155
  <xsl:apply-templates select="mn:label"/>
5019
5156
  <xsl:apply-templates select="@obligation"/>
@@ -5026,6 +5163,7 @@
5026
5163
  <xsl:if test="normalize-space() != ''">
5027
5164
 
5028
5165
  <fo:block xsl:use-attribute-sets="requirement-name-style">
5166
+ <xsl:call-template name="refine_requirement-name-style"/>
5029
5167
  <xsl:apply-templates/>
5030
5168
  </fo:block>
5031
5169
  </xsl:if>
@@ -5033,6 +5171,7 @@
5033
5171
 
5034
5172
  <xsl:template match="mn:requirement/mn:label">
5035
5173
  <fo:block xsl:use-attribute-sets="requirement-label-style">
5174
+ <xsl:call-template name="refine_requirement-label-style"/>
5036
5175
  <xsl:apply-templates/>
5037
5176
  </fo:block>
5038
5177
  </xsl:template>
@@ -5058,6 +5197,7 @@
5058
5197
  <xsl:template match="mn:recommendation">
5059
5198
  <xsl:call-template name="setNamedDestination"/>
5060
5199
  <fo:block id="{@id}" xsl:use-attribute-sets="recommendation-style">
5200
+ <xsl:call-template name="refine_recommendation-style"/>
5061
5201
  <xsl:apply-templates select="mn:fmt-name"/>
5062
5202
  <xsl:apply-templates select="node()[not(self::mn:fmt-name)]"/>
5063
5203
  </fo:block>
@@ -5067,6 +5207,7 @@
5067
5207
  <xsl:if test="normalize-space() != ''">
5068
5208
 
5069
5209
  <fo:block xsl:use-attribute-sets="recommendation-name-style">
5210
+ <xsl:call-template name="refine_recommendation-name-style"/>
5070
5211
  <xsl:apply-templates/>
5071
5212
  </fo:block>
5072
5213
  </xsl:if>
@@ -5074,6 +5215,7 @@
5074
5215
 
5075
5216
  <xsl:template match="mn:recommendation/mn:label">
5076
5217
  <fo:block xsl:use-attribute-sets="recommendation-label-style">
5218
+ <xsl:call-template name="refine_recommendation-label-style"/>
5077
5219
  <xsl:apply-templates/>
5078
5220
  </fo:block>
5079
5221
  </xsl:template>
@@ -5255,6 +5397,9 @@
5255
5397
  <xsl:attribute name="space-after">12pt</xsl:attribute>
5256
5398
  </xsl:attribute-set> <!-- term-style -->
5257
5399
 
5400
+ <xsl:template name="refine_term-style">
5401
+ </xsl:template>
5402
+
5258
5403
  <xsl:attribute-set name="term-name-style">
5259
5404
  <xsl:attribute name="keep-with-next">always</xsl:attribute>
5260
5405
  <xsl:attribute name="font-weight">bold</xsl:attribute>
@@ -5262,32 +5407,59 @@
5262
5407
  <xsl:attribute name="space-after">2pt</xsl:attribute>
5263
5408
  </xsl:attribute-set> <!-- term-name-style -->
5264
5409
 
5265
- <xsl:attribute-set name="preferred-block-style">
5410
+ <xsl:template name="refine_term-name-style">
5411
+ </xsl:template>
5412
+
5413
+ <xsl:attribute-set name="preferred-block-style">
5266
5414
  </xsl:attribute-set> <!-- preferred-block-style -->
5267
5415
 
5416
+ <xsl:template name="refine_preferred-block-style">
5417
+ </xsl:template>
5418
+
5268
5419
  <xsl:attribute-set name="preferred-term-style">
5269
5420
  <xsl:attribute name="keep-with-next">always</xsl:attribute>
5270
5421
  <xsl:attribute name="font-weight">bold</xsl:attribute>
5271
5422
  <xsl:attribute name="font-weight">normal</xsl:attribute>
5272
5423
  </xsl:attribute-set> <!-- preferred-term-style -->
5273
5424
 
5425
+ <xsl:template name="refine_preferred-term-style">
5426
+ <xsl:if test="mn:strong">
5427
+ <xsl:attribute name="font-weight">normal</xsl:attribute>
5428
+ </xsl:if>
5429
+ </xsl:template>
5430
+
5274
5431
  <xsl:attribute-set name="domain-style">
5275
5432
  </xsl:attribute-set> <!-- domain-style -->
5276
5433
 
5434
+ <xsl:template name="refine_domain-style">
5435
+ </xsl:template>
5436
+
5277
5437
  <xsl:attribute-set name="admitted-style">
5278
5438
  </xsl:attribute-set> <!-- admitted-style -->
5279
5439
 
5440
+ <xsl:template name="refine_admitted-style">
5441
+ </xsl:template>
5442
+
5280
5443
  <xsl:attribute-set name="deprecates-style">
5281
5444
  </xsl:attribute-set> <!-- deprecates-style -->
5282
5445
 
5446
+ <xsl:template name="refine_deprecates-style">
5447
+ </xsl:template>
5448
+
5283
5449
  <xsl:attribute-set name="related-block-style" use-attribute-sets="preferred-block-style">
5284
5450
  </xsl:attribute-set>
5285
5451
 
5452
+ <xsl:template name="refine_related-block-style">
5453
+ </xsl:template>
5454
+
5286
5455
  <xsl:attribute-set name="definition-style">
5287
5456
  <xsl:attribute name="space-before">2pt</xsl:attribute>
5288
5457
  <xsl:attribute name="space-after">2pt</xsl:attribute>
5289
5458
  </xsl:attribute-set> <!-- definition-style -->
5290
5459
 
5460
+ <xsl:template name="refine_definition-style">
5461
+ </xsl:template>
5462
+
5291
5463
  <xsl:attribute-set name="termsource-style">
5292
5464
  </xsl:attribute-set> <!-- termsource-style -->
5293
5465
 
@@ -5300,9 +5472,15 @@
5300
5472
  <xsl:attribute-set name="termsource-text-style">
5301
5473
  </xsl:attribute-set> <!-- termsource-text-style -->
5302
5474
 
5475
+ <xsl:template name="refine_termsource-text-style">
5476
+ </xsl:template>
5477
+
5303
5478
  <xsl:attribute-set name="origin-style">
5304
5479
  </xsl:attribute-set> <!-- origin-style -->
5305
5480
 
5481
+ <xsl:template name="refine_origin-style">
5482
+ </xsl:template>
5483
+
5306
5484
  <!-- ====== -->
5307
5485
  <!-- term -->
5308
5486
  <!-- ====== -->
@@ -5318,9 +5496,8 @@
5318
5496
  <xsl:template match="mn:term">
5319
5497
  <xsl:call-template name="setNamedDestination"/>
5320
5498
  <fo:block id="{@id}" xsl:use-attribute-sets="term-style">
5499
+ <xsl:call-template name="refine_term-style"/>
5321
5500
 
5322
- <xsl:if test="parent::mn:term and not(preceding-sibling::mn:term)">
5323
- </xsl:if>
5324
5501
  <xsl:apply-templates select="node()[not(self::mn:fmt-name)]"/>
5325
5502
  </fo:block>
5326
5503
  </xsl:template>
@@ -5396,6 +5573,7 @@
5396
5573
  <!-- text SOURCE: -->
5397
5574
  <xsl:template match="mn:fmt-termsource/mn:strong[1][following-sibling::*[1][self::mn:fmt-origin]]/text()">
5398
5575
  <fo:inline xsl:use-attribute-sets="termsource-text-style">
5576
+ <xsl:call-template name="refine_termsource-text-style"/>
5399
5577
  <xsl:value-of select="."/>
5400
5578
  </fo:inline>
5401
5579
  </xsl:template>
@@ -5408,6 +5586,7 @@
5408
5586
  <xsl:attribute name="fox:alt-text"><xsl:value-of select="@bibitemid"/></xsl:attribute>
5409
5587
  </xsl:if>
5410
5588
  <fo:inline xsl:use-attribute-sets="origin-style">
5589
+ <xsl:call-template name="refine_origin-style"/>
5411
5590
  <xsl:apply-templates/>
5412
5591
  </fo:inline>
5413
5592
  </fo:basic-link>
@@ -5457,9 +5636,12 @@
5457
5636
  </xsl:variable>
5458
5637
  <fo:block font-size="{normalize-space($font-size)}" role="H{$levelTerm}" xsl:use-attribute-sets="preferred-block-style">
5459
5638
 
5639
+ <xsl:call-template name="refine_preferred-block-style"/>
5640
+
5460
5641
  <xsl:if test="parent::mn:term and not(preceding-sibling::mn:fmt-preferred)"> <!-- if first preffered in term, then display term's name -->
5461
5642
 
5462
5643
  <fo:block xsl:use-attribute-sets="term-name-style" role="SKIP">
5644
+ <xsl:call-template name="refine_term-name-style"/>
5463
5645
 
5464
5646
  <xsl:for-each select="ancestor::mn:term[1]/mn:fmt-name"><!-- change context -->
5465
5647
  <xsl:call-template name="setIDforNamedDestination"/>
@@ -5470,7 +5652,7 @@
5470
5652
  </xsl:if>
5471
5653
 
5472
5654
  <fo:block xsl:use-attribute-sets="preferred-term-style" role="SKIP">
5473
- <xsl:call-template name="setStyle_preferred"/>
5655
+ <xsl:call-template name="refine_preferred-term-style"/>
5474
5656
 
5475
5657
  <xsl:apply-templates/>
5476
5658
  </fo:block>
@@ -5491,22 +5673,18 @@
5491
5673
 
5492
5674
  <xsl:template match="mn:fmt-admitted">
5493
5675
  <fo:block xsl:use-attribute-sets="admitted-style">
5676
+ <xsl:call-template name="refine_admitted-style"/>
5494
5677
  <xsl:apply-templates/>
5495
5678
  </fo:block>
5496
5679
  </xsl:template>
5497
5680
 
5498
5681
  <xsl:template match="mn:fmt-deprecates">
5499
5682
  <fo:block xsl:use-attribute-sets="deprecates-style">
5683
+ <xsl:call-template name="refine_deprecates-style"/>
5500
5684
  <xsl:apply-templates/>
5501
5685
  </fo:block>
5502
5686
  </xsl:template>
5503
5687
 
5504
- <xsl:template name="setStyle_preferred">
5505
- <xsl:if test="mn:strong">
5506
- <xsl:attribute name="font-weight">normal</xsl:attribute>
5507
- </xsl:if>
5508
- </xsl:template>
5509
-
5510
5688
  <!-- regarding ISO 10241-1:2011, If there is more than one preferred term, each preferred term follows the previous one on a new line. -->
5511
5689
  <!-- in metanorma xml preferred terms delimited by semicolons -->
5512
5690
  <xsl:template match="mn:fmt-preferred/text()[contains(., ';')] | mn:fmt-preferred/mn:strong/text()[contains(., ';')]">
@@ -5516,6 +5694,7 @@
5516
5694
 
5517
5695
  <xsl:template match="mn:fmt-related">
5518
5696
  <fo:block role="SKIP" xsl:use-attribute-sets="related-block-style">
5697
+ <xsl:call-template name="refine_related-block-style"/>
5519
5698
  <xsl:apply-templates/>
5520
5699
  </fo:block>
5521
5700
  </xsl:template>
@@ -5530,6 +5709,7 @@
5530
5709
  <!-- ========== -->
5531
5710
  <xsl:template match="mn:fmt-definition">
5532
5711
  <fo:block xsl:use-attribute-sets="definition-style" role="SKIP">
5712
+ <xsl:call-template name="refine_definition-style"/>
5533
5713
  <xsl:apply-templates/>
5534
5714
  </fo:block>
5535
5715
  </xsl:template>
@@ -5577,6 +5757,9 @@
5577
5757
  <xsl:attribute-set name="example-body-style">
5578
5758
  </xsl:attribute-set> <!-- example-body-style -->
5579
5759
 
5760
+ <xsl:template name="refine_example-body-style">
5761
+ </xsl:template>
5762
+
5580
5763
  <xsl:attribute-set name="example-name-style">
5581
5764
  </xsl:attribute-set> <!-- example-name-style -->
5582
5765
 
@@ -5625,6 +5808,8 @@
5625
5808
  <xsl:when test="contains($element, 'block')">
5626
5809
  <fo:block xsl:use-attribute-sets="example-p-style">
5627
5810
 
5811
+ <xsl:call-template name="refine_example-p-style"/>
5812
+
5628
5813
  <xsl:apply-templates/>
5629
5814
  </fo:block>
5630
5815
  </xsl:when>
@@ -5676,6 +5861,7 @@
5676
5861
  </fo:block>
5677
5862
 
5678
5863
  <fo:block-container xsl:use-attribute-sets="example-body-style" role="SKIP">
5864
+ <xsl:call-template name="refine_example-body-style"/>
5679
5865
  <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
5680
5866
  <xsl:variable name="example_body">
5681
5867
  <xsl:apply-templates select="node()[not(self::mn:fmt-name)]">
@@ -5738,6 +5924,7 @@
5738
5924
  <xsl:if test="*[not(self::mn:fmt-name)][position() &gt; 1]">
5739
5925
  <!-- display further elements in blocks -->
5740
5926
  <fo:block-container xsl:use-attribute-sets="example-body-style" role="SKIP">
5927
+ <xsl:call-template name="refine_example-body-style"/>
5741
5928
  <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
5742
5929
  <xsl:apply-templates select="*[not(self::mn:fmt-name)][position() &gt; 1]">
5743
5930
  <xsl:with-param name="fo_element" select="'block'"/>
@@ -5989,6 +6176,9 @@
5989
6176
  <xsl:attribute name="font-weight">bold</xsl:attribute>
5990
6177
  </xsl:attribute-set> <!-- table-fn-number-style -->
5991
6178
 
6179
+ <xsl:template name="refine_table-fn-number-style">
6180
+ </xsl:template>
6181
+
5992
6182
  <xsl:attribute-set name="table-fmt-fn-label-style">
5993
6183
  <xsl:attribute name="font-size">80%</xsl:attribute>
5994
6184
  <xsl:attribute name="font-size">60%</xsl:attribute>
@@ -5998,32 +6188,12 @@
5998
6188
  <xsl:template name="refine_table-fmt-fn-label-style">
5999
6189
  </xsl:template>
6000
6190
 
6001
- <xsl:attribute-set name="fn-container-body-style">
6002
- <xsl:attribute name="text-indent">0</xsl:attribute>
6003
- <xsl:attribute name="start-indent">0</xsl:attribute>
6004
- </xsl:attribute-set>
6005
-
6006
6191
  <xsl:attribute-set name="table-fn-body-style">
6007
6192
  </xsl:attribute-set>
6008
6193
 
6009
- <xsl:attribute-set name="figure-fn-number-style">
6010
- <xsl:attribute name="padding-right">5mm</xsl:attribute>
6011
- </xsl:attribute-set> <!-- figure-fn-number-style -->
6012
-
6013
- <xsl:attribute-set name="figure-fmt-fn-label-style">
6014
- <xsl:attribute name="font-size">80%</xsl:attribute>
6015
- <xsl:attribute name="vertical-align">super</xsl:attribute>
6016
- <xsl:attribute name="font-size">60%</xsl:attribute>
6017
- <xsl:attribute name="vertical-align">super</xsl:attribute>
6018
- </xsl:attribute-set> <!-- figure-fmt-fn-label-style -->
6019
-
6020
- <xsl:template name="refine_figure-fmt-fn-label-style">
6194
+ <xsl:template name="refine_table-fn-body-style">
6021
6195
  </xsl:template>
6022
6196
 
6023
- <xsl:attribute-set name="figure-fn-body-style">
6024
- <xsl:attribute name="text-align">justify</xsl:attribute>
6025
- <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
6026
- </xsl:attribute-set>
6027
6197
  <!-- ========================== -->
6028
6198
  <!-- END Table styles -->
6029
6199
  <!-- ========================== -->
@@ -7299,6 +7469,7 @@
7299
7469
  </xsl:apply-templates>
7300
7470
 
7301
7471
  <fo:inline xsl:use-attribute-sets="table-fn-body-style">
7472
+ <xsl:call-template name="refine_table-fn-body-style"/>
7302
7473
  <!-- <xsl:copy-of select="./node()"/> -->
7303
7474
  <xsl:apply-templates/>
7304
7475
  </fo:inline>
@@ -7317,6 +7488,7 @@
7317
7488
  <xsl:param name="process">false</xsl:param>
7318
7489
  <xsl:if test="$process = 'true'">
7319
7490
  <fo:inline xsl:use-attribute-sets="table-fn-number-style" role="SKIP">
7491
+ <xsl:call-template name="refine_table-fn-number-style"/>
7320
7492
 
7321
7493
  <!-- tab is padding-right -->
7322
7494
  <xsl:apply-templates select=".//mn:tab">
@@ -8190,9 +8362,18 @@
8190
8362
  <xsl:attribute name="margin-bottom">16pt</xsl:attribute>
8191
8363
  </xsl:attribute-set>
8192
8364
 
8365
+ <xsl:template name="refine_dl-block-style">
8366
+ <xsl:if test="@key = 'true' and ancestor::mn:figure">
8367
+ <xsl:attribute name="keep-together.within-column">always</xsl:attribute>
8368
+ </xsl:if>
8369
+ </xsl:template>
8370
+
8193
8371
  <xsl:attribute-set name="dt-row-style">
8194
8372
  </xsl:attribute-set>
8195
8373
 
8374
+ <xsl:template name="refine_dt-row-style">
8375
+ </xsl:template>
8376
+
8196
8377
  <xsl:attribute-set name="dt-cell-style">
8197
8378
  </xsl:attribute-set>
8198
8379
 
@@ -8211,6 +8392,14 @@
8211
8392
  <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
8212
8393
  </xsl:attribute-set> <!-- dl-name-style -->
8213
8394
 
8395
+ <xsl:template name="refine_dl-name-style">
8396
+ <xsl:if test="ancestor::mn:tfoot and ../@key = 'true'">
8397
+ <xsl:attribute name="margin-left">-<xsl:value-of select="$tableAnnotationIndent"/></xsl:attribute>
8398
+ <xsl:attribute name="margin-bottom">2pt</xsl:attribute>
8399
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
8400
+ </xsl:if>
8401
+ </xsl:template>
8402
+
8214
8403
  <xsl:attribute-set name="dd-cell-style">
8215
8404
  <xsl:attribute name="padding-left">2mm</xsl:attribute>
8216
8405
  </xsl:attribute-set>
@@ -8249,9 +8438,7 @@
8249
8438
  <!-- <dl><xsl:copy-of select="."/></dl> -->
8250
8439
  <fo:block-container xsl:use-attribute-sets="dl-block-style" role="SKIP">
8251
8440
 
8252
- <xsl:if test="@key = 'true' and ancestor::mn:figure">
8253
- <xsl:attribute name="keep-together.within-column">always</xsl:attribute>
8254
- </xsl:if>
8441
+ <xsl:call-template name="refine_dl-block-style"/>
8255
8442
 
8256
8443
  <xsl:call-template name="setBlockSpanAll"/>
8257
8444
  <xsl:if test="not(ancestor::mn:quote)">
@@ -8579,11 +8766,8 @@
8579
8766
  <xsl:param name="process">false</xsl:param>
8580
8767
  <xsl:if test="$process = 'true'">
8581
8768
  <fo:block xsl:use-attribute-sets="dl-name-style">
8582
- <xsl:if test="ancestor::mn:tfoot and ../@key = 'true'">
8583
- <xsl:attribute name="margin-left">-<xsl:value-of select="$tableAnnotationIndent"/></xsl:attribute>
8584
- <xsl:attribute name="margin-bottom">2pt</xsl:attribute>
8585
- <xsl:attribute name="font-weight">bold</xsl:attribute>
8586
- </xsl:if>
8769
+
8770
+ <xsl:call-template name="refine_dl-name-style"/>
8587
8771
 
8588
8772
  <xsl:apply-templates/>
8589
8773
  </fo:block>
@@ -8773,6 +8957,8 @@
8773
8957
  <xsl:param name="split_keep-within-line"/>
8774
8958
 
8775
8959
  <fo:table-row xsl:use-attribute-sets="dt-row-style">
8960
+ <xsl:call-template name="refine_dt-row-style"/>
8961
+
8776
8962
  <xsl:call-template name="insert_dt_cell">
8777
8963
  <xsl:with-param name="key_iso" select="$key_iso"/>
8778
8964
  <xsl:with-param name="split_keep-within-line" select="$split_keep-within-line"/>
@@ -8982,15 +9168,22 @@
8982
9168
  <xsl:attribute-set name="appendix-style">
8983
9169
  </xsl:attribute-set>
8984
9170
 
9171
+ <xsl:template name="refine_appendix-style">
9172
+ </xsl:template>
9173
+
8985
9174
  <xsl:attribute-set name="appendix-example-style">
8986
9175
  </xsl:attribute-set>
8987
9176
 
9177
+ <xsl:template name="refine_appendix-example-style">
9178
+ </xsl:template>
9179
+
8988
9180
  <!-- ======================== -->
8989
9181
  <!-- Appendix processing -->
8990
9182
  <!-- ======================== -->
8991
9183
  <xsl:template match="mn:appendix">
8992
9184
  <xsl:call-template name="setNamedDestination"/>
8993
9185
  <fo:block id="{@id}" xsl:use-attribute-sets="appendix-style">
9186
+ <xsl:call-template name="refine_appendix-style"/>
8994
9187
  <xsl:apply-templates select="mn:fmt-title"/>
8995
9188
  </fo:block>
8996
9189
  <xsl:apply-templates select="node()[not(self::mn:fmt-title)]"/>
@@ -9009,13 +9202,23 @@
9009
9202
  <xsl:template match="mn:appendix//mn:example" priority="2">
9010
9203
  <xsl:call-template name="setNamedDestination"/>
9011
9204
  <fo:block id="{@id}" xsl:use-attribute-sets="appendix-example-style">
9205
+ <xsl:call-template name="refine_appendix-example-style"/>
9012
9206
  <xsl:apply-templates select="mn:fmt-name"/>
9013
9207
  </fo:block>
9014
9208
  <xsl:apply-templates select="node()[not(self::mn:fmt-name)]"/>
9015
9209
  </xsl:template>
9016
9210
 
9017
9211
  <xsl:attribute-set name="xref-style">
9018
- </xsl:attribute-set>
9212
+ </xsl:attribute-set> <!-- xref-style -->
9213
+
9214
+ <xsl:template name="refine_xref-style">
9215
+ <xsl:if test="string-length(normalize-space()) &lt; 30 and not(contains(normalize-space(), 'http://')) and not(contains(normalize-space(), 'https://')) and not(ancestor::*[self::mn:table or self::mn:dl])">
9216
+ <xsl:attribute name="keep-together.within-line">always</xsl:attribute>
9217
+ </xsl:if>
9218
+ <xsl:if test="parent::mn:add">
9219
+ <xsl:call-template name="append_add-style"/>
9220
+ </xsl:if>
9221
+ </xsl:template> <!-- refine_xref-style -->
9019
9222
 
9020
9223
  <xsl:template match="mn:fmt-xref">
9021
9224
  <xsl:call-template name="insert_basic_link">
@@ -9024,12 +9227,8 @@
9024
9227
  <xsl:call-template name="getAltText"/>
9025
9228
  </xsl:variable>
9026
9229
  <fo:basic-link internal-destination="{@target}" fox:alt-text="{$alt_text}" xsl:use-attribute-sets="xref-style">
9027
- <xsl:if test="string-length(normalize-space()) &lt; 30 and not(contains(normalize-space(), 'http://')) and not(contains(normalize-space(), 'https://')) and not(ancestor::*[self::mn:table or self::mn:dl])">
9028
- <xsl:attribute name="keep-together.within-line">always</xsl:attribute>
9029
- </xsl:if>
9030
- <xsl:if test="parent::mn:add">
9031
- <xsl:call-template name="append_add-style"/>
9032
- </xsl:if>
9230
+ <xsl:call-template name="refine_xref-style"/>
9231
+
9033
9232
  <xsl:apply-templates/>
9034
9233
  </fo:basic-link>
9035
9234
  </xsl:with-param>
@@ -9138,16 +9337,16 @@
9138
9337
  <xsl:attribute-set name="note-style">
9139
9338
  <xsl:attribute name="text-indent">0mm</xsl:attribute>
9140
9339
  <xsl:attribute name="space-before">2pt</xsl:attribute>
9141
- </xsl:attribute-set>
9340
+ </xsl:attribute-set> <!-- note-style -->
9142
9341
 
9143
9342
  <xsl:template name="refine_note-style">
9144
- </xsl:template>
9343
+ </xsl:template> <!-- refine_note-style -->
9145
9344
 
9146
9345
  <xsl:variable name="note-body-indent">10mm</xsl:variable>
9147
9346
  <xsl:variable name="note-body-indent-table">5mm</xsl:variable>
9148
9347
 
9149
9348
  <xsl:attribute-set name="note-name-style">
9150
- </xsl:attribute-set>
9349
+ </xsl:attribute-set> <!-- note-name-style -->
9151
9350
 
9152
9351
  <xsl:template name="refine_note-name-style">
9153
9352
  <xsl:if test="ancestor::mn:figure">
@@ -9164,19 +9363,22 @@
9164
9363
  </xsl:template> <!-- refine_table-note-name-style -->
9165
9364
 
9166
9365
  <xsl:attribute-set name="note-p-style">
9167
- </xsl:attribute-set>
9366
+ </xsl:attribute-set> <!-- note-p-style -->
9367
+
9368
+ <xsl:template name="refine_note-p-style">
9369
+ </xsl:template>
9168
9370
 
9169
9371
  <xsl:attribute-set name="termnote-style">
9170
9372
  <xsl:attribute name="text-indent">0mm</xsl:attribute>
9171
9373
  <xsl:attribute name="space-before">4pt</xsl:attribute>
9172
9374
  <xsl:attribute name="space-after">4pt</xsl:attribute>
9173
- </xsl:attribute-set>
9375
+ </xsl:attribute-set> <!-- termnote-style -->
9174
9376
 
9175
9377
  <xsl:template name="refine_termnote-style">
9176
9378
  </xsl:template> <!-- refine_termnote-style -->
9177
9379
 
9178
9380
  <xsl:attribute-set name="termnote-name-style">
9179
- </xsl:attribute-set>
9381
+ </xsl:attribute-set> <!-- termnote-name-style -->
9180
9382
 
9181
9383
  <xsl:template name="refine_termnote-name-style">
9182
9384
  </xsl:template>
@@ -9184,6 +9386,9 @@
9184
9386
  <xsl:attribute-set name="termnote-p-style">
9185
9387
  </xsl:attribute-set>
9186
9388
 
9389
+ <xsl:template name="refine_termnote-p-style">
9390
+ </xsl:template>
9391
+
9187
9392
  <!-- ====== -->
9188
9393
  <!-- note -->
9189
9394
  <!-- termnote -->
@@ -9247,11 +9452,13 @@
9247
9452
  <xsl:choose>
9248
9453
  <xsl:when test="$num = 1"> <!-- display first NOTE's paragraph in the same line with label NOTE -->
9249
9454
  <fo:inline xsl:use-attribute-sets="note-p-style" role="SKIP">
9455
+ <xsl:call-template name="refine_note-p-style"/>
9250
9456
  <xsl:apply-templates/>
9251
9457
  </fo:inline>
9252
9458
  </xsl:when>
9253
9459
  <xsl:otherwise>
9254
9460
  <fo:block xsl:use-attribute-sets="note-p-style" role="SKIP">
9461
+ <xsl:call-template name="refine_note-p-style"/>
9255
9462
  <xsl:apply-templates/>
9256
9463
  </fo:block>
9257
9464
  </xsl:otherwise>
@@ -9343,11 +9550,13 @@
9343
9550
  <xsl:choose>
9344
9551
  <xsl:when test="$num = 1"> <!-- first paragraph renders in the same line as titlenote name -->
9345
9552
  <fo:inline xsl:use-attribute-sets="termnote-p-style">
9553
+ <xsl:call-template name="refine_termnote-p-style"/>
9346
9554
  <xsl:apply-templates/>
9347
9555
  </fo:inline>
9348
9556
  </xsl:when>
9349
9557
  <xsl:otherwise>
9350
9558
  <fo:block xsl:use-attribute-sets="termnote-p-style">
9559
+ <xsl:call-template name="refine_termnote-p-style"/>
9351
9560
  <xsl:apply-templates/>
9352
9561
  </fo:block>
9353
9562
  </xsl:otherwise>
@@ -9362,7 +9571,7 @@
9362
9571
  <xsl:attribute name="margin-right">12mm</xsl:attribute>
9363
9572
  <xsl:attribute name="margin-left">0mm</xsl:attribute>
9364
9573
  <xsl:attribute name="margin-right">0mm</xsl:attribute>
9365
- </xsl:attribute-set>
9574
+ </xsl:attribute-set> <!-- quote-style -->
9366
9575
 
9367
9576
  <xsl:template name="refine_quote-style">
9368
9577
  </xsl:template>
@@ -9371,6 +9580,9 @@
9371
9580
  <xsl:attribute name="text-align">right</xsl:attribute>
9372
9581
  </xsl:attribute-set>
9373
9582
 
9583
+ <xsl:template name="refine_quote-source-style">
9584
+ </xsl:template>
9585
+
9374
9586
  <!-- ====== -->
9375
9587
  <!-- quote -->
9376
9588
  <!-- source -->
@@ -9399,6 +9611,7 @@
9399
9611
  </fo:block-container>
9400
9612
  <xsl:if test="mn:author or mn:fmt-source or mn:attribution">
9401
9613
  <fo:block xsl:use-attribute-sets="quote-source-style">
9614
+ <xsl:call-template name="refine_quote-source-style"/>
9402
9615
  <!-- — ISO, ISO 7301:2011, Clause 1 -->
9403
9616
  <xsl:apply-templates select="mn:author"/>
9404
9617
  <xsl:apply-templates select="mn:fmt-source"/>
@@ -9460,6 +9673,9 @@
9460
9673
  <xsl:attribute-set name="figure-style">
9461
9674
  </xsl:attribute-set>
9462
9675
 
9676
+ <xsl:template name="refine_figure-style">
9677
+ </xsl:template>
9678
+
9463
9679
  <xsl:attribute-set name="figure-name-style">
9464
9680
  <xsl:attribute name="role">Caption</xsl:attribute>
9465
9681
  <xsl:attribute name="font-weight">bold</xsl:attribute>
@@ -9467,7 +9683,7 @@
9467
9683
  <xsl:attribute name="margin-top">6pt</xsl:attribute>
9468
9684
  <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
9469
9685
  <xsl:attribute name="keep-with-previous">always</xsl:attribute>
9470
- </xsl:attribute-set>
9686
+ </xsl:attribute-set> <!-- figure-name-style -->
9471
9687
 
9472
9688
  <xsl:template name="refine_figure-name-style">
9473
9689
  <xsl:if test="$doctype = 'technical-report'">
@@ -9478,7 +9694,7 @@
9478
9694
  <xsl:attribute-set name="image-style">
9479
9695
  <xsl:attribute name="role">SKIP</xsl:attribute>
9480
9696
  <xsl:attribute name="text-align">center</xsl:attribute>
9481
- </xsl:attribute-set>
9697
+ </xsl:attribute-set> <!-- image-style -->
9482
9698
 
9483
9699
  <xsl:template name="refine_image-style">
9484
9700
  </xsl:template>
@@ -9488,14 +9704,55 @@
9488
9704
  <xsl:attribute name="content-height">100%</xsl:attribute>
9489
9705
  <xsl:attribute name="scaling">uniform</xsl:attribute>
9490
9706
  <xsl:attribute name="content-width">scale-to-fit</xsl:attribute>
9491
- </xsl:attribute-set>
9707
+ </xsl:attribute-set> <!-- image-graphic-style -->
9708
+
9709
+ <xsl:template name="refine_image-graphic-style">
9710
+ </xsl:template>
9492
9711
 
9493
9712
  <xsl:attribute-set name="figure-source-style">
9494
9713
  </xsl:attribute-set>
9495
9714
 
9715
+ <xsl:template name="refine_figure-source-style">
9716
+ </xsl:template>
9717
+
9496
9718
  <xsl:attribute-set name="figure-pseudocode-p-style">
9497
9719
  </xsl:attribute-set>
9498
9720
 
9721
+ <xsl:template name="refine_figure-pseudocode-p-style">
9722
+ </xsl:template>
9723
+
9724
+ <xsl:attribute-set name="figure-fn-number-style">
9725
+ <xsl:attribute name="padding-right">5mm</xsl:attribute>
9726
+ </xsl:attribute-set> <!-- figure-fn-number-style -->
9727
+
9728
+ <xsl:template name="refine_figure-fn-number-style">
9729
+ </xsl:template>
9730
+
9731
+ <xsl:attribute-set name="figure-fmt-fn-label-style">
9732
+ <xsl:attribute name="font-size">80%</xsl:attribute>
9733
+ <xsl:attribute name="vertical-align">super</xsl:attribute>
9734
+ <xsl:attribute name="font-size">60%</xsl:attribute>
9735
+ <xsl:attribute name="vertical-align">super</xsl:attribute>
9736
+ </xsl:attribute-set> <!-- figure-fmt-fn-label-style -->
9737
+
9738
+ <xsl:template name="refine_figure-fmt-fn-label-style">
9739
+ </xsl:template>
9740
+
9741
+ <xsl:attribute-set name="figure-fn-body-style">
9742
+ <xsl:attribute name="text-align">justify</xsl:attribute>
9743
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
9744
+ </xsl:attribute-set>
9745
+
9746
+ <xsl:template name="refine_figure-fn-body-style">
9747
+ <xsl:variable name="key_iso">
9748
+ </xsl:variable>
9749
+ <xsl:if test="normalize-space($key_iso) = 'true'">
9750
+ <xsl:attribute name="margin-bottom">0</xsl:attribute>
9751
+ </xsl:if>
9752
+ <xsl:attribute name="margin-left">5mm</xsl:attribute>
9753
+ <xsl:attribute name="margin-bottom">0</xsl:attribute>
9754
+ </xsl:template>
9755
+
9499
9756
  <!-- ============================ -->
9500
9757
  <!-- figure's footnotes rendering -->
9501
9758
  <!-- ============================ -->
@@ -9611,11 +9868,8 @@
9611
9868
  </fo:table-cell>
9612
9869
  <fo:table-cell>
9613
9870
  <fo:block xsl:use-attribute-sets="figure-fn-body-style">
9614
- <xsl:if test="normalize-space($key_iso) = 'true'">
9615
- <xsl:attribute name="margin-bottom">0</xsl:attribute>
9616
- </xsl:if>
9617
- <xsl:attribute name="margin-left">5mm</xsl:attribute>
9618
- <xsl:attribute name="margin-bottom">0</xsl:attribute>
9871
+ <xsl:call-template name="refine_figure-fn-body-style"/>
9872
+
9619
9873
  <!-- <xsl:copy-of select="./node()"/> -->
9620
9874
  <xsl:apply-templates/>
9621
9875
  </fo:block>
@@ -9633,6 +9887,7 @@
9633
9887
  <xsl:param name="process">false</xsl:param>
9634
9888
  <xsl:if test="$process = 'true'">
9635
9889
  <fo:inline xsl:use-attribute-sets="figure-fn-number-style" role="SKIP">
9890
+ <xsl:call-template name="refine_figure-fn-number-style"/>
9636
9891
  <xsl:attribute name="padding-right">0mm</xsl:attribute>
9637
9892
 
9638
9893
  <!-- tab is padding-right -->
@@ -9670,6 +9925,7 @@
9670
9925
  <xsl:attribute name="font-size">10pt</xsl:attribute>
9671
9926
  </xsl:if>
9672
9927
  <fo:inline xsl:use-attribute-sets="figure-fn-number-style figure-fmt-fn-label-style"> <!-- id="{@id}" -->
9928
+ <xsl:call-template name="refine_figure-fn-number-style"/>
9673
9929
  <!-- <xsl:value-of select="@reference"/> -->
9674
9930
  <xsl:apply-templates/>
9675
9931
  </fo:inline>
@@ -9715,6 +9971,8 @@
9715
9971
 
9716
9972
  <fo:block xsl:use-attribute-sets="figure-style" role="SKIP">
9717
9973
 
9974
+ <xsl:call-template name="refine_figure-style"/>
9975
+
9718
9976
  <xsl:for-each select="mn:fmt-name"> <!-- set context -->
9719
9977
  <xsl:call-template name="setIDforNamedDestination"/>
9720
9978
  </xsl:for-each>
@@ -9758,6 +10016,7 @@
9758
10016
 
9759
10017
  <xsl:template match="mn:figure[@class = 'pseudocode']//mn:p">
9760
10018
  <fo:block xsl:use-attribute-sets="figure-pseudocode-p-style">
10019
+ <xsl:call-template name="refine_figure-pseudocode-p-style"/>
9761
10020
  <xsl:apply-templates/>
9762
10021
  </fo:block>
9763
10022
  </xsl:template>
@@ -9887,6 +10146,8 @@
9887
10146
  </xsl:variable>
9888
10147
  <xsl:copy-of select="xalan:nodeset($image-graphic-style_attributes)/attributes/@*"/>
9889
10148
 
10149
+ <xsl:call-template name="refine_image-graphic-style"/>
10150
+
9890
10151
  <xsl:if test="not(@mimetype = 'image/svg+xml') and not(ancestor::mn:table)">
9891
10152
  <xsl:variable name="scale">
9892
10153
  <xsl:call-template name="getImageScale">
@@ -10586,6 +10847,9 @@
10586
10847
  <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
10587
10848
  </xsl:attribute-set> <!-- formula-style -->
10588
10849
 
10850
+ <xsl:template name="refine_formula-style">
10851
+ </xsl:template>
10852
+
10589
10853
  <xsl:attribute-set name="formula-stem-block-style">
10590
10854
  <xsl:attribute name="text-align">center</xsl:attribute>
10591
10855
  </xsl:attribute-set> <!-- formula-stem-block-style -->
@@ -10654,6 +10918,8 @@
10654
10918
  <xsl:template match="mn:formula[mn:fmt-name]/mn:fmt-stem">
10655
10919
  <fo:block xsl:use-attribute-sets="formula-style">
10656
10920
 
10921
+ <xsl:call-template name="refine_formula-style"/>
10922
+
10657
10923
  <fo:table table-layout="fixed" width="100%">
10658
10924
  <fo:table-column column-width="95%"/>
10659
10925
  <fo:table-column column-width="5%"/>
@@ -11077,6 +11343,9 @@
11077
11343
  <xsl:attribute name="keep-with-next">always</xsl:attribute>
11078
11344
  </xsl:attribute-set> <!-- list-name-style -->
11079
11345
 
11346
+ <xsl:template name="refine_list-name-style">
11347
+ </xsl:template>
11348
+
11080
11349
  <xsl:attribute-set name="list-item-style">
11081
11350
  </xsl:attribute-set>
11082
11351
 
@@ -11382,6 +11651,7 @@
11382
11651
  <xsl:param name="process">false</xsl:param>
11383
11652
  <xsl:if test="$process = 'true'">
11384
11653
  <fo:block xsl:use-attribute-sets="list-name-style">
11654
+ <xsl:call-template name="refine_list-name-style"/>
11385
11655
  <xsl:apply-templates/>
11386
11656
  </fo:block>
11387
11657
  </xsl:if>
@@ -11442,33 +11712,54 @@
11442
11712
  <!-- END Lists processing -->
11443
11713
  <!-- ===================================== -->
11444
11714
 
11715
+ <xsl:attribute-set name="footnote-separator-leader-style">
11716
+ </xsl:attribute-set>
11717
+
11718
+ <xsl:template name="refine_footnote-separator-leader-style">
11719
+ </xsl:template>
11720
+
11721
+ <xsl:attribute-set name="fn-container-body-style">
11722
+ <xsl:attribute name="text-indent">0</xsl:attribute>
11723
+ <xsl:attribute name="start-indent">0</xsl:attribute>
11724
+ </xsl:attribute-set>
11725
+
11726
+ <xsl:template name="refine_fn-container-body-style">
11727
+ </xsl:template>
11728
+
11445
11729
  <xsl:attribute-set name="fn-reference-style">
11446
11730
  <xsl:attribute name="font-size">80%</xsl:attribute>
11447
11731
  <xsl:attribute name="keep-with-previous.within-line">always</xsl:attribute>
11448
11732
  <xsl:attribute name="font-size">6pt</xsl:attribute>
11449
11733
  <xsl:attribute name="baseline-shift">25%</xsl:attribute>
11450
-
11451
- </xsl:attribute-set>
11734
+ </xsl:attribute-set> <!-- fn-reference-style -->
11452
11735
 
11453
11736
  <xsl:template name="refine_fn-reference-style">
11737
+ <!-- https://github.com/metanorma/metanorma-ieee/issues/595 -->
11738
+ <xsl:if test="preceding-sibling::node()[normalize-space() != ''][1][self::mn:fn]">,</xsl:if>
11454
11739
  </xsl:template> <!-- refine_fn-reference-style -->
11455
11740
 
11456
11741
  <xsl:attribute-set name="fn-style">
11457
11742
  <xsl:attribute name="keep-with-previous.within-line">always</xsl:attribute>
11458
11743
  </xsl:attribute-set>
11459
11744
 
11745
+ <xsl:template name="refine_fn-style">
11746
+ </xsl:template>
11747
+
11460
11748
  <xsl:attribute-set name="fn-num-style">
11461
11749
  <xsl:attribute name="keep-with-previous.within-line">always</xsl:attribute>
11462
11750
  <xsl:attribute name="font-size">6pt</xsl:attribute>
11463
11751
  <xsl:attribute name="baseline-shift">25%</xsl:attribute>
11464
- </xsl:attribute-set>
11752
+ </xsl:attribute-set> <!-- fn-num-style -->
11753
+
11754
+ <xsl:template name="refine_fn-num-style">
11755
+ </xsl:template>
11465
11756
 
11466
11757
  <xsl:attribute-set name="fn-body-style">
11467
11758
  <xsl:attribute name="font-weight">normal</xsl:attribute>
11468
11759
  <xsl:attribute name="font-style">normal</xsl:attribute>
11469
11760
  <xsl:attribute name="text-indent">0</xsl:attribute>
11470
11761
  <xsl:attribute name="start-indent">0</xsl:attribute>
11471
- </xsl:attribute-set>
11762
+ </xsl:attribute-set> <!-- fn-body-style" -->
11472
11763
 
11473
11764
  <xsl:template name="refine_fn-body-style">
11474
11765
  </xsl:template> <!-- refine_fn-body-style -->
@@ -11533,10 +11824,12 @@
11533
11824
  <xsl:choose>
11534
11825
  <xsl:when test="ancestor::mn:bibitem">
11535
11826
  <fn_styles xsl:use-attribute-sets="bibitem-note-fn-style">
11827
+ <xsl:call-template name="refine_bibitem-note-fn-style"/>
11536
11828
  </fn_styles>
11537
11829
  </xsl:when>
11538
11830
  <xsl:otherwise>
11539
11831
  <fn_styles xsl:use-attribute-sets="fn-num-style">
11832
+ <xsl:call-template name="refine_fn-num-style"/>
11540
11833
  </fn_styles>
11541
11834
  </xsl:otherwise>
11542
11835
  </xsl:choose>
@@ -11546,9 +11839,12 @@
11546
11839
  <xsl:copy-of select="."/>
11547
11840
  </xsl:for-each>
11548
11841
 
11549
- <xsl:if test="following-sibling::node()[normalize-space() != ''][1][self::mn:fn]">
11842
+ <!-- https://github.com/metanorma/metanorma-ieee/issues/595 -->
11843
+ <!-- <xsl:if test="following-sibling::node()[normalize-space() != ''][1][self::mn:fn]">
11550
11844
  <xsl:attribute name="padding-right">0.5mm</xsl:attribute>
11551
- </xsl:if>
11845
+ </xsl:if> -->
11846
+
11847
+ <xsl:if test="preceding-sibling::node()[normalize-space() != ''][1][self::mn:fn]">,</xsl:if>
11552
11848
 
11553
11849
  <xsl:call-template name="insert_basic_link">
11554
11850
  <xsl:with-param name="element">
@@ -11571,10 +11867,12 @@
11571
11867
  <xsl:when test="$p_fn//fn[@gen_id = $gen_id] or normalize-space(@skip_footnote_body) = 'false' or $footnote_body_from_table = 'true'">
11572
11868
 
11573
11869
  <fo:footnote xsl:use-attribute-sets="fn-style" role="SKIP">
11870
+ <xsl:call-template name="refine_fn-style"/>
11574
11871
  <xsl:copy-of select="$footnote_inline"/>
11575
11872
  <fo:footnote-body role="Note">
11576
11873
 
11577
11874
  <fo:block-container xsl:use-attribute-sets="fn-container-body-style" role="SKIP">
11875
+ <xsl:call-template name="refine_fn-container-body-style"/>
11578
11876
 
11579
11877
  <xsl:variable name="fn_block">
11580
11878
  <xsl:call-template name="refine_fn-body-style"/>
@@ -11671,17 +11969,30 @@
11671
11969
  <xsl:attribute-set name="admonition-style">
11672
11970
  </xsl:attribute-set> <!-- admonition-style -->
11673
11971
 
11972
+ <xsl:template name="refine_admonition-style">
11973
+ </xsl:template>
11974
+
11674
11975
  <xsl:attribute-set name="admonition-container-style">
11675
11976
  <xsl:attribute name="margin-left">0mm</xsl:attribute>
11676
11977
  <xsl:attribute name="margin-right">0mm</xsl:attribute>
11677
11978
  </xsl:attribute-set> <!-- admonition-container-style -->
11678
11979
 
11980
+ <xsl:template name="refine_admonition-container-style">
11981
+ </xsl:template>
11982
+
11679
11983
  <xsl:attribute-set name="admonition-name-style">
11680
11984
  <xsl:attribute name="keep-with-next">always</xsl:attribute>
11681
11985
  </xsl:attribute-set> <!-- admonition-name-style -->
11682
11986
 
11987
+ <xsl:template name="refine_admonition-name-style">
11988
+ </xsl:template>
11989
+
11683
11990
  <xsl:attribute-set name="admonition-p-style">
11684
11991
  </xsl:attribute-set> <!-- admonition-p-style -->
11992
+
11993
+ <xsl:template name="refine_admonition-p-style">
11994
+ </xsl:template>
11995
+
11685
11996
  <!-- end admonition -->
11686
11997
 
11687
11998
  <!-- ================ -->
@@ -11691,8 +12002,12 @@
11691
12002
  <xsl:call-template name="setNamedDestination"/>
11692
12003
  <fo:block-container id="{@id}" xsl:use-attribute-sets="admonition-style">
11693
12004
 
12005
+ <xsl:call-template name="refine_admonition-style"/>
12006
+
11694
12007
  <xsl:call-template name="setBlockSpanAll"/>
11695
12008
  <fo:block-container xsl:use-attribute-sets="admonition-container-style" role="SKIP">
12009
+
12010
+ <xsl:call-template name="refine_admonition-container-style"/>
11696
12011
  <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
11697
12012
  <fo:block>
11698
12013
  <xsl:apply-templates select="node()[not(self::mn:fmt-name)]"/>
@@ -11748,6 +12063,7 @@
11748
12063
 
11749
12064
  <xsl:template match="mn:admonition/mn:p">
11750
12065
  <fo:block xsl:use-attribute-sets="admonition-p-style">
12066
+ <xsl:call-template name="refine_admonition-p-style"/>
11751
12067
 
11752
12068
  <xsl:apply-templates/>
11753
12069
  </fo:block>
@@ -11757,6 +12073,13 @@
11757
12073
  <!-- END Admonition -->
11758
12074
  <!-- ================ -->
11759
12075
 
12076
+ <xsl:attribute-set name="references-non-normative-title-style">
12077
+ </xsl:attribute-set>
12078
+
12079
+ <xsl:template name="refine_references-non-normative-title-style">
12080
+
12081
+ </xsl:template>
12082
+
11760
12083
  <!-- bibitem in Normative References (references/@normative="true") -->
11761
12084
  <xsl:attribute-set name="bibitem-normative-style">
11762
12085
  <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
@@ -11764,15 +12087,24 @@
11764
12087
  <xsl:attribute name="text-indent">-6mm</xsl:attribute>
11765
12088
  </xsl:attribute-set> <!-- bibitem-normative-style -->
11766
12089
 
12090
+ <xsl:template name="refine_bibitem-normative-style">
12091
+ </xsl:template>
12092
+
11767
12093
  <!-- bibitem in Normative References (references/@normative="true"), renders as list -->
11768
12094
  <xsl:attribute-set name="bibitem-normative-list-style">
11769
12095
  <xsl:attribute name="provisional-distance-between-starts">12mm</xsl:attribute>
11770
12096
  <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
11771
12097
  </xsl:attribute-set> <!-- bibitem-normative-list-style -->
11772
12098
 
12099
+ <xsl:template name="refine_bibitem-normative-list-style">
12100
+ </xsl:template>
12101
+
11773
12102
  <xsl:attribute-set name="bibitem-non-normative-style">
11774
12103
  </xsl:attribute-set> <!-- bibitem-non-normative-style -->
11775
12104
 
12105
+ <xsl:template name="refine_bibitem-non-normative-style">
12106
+ </xsl:template>
12107
+
11776
12108
  <!-- bibitem in bibliography section (references/@normative="false"), renders as list -->
11777
12109
  <xsl:attribute-set name="bibitem-non-normative-list-style">
11778
12110
  <xsl:attribute name="provisional-distance-between-starts">12mm</xsl:attribute>
@@ -11782,17 +12114,29 @@
11782
12114
  <xsl:attribute name="line-height">1.5</xsl:attribute>
11783
12115
  </xsl:attribute-set> <!-- bibitem-non-normative-list-style -->
11784
12116
 
12117
+ <xsl:template name="refine_bibitem-non-normative-list-style">
12118
+ </xsl:template>
12119
+
11785
12120
  <xsl:attribute-set name="bibitem-non-normative-list-item-style">
11786
12121
  <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
11787
12122
  </xsl:attribute-set>
11788
12123
 
12124
+ <xsl:template name="refine_bibitem-non-normative-list-item-style">
12125
+ </xsl:template>
12126
+
11789
12127
  <!-- bibitem in bibliography section (references/@normative="false"), list body -->
11790
12128
  <xsl:attribute-set name="bibitem-normative-list-body-style">
11791
12129
  </xsl:attribute-set>
11792
12130
 
12131
+ <xsl:template name="refine_bibitem-normative-list-body-style">
12132
+ </xsl:template>
12133
+
11793
12134
  <xsl:attribute-set name="bibitem-non-normative-list-body-style">
11794
12135
  </xsl:attribute-set> <!-- bibitem-non-normative-list-body-style -->
11795
12136
 
12137
+ <xsl:template name="refine_bibitem-non-normative-list-body-style">
12138
+ </xsl:template>
12139
+
11796
12140
  <!-- footnote reference number for bibitem, in the text -->
11797
12141
  <xsl:attribute-set name="bibitem-note-fn-style">
11798
12142
  <xsl:attribute name="keep-with-previous.within-line">always</xsl:attribute>
@@ -11801,6 +12145,9 @@
11801
12145
  <xsl:attribute name="baseline-shift">25%</xsl:attribute>
11802
12146
  </xsl:attribute-set> <!-- bibitem-note-fn-style -->
11803
12147
 
12148
+ <xsl:template name="refine_bibitem-note-fn-style">
12149
+ </xsl:template>
12150
+
11804
12151
  <!-- footnote number on the page bottom -->
11805
12152
  <xsl:attribute-set name="bibitem-note-fn-number-style">
11806
12153
  <xsl:attribute name="keep-with-next.within-line">always</xsl:attribute>
@@ -11816,6 +12163,9 @@
11816
12163
  <xsl:attribute-set name="references-non-normative-style">
11817
12164
  </xsl:attribute-set> <!-- references-non-normative-style -->
11818
12165
 
12166
+ <xsl:template name="refine_references-non-normative-style">
12167
+ </xsl:template>
12168
+
11819
12169
  <!-- ======================= -->
11820
12170
  <!-- Bibliography rendering -->
11821
12171
  <!-- ======================= -->
@@ -11857,6 +12207,7 @@
11857
12207
  <xsl:apply-templates select="mn:fmt-title[@columns = 1]"/>
11858
12208
 
11859
12209
  <fo:block xsl:use-attribute-sets="references-non-normative-style">
12210
+ <xsl:call-template name="refine_references-non-normative-style"/>
11860
12211
  <xsl:apply-templates select="node()[not(self::mn:fmt-title and @columns = 1)]"/>
11861
12212
  </fo:block>
11862
12213
  </xsl:template> <!-- references -->
@@ -11870,18 +12221,22 @@
11870
12221
  <xsl:param name="skip" select="normalize-space(preceding-sibling::*[1][self::mn:bibitem] and 1 = 1)"/> <!-- current bibiitem is non-first -->
11871
12222
  <xsl:call-template name="setNamedDestination"/>
11872
12223
  <fo:block id="{@id}" xsl:use-attribute-sets="bibitem-normative-style">
12224
+ <xsl:call-template name="refine_bibitem-normative-style"/>
12225
+
11873
12226
  <xsl:call-template name="processBibitem"/>
11874
12227
  </fo:block>
11875
12228
 
11876
12229
  </xsl:template> <!-- bibitem -->
11877
12230
 
11878
12231
  <!-- Bibliography (non-normative references) -->
11879
- <xsl:template match="mn:references[not(@normative='true')]/mn:bibitem | mn:references[not(@normative='true')]/mn:note" name="bibitem_non_normative" priority="2">
12232
+ <xsl:template match="mn:references[not(@normative='true')]/mn:bibitem" name="bibitem_non_normative" priority="2">
11880
12233
  <xsl:param name="skip" select="normalize-space(preceding-sibling::*[not(self::mn:note)][1][self::mn:bibitem] and 1 = 1)"/> <!-- current bibiitem is non-first --> <!-- $namespace = 'csd' or $namespace = 'gb' or $namespace = 'iec' or $namespace = 'ieee' or $namespace = 'iso' or $namespace = 'jcgm' or $namespace = 'm3d' or
11881
12234
  $namespace = 'mpfd' or $namespace = 'ogc' or $namespace = 'ogc-white-paper' -->
11882
12235
  <!-- Example: [1] ISO 9:1995, Information and documentation – Transliteration of Cyrillic characters into Latin characters – Slavic and non-Slavic languages -->
11883
12236
  <xsl:call-template name="setNamedDestination"/>
11884
12237
  <fo:list-block id="{@id}" xsl:use-attribute-sets="bibitem-non-normative-list-style">
12238
+ <xsl:call-template name="refine_bibitem-non-normative-list-style"/>
12239
+
11885
12240
  <fo:list-item>
11886
12241
  <fo:list-item-label end-indent="label-end()">
11887
12242
  <fo:block role="SKIP">
@@ -11894,6 +12249,7 @@
11894
12249
  </fo:list-item-label>
11895
12250
  <fo:list-item-body start-indent="body-start()">
11896
12251
  <fo:block xsl:use-attribute-sets="bibitem-non-normative-list-body-style" role="SKIP">
12252
+ <xsl:call-template name="refine_bibitem-non-normative-list-body-style"/>
11897
12253
  <xsl:call-template name="processBibitem">
11898
12254
  <xsl:with-param name="biblio_tag_part">last</xsl:with-param>
11899
12255
  </xsl:call-template>
@@ -11904,12 +12260,17 @@
11904
12260
 
11905
12261
  </xsl:template> <!-- references[not(@normative='true')]/bibitem -->
11906
12262
 
12263
+ <!-- bibitem's notes will be processing in 'processBibitemFollowingNotes' -->
12264
+ <xsl:template match="mn:references/mn:note" priority="2"/> <!-- [not(@normative='true')] -->
12265
+
11907
12266
  <xsl:template name="insertListItem_Bibitem">
11908
12267
  <xsl:choose>
11909
12268
  <xsl:when test="@hidden = 'true'"><!-- skip --></xsl:when>
11910
12269
  <xsl:otherwise>
11911
12270
  <xsl:call-template name="setNamedDestination"/>
11912
12271
  <fo:list-item id="{@id}" xsl:use-attribute-sets="bibitem-non-normative-list-item-style">
12272
+ <xsl:call-template name="refine_bibitem-non-normative-list-item-style"/>
12273
+
11913
12274
  <fo:list-item-label end-indent="label-end()">
11914
12275
  <fo:block role="SKIP">
11915
12276
  <fo:inline role="SKIP">
@@ -11920,16 +12281,18 @@
11920
12281
  </fo:block>
11921
12282
  </fo:list-item-label>
11922
12283
  <fo:list-item-body start-indent="body-start()">
11923
- <fo:block xsl:use-attribute-sets="bibitem-non-normative-list-body-style" role="SKIP">
12284
+ <fo:block xsl:use-attribute-sets="bibitem-non-normative-list-body-style"> <!-- role="SKIP" -->
12285
+ <xsl:call-template name="refine_bibitem-non-normative-list-body-style"/>
11924
12286
  <xsl:call-template name="processBibitem">
11925
12287
  <xsl:with-param name="biblio_tag_part">last</xsl:with-param>
11926
12288
  </xsl:call-template>
11927
12289
  </fo:block>
12290
+ <xsl:call-template name="processBibitemFollowingNotes"/>
11928
12291
  </fo:list-item-body>
11929
12292
  </fo:list-item>
11930
12293
  </xsl:otherwise>
11931
12294
  </xsl:choose>
11932
- <xsl:apply-templates select="following-sibling::*[1]"> <!-- [self::mn:bibitem] -->
12295
+ <xsl:apply-templates select="following-sibling::*[self::mn:bibitem][1]">
11933
12296
  <xsl:with-param name="skip">false</xsl:with-param>
11934
12297
  </xsl:apply-templates>
11935
12298
  </xsl:template>
@@ -11945,25 +12308,16 @@
11945
12308
  <xsl:with-param name="biblio_tag_part" select="$biblio_tag_part"/>
11946
12309
  </xsl:apply-templates>
11947
12310
  <xsl:apply-templates select="mn:formattedref"/>
12311
+ <xsl:call-template name="processBibitemFollowingNotes"/>
11948
12312
  <!-- end bibitem processing -->
11949
-
11950
- <xsl:call-template name="processBibliographyNote"/>
11951
12313
  </xsl:template> <!-- processBibitem (bibitem) -->
11952
12314
 
11953
- <xsl:template name="processBibliographyNote">
11954
- <xsl:if test="self::mn:note">
11955
- <xsl:variable name="note_node">
11956
- <xsl:element name="{local-name(..)}" namespace="{$namespace_full}"> <!-- save parent context node for determining styles -->
11957
- <xsl:copy> <!-- skip @id -->
11958
- <xsl:copy-of select="node()"/>
11959
- </xsl:copy>
11960
- </xsl:element>
11961
- </xsl:variable>
11962
- <!-- <xsl:for-each select="xalan:nodeset($note_node)//mn:note">
11963
- <xsl:call-template name="note"/>
11964
- </xsl:for-each> -->
12315
+ <xsl:template name="processBibitemFollowingNotes">
12316
+ <!-- current context is bibitem element -->
12317
+ <xsl:variable name="bibitem_id" select="@id"/>
12318
+ <xsl:for-each select="following-sibling::mn:note[preceding-sibling::mn:bibitem[1][@id = $bibitem_id] and preceding-sibling::*[1][self::mn:note or self::mn:bibitem]]">
11965
12319
  <xsl:call-template name="note"/>
11966
- </xsl:if>
12320
+ </xsl:for-each>
11967
12321
  </xsl:template>
11968
12322
 
11969
12323
  <xsl:template match="mn:title" mode="title">
@@ -12166,11 +12520,17 @@
12166
12520
  <xsl:attribute name="font-weight">bold</xsl:attribute>
12167
12521
  <xsl:attribute name="span">all</xsl:attribute>
12168
12522
  <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
12169
- </xsl:attribute-set>
12523
+ </xsl:attribute-set> <!-- indexsect-title-style -->
12524
+
12525
+ <xsl:template name="refine_indexsect-title-style">
12526
+ </xsl:template>
12170
12527
 
12171
12528
  <xsl:attribute-set name="indexsect-clause-title-style">
12172
12529
  <xsl:attribute name="keep-with-next">always</xsl:attribute>
12173
- </xsl:attribute-set>
12530
+ </xsl:attribute-set> <!-- indexsect-clause-title-style -->
12531
+
12532
+ <xsl:template name="refine_indexsect-clause-title-style">
12533
+ </xsl:template>
12174
12534
  <!-- End Index section styles -->
12175
12535
 
12176
12536
  <!-- =================== -->
@@ -12364,6 +12724,7 @@
12364
12724
 
12365
12725
  <xsl:template match="mn:indexsect/mn:fmt-title | mn:indexsect/mn:title" priority="4">
12366
12726
  <fo:block xsl:use-attribute-sets="indexsect-title-style">
12727
+ <xsl:call-template name="refine_indexsect-title-style"/>
12367
12728
  <!-- Index -->
12368
12729
  <xsl:apply-templates/>
12369
12730
  </fo:block>
@@ -12372,6 +12733,7 @@
12372
12733
  <xsl:template match="mn:indexsect/mn:clause/mn:fmt-title | mn:indexsect/mn:clause/mn:title" priority="4">
12373
12734
  <!-- Letter A, B, C, ... -->
12374
12735
  <fo:block xsl:use-attribute-sets="indexsect-clause-title-style">
12736
+ <xsl:call-template name="refine_indexsect-clause-title-style"/>
12375
12737
  <xsl:apply-templates/>
12376
12738
  </fo:block>
12377
12739
  </xsl:template>
@@ -12574,9 +12936,15 @@
12574
12936
  <xsl:attribute name="leader-pattern">dots</xsl:attribute>
12575
12937
  </xsl:attribute-set> <!-- END: toc-leader-style -->
12576
12938
 
12939
+ <xsl:template name="refine_toc-leader-style">
12940
+ </xsl:template>
12941
+
12577
12942
  <xsl:attribute-set name="toc-pagenumber-style">
12578
12943
  </xsl:attribute-set>
12579
12944
 
12945
+ <xsl:template name="refine_toc-pagenumber-style">
12946
+ </xsl:template>
12947
+
12580
12948
  <!-- List of Figures, Tables -->
12581
12949
  <xsl:attribute-set name="toc-listof-title-style">
12582
12950
  </xsl:attribute-set>
@@ -12587,10 +12955,16 @@
12587
12955
  <xsl:attribute-set name="toc-listof-item-block-style">
12588
12956
  </xsl:attribute-set>
12589
12957
 
12958
+ <xsl:template name="refine_toc-listof-item-block-style">
12959
+ </xsl:template>
12960
+
12590
12961
  <xsl:attribute-set name="toc-listof-item-style">
12591
12962
  <xsl:attribute name="role">TOCI</xsl:attribute>
12592
12963
  </xsl:attribute-set>
12593
12964
 
12965
+ <xsl:template name="refine_toc-listof-item-style">
12966
+ </xsl:template>
12967
+
12594
12968
  <xsl:template name="processPrefaceSectionsDefault_Contents">
12595
12969
  <xsl:variable name="nodes_preface_">
12596
12970
  <xsl:for-each select="/*/mn:preface/*[not(self::mn:note or self::mn:admonition or @type = 'toc')]">
@@ -13697,23 +14071,55 @@
13697
14071
  <!-- Ruby text (CJK languages) rendering -->
13698
14072
  <!-- ===================================== -->
13699
14073
  <!-- ===================================== -->
14074
+
14075
+ <xsl:attribute-set name="ruby-style">
14076
+ <xsl:attribute name="text-indent">0mm</xsl:attribute>
14077
+ <xsl:attribute name="last-line-end-indent">0mm</xsl:attribute>
14078
+ </xsl:attribute-set>
14079
+
14080
+ <xsl:template name="refine_ruby-style">
14081
+ <xsl:if test="not(ancestor::mn:ruby)">
14082
+ <xsl:attribute name="alignment-baseline">central</xsl:attribute>
14083
+ </xsl:if>
14084
+ <xsl:variable name="rt_text" select="mn:rt"/>
14085
+ <xsl:variable name="rb_text" select=".//mn:rb[not(mn:ruby)]"/>
14086
+ <!-- Example: width="2em" -->
14087
+ <xsl:variable name="text_rt_width" select="java:org.metanorma.fop.Util.getStringWidthByFontSize($rt_text, $font_main, 6)"/>
14088
+ <xsl:variable name="text_rb_width" select="java:org.metanorma.fop.Util.getStringWidthByFontSize($rb_text, $font_main, 10)"/>
14089
+ <xsl:variable name="text_width">
14090
+ <xsl:choose>
14091
+ <xsl:when test="$text_rt_width &gt;= $text_rb_width"><xsl:value-of select="$text_rt_width"/></xsl:when>
14092
+ <xsl:otherwise><xsl:value-of select="$text_rb_width"/></xsl:otherwise>
14093
+ </xsl:choose>
14094
+ </xsl:variable>
14095
+ <xsl:attribute name="width"><xsl:value-of select="$text_width div 10"/>em</xsl:attribute>
14096
+ </xsl:template> <!-- refine_ruby-style -->
14097
+
14098
+ <xsl:attribute-set name="rb-style">
14099
+ <xsl:attribute name="line-height">1em</xsl:attribute>
14100
+ <xsl:attribute name="text-align">center</xsl:attribute>
14101
+ </xsl:attribute-set>
14102
+
14103
+ <xsl:template name="refine_rb-style">
14104
+ </xsl:template>
14105
+
14106
+ <xsl:attribute-set name="rt-style">
14107
+ <xsl:attribute name="font-size">0.5em</xsl:attribute>
14108
+ <xsl:attribute name="text-align">center</xsl:attribute>
14109
+ <xsl:attribute name="line-height">1.2em</xsl:attribute>
14110
+ <xsl:attribute name="space-before">-1.4em</xsl:attribute>
14111
+ <xsl:attribute name="space-before.conditionality">retain</xsl:attribute>
14112
+ </xsl:attribute-set>
14113
+
14114
+ <xsl:template name="refine_rt-style">
14115
+ <xsl:if test="ancestor::mn:ruby[last()]//mn:ruby or ancestor::mn:rb">
14116
+ <xsl:attribute name="space-before">0em</xsl:attribute>
14117
+ </xsl:if>
14118
+ </xsl:template>
14119
+
13700
14120
  <xsl:template match="mn:ruby">
13701
- <fo:inline-container text-indent="0mm" last-line-end-indent="0mm">
13702
- <xsl:if test="not(ancestor::mn:ruby)">
13703
- <xsl:attribute name="alignment-baseline">central</xsl:attribute>
13704
- </xsl:if>
13705
- <xsl:variable name="rt_text" select="mn:rt"/>
13706
- <xsl:variable name="rb_text" select=".//mn:rb[not(mn:ruby)]"/>
13707
- <!-- Example: width="2em" -->
13708
- <xsl:variable name="text_rt_width" select="java:org.metanorma.fop.Util.getStringWidthByFontSize($rt_text, $font_main, 6)"/>
13709
- <xsl:variable name="text_rb_width" select="java:org.metanorma.fop.Util.getStringWidthByFontSize($rb_text, $font_main, 10)"/>
13710
- <xsl:variable name="text_width">
13711
- <xsl:choose>
13712
- <xsl:when test="$text_rt_width &gt;= $text_rb_width"><xsl:value-of select="$text_rt_width"/></xsl:when>
13713
- <xsl:otherwise><xsl:value-of select="$text_rb_width"/></xsl:otherwise>
13714
- </xsl:choose>
13715
- </xsl:variable>
13716
- <xsl:attribute name="width"><xsl:value-of select="$text_width div 10"/>em</xsl:attribute>
14121
+ <fo:inline-container xsl:use-attribute-sets="ruby-style">
14122
+ <xsl:call-template name="refine_ruby-style"/>
13717
14123
 
13718
14124
  <xsl:choose>
13719
14125
  <xsl:when test="ancestor::mn:ruby">
@@ -13731,17 +14137,14 @@
13731
14137
  </xsl:template>
13732
14138
 
13733
14139
  <xsl:template match="mn:rb">
13734
- <fo:block line-height="1em" text-align="center"><xsl:apply-templates/></fo:block>
14140
+ <fo:block xsl:use-attribute-sets="rb-style"><xsl:call-template name="refine_rb-style"/><xsl:apply-templates/></fo:block>
13735
14141
  </xsl:template>
13736
14142
 
13737
14143
  <xsl:template match="mn:rt">
13738
- <fo:block font-size="0.5em" text-align="center" line-height="1.2em" space-before="-1.4em" space-before.conditionality="retain"> <!-- -->
13739
- <xsl:if test="ancestor::mn:ruby[last()]//mn:ruby or ancestor::mn:rb">
13740
- <xsl:attribute name="space-before">0em</xsl:attribute>
13741
- </xsl:if>
14144
+ <fo:block xsl:use-attribute-sets="rt-style"> <!-- -->
14145
+ <xsl:call-template name="refine_rt-style"/>
13742
14146
  <xsl:apply-templates/>
13743
14147
  </fo:block>
13744
-
13745
14148
  </xsl:template>
13746
14149
 
13747
14150
  <!-- ===================================== -->
@@ -13750,6 +14153,18 @@
13750
14153
  <!-- ===================================== -->
13751
14154
  <!-- ===================================== -->
13752
14155
 
14156
+ <xsl:attribute-set name="annex-title-style">
14157
+ </xsl:attribute-set>
14158
+
14159
+ <xsl:template name="refine_annex-title-style">
14160
+ </xsl:template>
14161
+
14162
+ <xsl:attribute-set name="p-zzSTDTitle1-style">
14163
+ </xsl:attribute-set>
14164
+
14165
+ <xsl:template name="refine_p-zzSTDTitle1-style">
14166
+ </xsl:template>
14167
+
13753
14168
  <xsl:template name="processPrefaceSectionsDefault">
13754
14169
  <xsl:for-each select="/*/mn:preface/*[not(self::mn:note or self::mn:admonition)]">
13755
14170
  <xsl:sort select="@displayorder" data-type="number"/>