metanorma-ribose 2.7.5 → 2.7.7

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: cf3fee5a39248ff621505332a4e82a4b98bfc0121fa8c0ce749f1f2235d698c9
4
- data.tar.gz: 9c4b2e8b6cab3b7920fca3958cb111d4c71334c0b7dc0011edded5397f1eae77
3
+ metadata.gz: 9d3838b3c591e380f3d4181c3cfc086562d74f1013ad27ace96d39eecf1cd9bd
4
+ data.tar.gz: 19925bc0c4bd917e79a7c7b803f7f58d798ec5422944828da679079c6b4d6d7f
5
5
  SHA512:
6
- metadata.gz: 8d12f90992e8cb7904cd8a3b52088e35f1b13dfa5cd88d7973ec2b44326dbcf509aa0e8ae6a9408b781ad5a0745e61d6fcb93841b9d0928dbad19a0fabe45447
7
- data.tar.gz: 5fabf751ffa51aa9e0efa910b29519b50501759af1cb3fe8bf6aff4279b7fb15e2d4fbf9111f3a1bc3a77dd8550299dea6ab439808e0c48ceb749d8ed9cadee1
6
+ metadata.gz: 7c718aa3dc36f894f235f3ff73ed0c7d02131f5ac56fb59d0b91e16eaff5b192d072707898a4e38d1c9eef6e2a1243c54580498630bcc3ddc250a9999d84e27c
7
+ data.tar.gz: 7a5d544904e782bef4d78827801464ea8b36dc40560a6ac6b8809c2c3b87c8e8e0fca57fac2f4431e5412b11b964ef9d53e84ce469333b4ac7863ca8e6a14d35
@@ -16,8 +16,8 @@ module IsoDoc
16
16
 
17
17
  def i18n_init(lang, script, locale, i18nyaml = nil)
18
18
  @i18n = I18n.new(
19
- lang, script, locale: locale, i18nyaml: i18nyaml ||
20
- Metanorma::Ribose.configuration.i18nyaml || @i18nyaml
19
+ lang, script, locale: locale, i18nyaml: [i18nyaml,
20
+ Metanorma::Ribose.configuration.i18nyaml, @i18nyaml]
21
21
  )
22
22
  end
23
23
  end
@@ -35,24 +35,20 @@
35
35
  <xsl:variable name="contents" select="xalan:nodeset($contents_)"/>
36
36
 
37
37
  <xsl:variable name="docnumber_version">
38
- <xsl:value-of select="/mn:metanorma/mn:bibdata/mn:docidentifier[@type = 'rsd' or @type = 'Ribose']"/>
39
- <xsl:text>:</xsl:text>
40
- <xsl:value-of select="$copyright_year"/>
41
-
42
- <xsl:variable name="edition" select="normalize-space(/mn:metanorma/mn:bibdata/mn:edition[normalize-space(@language) = ''])"/>
43
- <xsl:if test="$edition != ''">
44
- <xsl:variable name="title-version">
45
- <xsl:call-template name="capitalize">
46
- <xsl:with-param name="str">
47
- <xsl:call-template name="getLocalizedString">
48
- <xsl:with-param name="key">version</xsl:with-param>
49
- </xsl:call-template>
50
- </xsl:with-param>
51
- </xsl:call-template>
52
- </xsl:variable>
53
- <xsl:text>, </xsl:text><xsl:value-of select="$title-version"/><xsl:text> </xsl:text><xsl:value-of select="$edition"/>
54
- </xsl:if>
55
-
38
+ <xsl:value-of select="concat(/mn:metanorma/mn:bibdata/mn:docidentifier[@type = 'rsd' or @type = 'Ribose' or @primary = 'true'], ':', $copyright_year)"/>
39
+ <xsl:variable name="edition" select="normalize-space(/mn:metanorma/mn:bibdata/mn:edition[normalize-space(@language) = ''])"/>
40
+ <xsl:if test="$edition != ''">
41
+ <xsl:variable name="title-version">
42
+ <xsl:call-template name="capitalize">
43
+ <xsl:with-param name="str">
44
+ <xsl:call-template name="getLocalizedString">
45
+ <xsl:with-param name="key">version</xsl:with-param>
46
+ </xsl:call-template>
47
+ </xsl:with-param>
48
+ </xsl:call-template>
49
+ </xsl:variable>
50
+ <xsl:value-of select="concat(', ', $title-version, ' ', $edition)"/>
51
+ </xsl:if>
56
52
  </xsl:variable>
57
53
 
58
54
  <xsl:template name="layout-master-set">
@@ -423,108 +419,115 @@
423
419
 
424
420
  <xsl:template name="cover-page">
425
421
  <!-- Cover Page -->
426
- <fo:page-sequence master-reference="cover-page" force-page-count="no-force">
427
-
428
- <fo:flow flow-name="xsl-region-body" color="black">
429
- <!-- background image -->
430
- <fo:block-container absolute-position="fixed" left="0mm" top="0mm" font-size="0">
431
- <fo:block>
432
- <!-- <fo:external-graphic src="{concat('data:image/png;base64,', normalize-space($Image-Cover-Background))}" width="{$pageWidth}mm" content-height="scale-to-fit" scaling="uniform" fox:alt-text="Image Front"/> -->
433
- <fo:external-graphic src="{concat('data:image/png;base64,', normalize-space($Image-Cover-Background))}" height="{$pageHeight}mm" content-width="scale-to-fit" scaling="uniform" fox:alt-text="Image Front"/>
434
- </fo:block>
435
- </fo:block-container>
422
+ <xsl:choose>
423
+ <xsl:when test="/mn:metanorma/mn:metanorma-extension/mn:presentation-metadata[mn:name = 'coverpage-image']/mn:value/mn:image and normalize-space(/mn:metanorma/mn:metanorma-extension/mn:presentation-metadata/mn:full-coverpage-replacement) = 'true'">
424
+ <xsl:call-template name="insertCoverPageFullImage"/>
425
+ </xsl:when>
426
+ <xsl:otherwise>
427
+ <fo:page-sequence master-reference="cover-page" force-page-count="no-force">
428
+
429
+ <fo:flow flow-name="xsl-region-body" color="black">
430
+ <!-- background image -->
431
+ <fo:block-container absolute-position="fixed" left="0mm" top="0mm" font-size="0">
432
+ <fo:block>
433
+ <!-- <fo:external-graphic src="{concat('data:image/png;base64,', normalize-space($Image-Cover-Background))}" width="{$pageWidth}mm" content-height="scale-to-fit" scaling="uniform" fox:alt-text="Image Front"/> -->
434
+ <fo:external-graphic src="{concat('data:image/png;base64,', normalize-space($Image-Cover-Background))}" height="{$pageHeight}mm" content-width="scale-to-fit" scaling="uniform" fox:alt-text="Image Front"/>
435
+ </fo:block>
436
+ </fo:block-container>
436
437
 
437
- <!-- Ribose logo -->
438
- <fo:block-container absolute-position="fixed" left="171mm" top="{$pageHeight - 33.4}mm" height="30mm" width="40mm" id="__internal_layout__logo_{generate-id()}"> <!-- top="246mm" -->
439
- <fo:block>
440
- <fo:instream-foreign-object content-width="32mm" fox:alt-text="Ribose Logo">
441
- <xsl:copy-of select="$Ribose-Logo"/>
442
- </fo:instream-foreign-object>
443
- </fo:block>
444
- </fo:block-container>
438
+ <!-- Ribose logo -->
439
+ <fo:block-container absolute-position="fixed" left="171mm" top="{$pageHeight - 33.4}mm" height="30mm" width="40mm" id="__internal_layout__logo_{generate-id()}"> <!-- top="246mm" -->
440
+ <fo:block>
441
+ <fo:instream-foreign-object content-width="32mm" fox:alt-text="Ribose Logo">
442
+ <xsl:copy-of select="$Ribose-Logo"/>
443
+ </fo:instream-foreign-object>
444
+ </fo:block>
445
+ </fo:block-container>
445
446
 
446
- <fo:block-container absolute-position="fixed" left="0mm" top="{$pageHeight - 52.4}mm" height="41mm" display-align="after"> <!-- top="227mm" -->
447
- <fo:block font-size="10pt" line-height="1.4">
448
- <fo:table table-layout="fixed" width="100%">
449
- <fo:table-column column-width="proportional-column-width(13)"/>
450
- <fo:table-column column-width="proportional-column-width(38)"/>
451
- <fo:table-column column-width="proportional-column-width(90)"/>
452
- <fo:table-column column-width="proportional-column-width(61)"/>
453
- <fo:table-column column-width="proportional-column-width(12)"/>
454
- <fo:table-body>
455
- <fo:table-row>
456
- <fo:table-cell><fo:block/></fo:table-cell>
457
- <fo:table-cell display-align="before" border-right="0.5pt solid black" padding-top="1.5mm" padding-right="5mm">
458
- <!-- Author's list -->
459
- <fo:block>
460
- <xsl:for-each select="/mn:metanorma/mn:bibdata/mn:contributor[mn:role/@type='author']/mn:person/mn:name/mn:completename">
447
+ <fo:block-container absolute-position="fixed" left="0mm" top="{$pageHeight - 52.4}mm" height="41mm" display-align="after"> <!-- top="227mm" -->
448
+ <fo:block font-size="10pt" line-height="1.4">
449
+ <fo:table table-layout="fixed" width="100%">
450
+ <fo:table-column column-width="proportional-column-width(13)"/>
451
+ <fo:table-column column-width="proportional-column-width(38)"/>
452
+ <fo:table-column column-width="proportional-column-width(90)"/>
453
+ <fo:table-column column-width="proportional-column-width(61)"/>
454
+ <fo:table-column column-width="proportional-column-width(12)"/>
455
+ <fo:table-body>
456
+ <fo:table-row>
457
+ <fo:table-cell><fo:block/></fo:table-cell>
458
+ <fo:table-cell display-align="before" border-right="0.5pt solid black" padding-top="1.5mm" padding-right="5mm">
459
+ <!-- Author's list -->
461
460
  <fo:block>
462
- <xsl:apply-templates/>
461
+ <xsl:for-each select="/mn:metanorma/mn:bibdata/mn:contributor[mn:role/@type='author']/mn:person/mn:name/mn:completename">
462
+ <fo:block>
463
+ <xsl:apply-templates/>
464
+ </fo:block>
465
+ </xsl:for-each>
463
466
  </fo:block>
464
- </xsl:for-each>
465
- </fo:block>
466
- </fo:table-cell>
467
- <fo:table-cell display-align="before" padding-top="1.5mm" padding-left="8mm">
468
- <fo:block>
469
- <xsl:apply-templates select="/mn:metanorma/mn:bibdata/mn:ext/mn:security"/>
470
- <fo:block>
471
- <xsl:call-template name="convertDate">
472
- <xsl:with-param name="date" select="/mn:metanorma/mn:bibdata/mn:date[@type = 'published']/mn:on"/>
473
- <xsl:with-param name="format" select="'Month DD, YYYY'"/>
474
- </xsl:call-template>
475
- </fo:block>
476
- <fo:block><xsl:value-of select="$docnumber_version"/></fo:block>
477
- <!-- <xsl:apply-templates select="/mn:metanorma/mn:bibdata/mn:ext/mn:editorialgroup/mn:committee"/> -->
478
- <xsl:apply-templates select="/mn:metanorma/mn:bibdata/mn:contributor[mn:role[@type = 'author']/mn:description = 'committee']/mn:organization/mn:subdivision[@type = 'Committee']/mn:name"/>
479
- <fo:block>
480
- <xsl:text </xsl:text>
481
- <xsl:value-of select="$copyright_year"/>
482
- <xsl:text> </xsl:text>
483
- <xsl:variable name="publisher" select="/mn:metanorma/mn:bibdata/mn:contributor[mn:role/@type='publisher']/mn:organization/mn:name"/>
484
- <xsl:value-of select="$publisher"/>
485
- <xsl:if test="substring($publisher, string-length($publisher)) != '.'"><xsl:text>.</xsl:text></xsl:if>
486
- <xsl:text> </xsl:text>
487
- <xsl:call-template name="getLocalizedString">
488
- <xsl:with-param name="key">all_rights_reserved</xsl:with-param>
489
- </xsl:call-template>
490
- </fo:block>
491
- </fo:block>
492
- </fo:table-cell>
493
- <fo:table-cell display-align="after">
494
- <fo:block text-align="right">
495
- <!-- <fo:external-graphic src="{concat('data:image/png;base64,', normalize-space($Ribose-Logo))}" width="32mm" content-height="scale-to-fit" scaling="uniform" fox:alt-text="Ribose Logo"/> -->
496
- </fo:block>
497
- </fo:table-cell>
498
- <fo:table-cell><fo:block/></fo:table-cell>
499
- </fo:table-row>
500
- </fo:table-body>
501
- </fo:table>
502
- </fo:block>
503
- </fo:block-container>
467
+ </fo:table-cell>
468
+ <fo:table-cell display-align="before" padding-top="1.5mm" padding-left="8mm">
469
+ <fo:block>
470
+ <xsl:apply-templates select="/mn:metanorma/mn:bibdata/mn:ext/mn:security"/>
471
+ <fo:block>
472
+ <xsl:call-template name="convertDate">
473
+ <xsl:with-param name="date" select="/mn:metanorma/mn:bibdata/mn:date[@type = 'published']/mn:on"/>
474
+ <xsl:with-param name="format" select="'Month DD, YYYY'"/>
475
+ </xsl:call-template>
476
+ </fo:block>
477
+ <fo:block><xsl:value-of select="$docnumber_version"/></fo:block>
478
+ <!-- <xsl:apply-templates select="/mn:metanorma/mn:bibdata/mn:ext/mn:editorialgroup/mn:committee"/> -->
479
+ <xsl:apply-templates select="/mn:metanorma/mn:bibdata/mn:contributor[mn:role[@type = 'author']/mn:description = 'committee']/mn:organization/mn:subdivision[@type = 'Committee']/mn:name"/>
480
+ <fo:block>
481
+ <xsl:text>© </xsl:text>
482
+ <xsl:value-of select="$copyright_year"/>
483
+ <xsl:text> </xsl:text>
484
+ <xsl:variable name="publisher" select="/mn:metanorma/mn:bibdata/mn:contributor[mn:role/@type='publisher']/mn:organization/mn:name"/>
485
+ <xsl:value-of select="$publisher"/>
486
+ <xsl:if test="substring($publisher, string-length($publisher)) != '.'"><xsl:text>.</xsl:text></xsl:if>
487
+ <xsl:text> </xsl:text>
488
+ <xsl:call-template name="getLocalizedString">
489
+ <xsl:with-param name="key">all_rights_reserved</xsl:with-param>
490
+ </xsl:call-template>
491
+ </fo:block>
492
+ </fo:block>
493
+ </fo:table-cell>
494
+ <fo:table-cell display-align="after">
495
+ <fo:block text-align="right">
496
+ <!-- <fo:external-graphic src="{concat('data:image/png;base64,', normalize-space($Ribose-Logo))}" width="32mm" content-height="scale-to-fit" scaling="uniform" fox:alt-text="Ribose Logo"/> -->
497
+ </fo:block>
498
+ </fo:table-cell>
499
+ <fo:table-cell><fo:block/></fo:table-cell>
500
+ </fo:table-row>
501
+ </fo:table-body>
502
+ </fo:table>
503
+ </fo:block>
504
+ </fo:block-container>
504
505
 
505
- <!-- title and version -->
506
- <fo:block-container margin-top="{$pageHeight - 279.4}mm" height="60mm" display-align="center">
507
- <xsl:variable name="title" select="/mn:metanorma/mn:bibdata/mn:title[@language = $lang]"/>
508
- <xsl:if test="string-length($title) &gt; 80">
509
- <xsl:attribute name="margin-right">-30mm</xsl:attribute>
510
- </xsl:if>
506
+ <!-- title and version -->
507
+ <fo:block-container margin-top="{$pageHeight - 279.4}mm" height="60mm" display-align="center">
508
+ <xsl:variable name="title" select="/mn:metanorma/mn:bibdata/mn:title[@language = $lang]"/>
509
+ <xsl:if test="string-length($title) &gt; 80">
510
+ <xsl:attribute name="margin-right">-30mm</xsl:attribute>
511
+ </xsl:if>
511
512
 
512
- <xsl:variable name="titles">
513
- <xsl:copy-of select="/mn:metanorma/mn:bibdata/mn:title[@language = $lang and (@type = 'intro' or not(@type))]"/>
514
- <xsl:copy-of select="/mn:metanorma/mn:bibdata/mn:title[@language = $lang and @type = 'main'][last()]"/>
515
- </xsl:variable>
516
- <xsl:for-each select="xalan:nodeset($titles)/mn:title">
517
- <fo:block font-size="27pt" font-weight="bold" role="H1">
518
- <xsl:apply-templates/><xsl:if test="position() != last()"><xsl:value-of select="$nonbreak_space_em_dash"/></xsl:if>
519
- </fo:block>
520
- </xsl:for-each>
513
+ <xsl:variable name="titles">
514
+ <xsl:copy-of select="/mn:metanorma/mn:bibdata/mn:title[@language = $lang and (@type = 'intro' or not(@type))]"/>
515
+ <xsl:copy-of select="/mn:metanorma/mn:bibdata/mn:title[@language = $lang and @type = 'main'][last()]"/>
516
+ </xsl:variable>
517
+ <xsl:for-each select="xalan:nodeset($titles)/mn:title">
518
+ <fo:block font-size="27pt" font-weight="bold" role="H1">
519
+ <xsl:apply-templates/><xsl:if test="position() != last()"><xsl:value-of select="$nonbreak_space_em_dash"/></xsl:if>
520
+ </fo:block>
521
+ </xsl:for-each>
521
522
 
522
- <fo:block space-before="9pt" font-size="16.8pt" font-weight="600">
523
- <xsl:value-of select="$docnumber_version"/>
524
- </fo:block>
525
- </fo:block-container>
526
- </fo:flow>
527
- </fo:page-sequence>
523
+ <fo:block space-before="9pt" font-size="16.8pt" font-weight="600">
524
+ <xsl:value-of select="$docnumber_version"/>
525
+ </fo:block>
526
+ </fo:block-container>
527
+ </fo:flow>
528
+ </fo:page-sequence>
529
+ </xsl:otherwise>
530
+ </xsl:choose>
528
531
  </xsl:template> <!-- END: cover-page -->
529
532
 
530
533
  <xsl:template name="inner-cover-page">
@@ -631,7 +634,7 @@
631
634
  <xsl:if test="$contents//mnx:item[@display = 'true']">
632
635
 
633
636
  <fo:block-container xsl:use-attribute-sets="toc-style">
634
- <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
637
+ <fo:block-container xsl:use-attribute-sets="reset-margins-style">
635
638
  <xsl:for-each select="$contents//mnx:item[@display = 'true']">
636
639
  <fo:block xsl:use-attribute-sets="toc-item-style">
637
640
 
@@ -803,44 +806,6 @@
803
806
  <xsl:call-template name="getLevel"/>
804
807
  </xsl:variable>
805
808
 
806
- <xsl:variable name="font-size">
807
- <xsl:choose>
808
- <!-- <xsl:when test="ancestor::mn:preface and $level &gt;= 2">12pt</xsl:when>
809
- <xsl:when test="ancestor::mn:preface">13pt</xsl:when> -->
810
- <xsl:when test="$level = 1">22pt</xsl:when>
811
- <!-- <xsl:when test="$level = 2">13pt</xsl:when>
812
- <xsl:when test="$level &gt;= 3">11pt</xsl:when>
813
- <xsl:otherwise>16pt</xsl:otherwise> -->
814
- <xsl:when test="$level &gt;= 2">13pt</xsl:when>
815
- <xsl:otherwise>13pt</xsl:otherwise>
816
- </xsl:choose>
817
- </xsl:variable>
818
-
819
- <xsl:variable name="font-weight">
820
- <xsl:choose>
821
- <xsl:when test="$level &gt;= 4">normal</xsl:when>
822
- <xsl:otherwise>bold</xsl:otherwise> <!-- 600 - semibold-->
823
- </xsl:choose>
824
- </xsl:variable>
825
-
826
- <xsl:variable name="space-before">
827
- <xsl:choose>
828
- <xsl:when test="$level = 1">25mm</xsl:when>
829
- <xsl:when test="$level = 2">9mm</xsl:when>
830
- <xsl:when test="$level = 3">12pt</xsl:when>
831
- <xsl:when test="$level &gt;= 4">8pt</xsl:when>
832
- <xsl:otherwise>13.5pt</xsl:otherwise>
833
- </xsl:choose>
834
- </xsl:variable>
835
-
836
- <xsl:variable name="margin-bottom">
837
- <xsl:choose>
838
- <xsl:when test="$level = 1">12pt</xsl:when>
839
- <xsl:when test="$level &gt;= 4">4pt</xsl:when>
840
- <xsl:otherwise>12pt</xsl:otherwise>
841
- </xsl:choose>
842
- </xsl:variable>
843
-
844
809
  <xsl:variable name="element-name">
845
810
  <xsl:choose>
846
811
  <xsl:when test="../@inline-header = 'true'">fo:inline</xsl:when>
@@ -848,27 +813,17 @@
848
813
  </xsl:choose>
849
814
  </xsl:variable>
850
815
 
851
- <xsl:variable name="color">
852
- <xsl:choose>
853
- <xsl:when test="$level = 3"><xsl:value-of select="$color_blue"/></xsl:when>
854
- <xsl:otherwise>black</xsl:otherwise>
855
- </xsl:choose>
816
+ <xsl:variable name="title_styles">
817
+ <styles xsl:use-attribute-sets="title-style"><xsl:call-template name="refine_title-style"/></styles>
856
818
  </xsl:variable>
857
819
 
858
820
  <xsl:element name="{$element-name}">
859
- <xsl:attribute name="font-size"><xsl:value-of select="$font-size"/></xsl:attribute>
860
- <xsl:attribute name="font-weight"><xsl:value-of select="$font-weight"/></xsl:attribute>
861
- <xsl:attribute name="space-before"><xsl:value-of select="$space-before"/></xsl:attribute>
862
- <xsl:attribute name="margin-bottom"><xsl:value-of select="$margin-bottom"/></xsl:attribute>
863
- <xsl:attribute name="keep-with-next">always</xsl:attribute>
864
- <xsl:attribute name="color"><xsl:value-of select="$color"/></xsl:attribute>
865
- <xsl:attribute name="line-height">125%</xsl:attribute>
866
- <xsl:attribute name="role">H<xsl:value-of select="$level"/></xsl:attribute>
821
+ <xsl:copy-of select="xalan:nodeset($title_styles)/styles/@*"/>
867
822
 
868
823
  <xsl:choose>
869
824
  <xsl:when test="$level = 1">
870
825
  <fo:block-container margin-left="-15mm" role="SKIP">
871
- <fo:block-container margin-left="0mm" role="SKIP">
826
+ <fo:block-container xsl:use-attribute-sets="reset-margins-style">
872
827
  <fo:table width="100%" table-layout="fixed" role="SKIP">
873
828
  <fo:table-column column-width="15mm"/>
874
829
  <fo:table-column column-width="150mm"/>
@@ -937,25 +892,16 @@
937
892
  </xsl:variable>
938
893
 
939
894
  <xsl:call-template name="setNamedDestination"/>
940
- <xsl:element name="{$element-name}">
941
- <xsl:attribute name="id">
942
- <xsl:value-of select="@id"/>
943
- </xsl:attribute>
944
895
 
945
- <xsl:call-template name="setBlockAttributes"/>
896
+ <xsl:variable name="p_styles">
897
+ <styles xsl:use-attribute-sets="p-style">
898
+ <xsl:call-template name="refine_p-style"><xsl:with-param name="element-name" select="$element-name"/></xsl:call-template>
899
+ </styles>
900
+ </xsl:variable>
946
901
 
947
- <xsl:attribute name="space-after">
948
- <xsl:choose>
949
- <xsl:when test="ancestor::mn:li">6pt</xsl:when>
950
- <xsl:when test="ancestor::mn:feedback-statement and not(following-sibling::mn:p)">0pt</xsl:when>
951
- <xsl:otherwise>6pt</xsl:otherwise> <!-- 12pt-->
952
- </xsl:choose>
953
- </xsl:attribute>
954
- <xsl:if test="ancestor::mn:dl"> <!-- ancestor::mn:li or -->
955
- <xsl:attribute name="margin-bottom">0pt</xsl:attribute>
956
- </xsl:if>
902
+ <xsl:element name="{$element-name}">
903
+ <xsl:copy-of select="xalan:nodeset($p_styles)/styles/@*"/>
957
904
 
958
- <!-- <xsl:attribute name="line-height">155%</xsl:attribute> -->
959
905
  <xsl:apply-templates>
960
906
  <xsl:with-param name="split_keep-within-line" select="$split_keep-within-line"/>
961
907
  </xsl:apply-templates>
@@ -975,7 +921,7 @@
975
921
 
976
922
  <xsl:template match="mn:ul | mn:ol" mode="list" priority="2">
977
923
  <fo:block-container role="SKIP">
978
- <fo:block-container margin-left="0mm" role="SKIP">
924
+ <fo:block-container xsl:use-attribute-sets="reset-margins-style">
979
925
  <xsl:choose>
980
926
  <xsl:when test="not(ancestor::mn:ul) and not(ancestor::mn:ol)">
981
927
  <fo:block padding-bottom="12pt" padding-top="4pt" role="SKIP">
@@ -1013,15 +959,17 @@
1013
959
 
1014
960
  <xsl:template match="mn:fmt-preferred | mn:fmt-deprecates | mn:fmt-admitted" priority="2">
1015
961
 
1016
- <fo:block xsl:use-attribute-sets="preferred-style">
1017
- <xsl:call-template name="refine_preferred-style"/>
962
+ <fo:block xsl:use-attribute-sets="term-preferred-block-style">
963
+ <xsl:call-template name="refine_term-preferred-block-style"/>
1018
964
  <xsl:if test="preceding-sibling::*[1][self::mn:fmt-name]">
1019
- <fo:inline padding-right="1mm">
965
+ <fo:inline xsl:use-attribute-sets="term-number-style">
966
+ <xsl:call-template name="refine_term-number-style"/>
967
+
1020
968
  <xsl:apply-templates select="ancestor::mn:term[1]/mn:fmt-name"/>
1021
969
  </fo:inline>
1022
970
  </xsl:if>
1023
971
 
1024
- <fo:inline padding-right="4mm"><xsl:if test="self::mn:fmt-preferred"><xsl:call-template name="refine_preferred-term-style"/></xsl:if><xsl:apply-templates/></fo:inline>
972
+ <fo:inline xsl:use-attribute-sets="term-preferred-style"><xsl:call-template name="refine_term-preferred-style"/><xsl:apply-templates/></fo:inline>
1025
973
 
1026
974
  <xsl:variable name="term_kind">
1027
975
  <xsl:choose>
@@ -1133,7 +1081,7 @@
1133
1081
  <fo:block-container xsl:use-attribute-sets="clause-style">
1134
1082
  <xsl:call-template name="refine_clause-style"/>
1135
1083
 
1136
- <fo:block-container margin-left="0mm" role="SKIP">
1084
+ <fo:block-container xsl:use-attribute-sets="reset-margins-style">
1137
1085
  <xsl:call-template name="setNamedDestination"/>
1138
1086
  <fo:block role="SKIP">
1139
1087
  <xsl:call-template name="setId"/>
@@ -1147,13 +1095,20 @@
1147
1095
  <xsl:template name="insertHeaderFooter">
1148
1096
  <xsl:param name="section"/>
1149
1097
 
1150
- <xsl:call-template name="insertHoneycomb">
1098
+ <xsl:call-template name="insertHeader">
1151
1099
  <xsl:with-param name="section" select="$section"/>
1152
1100
  </xsl:call-template>
1153
1101
 
1154
1102
  <xsl:call-template name="insertFooter"/>
1155
1103
  </xsl:template>
1156
1104
 
1105
+ <xsl:template name="insertHeader">
1106
+ <xsl:param name="section"/>
1107
+ <xsl:call-template name="insertHoneycomb">
1108
+ <xsl:with-param name="section" select="$section"/>
1109
+ </xsl:call-template>
1110
+ </xsl:template>
1111
+
1157
1112
  <xsl:template name="insertHoneycomb">
1158
1113
  <xsl:param name="section"/>
1159
1114
  <!-- LT - left top -->
@@ -1257,7 +1212,8 @@
1257
1212
  <xsl:template name="insertFooter">
1258
1213
  <!-- <xsl:param name="invert"/> -->
1259
1214
  <xsl:variable name="footerText">
1260
- <xsl:text>Ribose</xsl:text>
1215
+ <!-- Ribose -->
1216
+ <xsl:value-of select="/mn:metanorma/mn:bibdata/mn:contributor[mn:role/@type = 'publisher']/mn:organization/mn:abbreviation"/>
1261
1217
  <xsl:text> </xsl:text>
1262
1218
  <xsl:call-template name="capitalizeWords">
1263
1219
  <xsl:with-param name="str">
@@ -3400,6 +3356,10 @@
3400
3356
  </xsl:element>
3401
3357
  </xsl:template>
3402
3358
 
3359
+ <!-- show sourcecode's name 'before' or 'after' source code -->
3360
+ <xsl:variable name="sourcecode-name-position"><xsl:text>before</xsl:text>
3361
+ </xsl:variable>
3362
+
3403
3363
  <xsl:template match="mn:sourcecode" name="sourcecode">
3404
3364
 
3405
3365
  <xsl:variable name="sourcecode_attributes">
@@ -3423,8 +3383,12 @@
3423
3383
 
3424
3384
  <xsl:call-template name="refine_sourcecode-container-style"/>
3425
3385
 
3426
- <fo:block-container margin-left="0mm" role="SKIP">
3427
- <xsl:apply-templates select="mn:fmt-name"/> <!-- show sourcecode's name BEFORE content -->
3386
+ <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
3387
+
3388
+ <!-- <xsl:if test="$namespace = 'rsd'"> -->
3389
+ <xsl:if test="$sourcecode-name-position = 'before'">
3390
+ <xsl:apply-templates select="mn:fmt-name"/> <!-- show sourcecode's name BEFORE content -->
3391
+ </xsl:if>
3428
3392
 
3429
3393
  <fo:block xsl:use-attribute-sets="sourcecode-style">
3430
3394
 
@@ -3447,6 +3411,16 @@
3447
3411
 
3448
3412
  <xsl:apply-templates select="mn:dl"/> <!-- Key table -->
3449
3413
 
3414
+ <!-- <xsl:choose>
3415
+ <xsl:when test="$namespace = 'rsd'"></xsl:when>
3416
+ <xsl:otherwise>
3417
+ <xsl:apply-templates select="mn:fmt-name" /> --><!-- show sourcecode's name AFTER content -->
3418
+ <!-- </xsl:otherwise>
3419
+ </xsl:choose> -->
3420
+ <xsl:if test="$sourcecode-name-position = 'after'">
3421
+ <xsl:apply-templates select="mn:fmt-name"/> <!-- show sourcecode's name AFTER content -->
3422
+ </xsl:if>
3423
+
3450
3424
  </fo:block-container>
3451
3425
  </fo:block-container>
3452
3426
  </xsl:otherwise>
@@ -4710,21 +4684,22 @@
4710
4684
  <xsl:template name="refine_term-style">
4711
4685
  </xsl:template>
4712
4686
 
4713
- <xsl:attribute-set name="term-name-style">
4687
+ <xsl:attribute-set name="term-number-style">
4714
4688
  <xsl:attribute name="keep-with-next">always</xsl:attribute>
4715
4689
  <xsl:attribute name="font-weight">bold</xsl:attribute>
4690
+ <xsl:attribute name="padding-right">1mm</xsl:attribute>
4716
4691
  </xsl:attribute-set> <!-- term-name-style -->
4717
4692
 
4718
- <xsl:template name="refine_term-name-style">
4693
+ <xsl:template name="refine_term-number-style">
4719
4694
  </xsl:template>
4720
4695
 
4721
- <xsl:attribute-set name="preferred-style">
4696
+ <xsl:attribute-set name="term-preferred-block-style">
4722
4697
  <xsl:attribute name="font-weight">bold</xsl:attribute>
4723
4698
  <xsl:attribute name="color">black</xsl:attribute>
4724
4699
  <xsl:attribute name="keep-with-next">always</xsl:attribute>
4725
- </xsl:attribute-set> <!-- preferred-style -->
4700
+ </xsl:attribute-set> <!-- preferred-block-style -->
4726
4701
 
4727
- <xsl:template name="refine_preferred-style">
4702
+ <xsl:template name="refine_term-preferred-block-style">
4728
4703
  <xsl:variable name="level">
4729
4704
  <xsl:call-template name="getLevel"/>
4730
4705
  </xsl:variable>
@@ -4744,78 +4719,75 @@
4744
4719
  </xsl:if>
4745
4720
  </xsl:template>
4746
4721
 
4747
- <xsl:attribute-set name="preferred-block-style">
4748
- </xsl:attribute-set> <!-- preferred-block-style -->
4749
-
4750
- <xsl:template name="refine_preferred-block-style">
4751
- </xsl:template>
4752
-
4753
- <xsl:attribute-set name="preferred-term-style">
4722
+ <xsl:attribute-set name="term-preferred-style">
4754
4723
  <xsl:attribute name="keep-with-next">always</xsl:attribute>
4755
4724
  <xsl:attribute name="font-weight">bold</xsl:attribute>
4725
+ <xsl:attribute name="padding-right">4mm</xsl:attribute>
4756
4726
  </xsl:attribute-set> <!-- preferred-term-style -->
4757
4727
 
4758
- <xsl:template name="refine_preferred-term-style">
4759
- <xsl:attribute name="font-weight">normal</xsl:attribute>
4760
- <xsl:attribute name="color">black</xsl:attribute>
4728
+ <xsl:template name="refine_term-preferred-style">
4729
+ <xsl:if test="self::mn:fmt-preferred">
4730
+ <xsl:attribute name="font-weight">normal</xsl:attribute>
4731
+ <xsl:attribute name="color">black</xsl:attribute>
4732
+ </xsl:if>
4761
4733
 
4762
4734
  </xsl:template>
4763
4735
 
4764
- <xsl:attribute-set name="domain-style">
4765
- </xsl:attribute-set> <!-- domain-style -->
4736
+ <xsl:attribute-set name="term-domain-style">
4737
+ </xsl:attribute-set> <!-- term-domain-style -->
4766
4738
 
4767
- <xsl:template name="refine_domain-style">
4739
+ <xsl:template name="refine_term-domain-style">
4768
4740
  </xsl:template>
4769
4741
 
4770
- <xsl:attribute-set name="admitted-style">
4742
+ <xsl:attribute-set name="term-admitted-style">
4771
4743
  <xsl:attribute name="font-weight">bold</xsl:attribute>
4772
4744
  <xsl:attribute name="color">black</xsl:attribute>
4773
- </xsl:attribute-set> <!-- admitted-style -->
4745
+ </xsl:attribute-set> <!-- term-admitted-style -->
4774
4746
 
4775
- <xsl:template name="refine_admitted-style">
4747
+ <xsl:template name="refine_term-admitted-style">
4776
4748
  </xsl:template>
4777
4749
 
4778
- <xsl:attribute-set name="deprecates-style">
4750
+ <xsl:attribute-set name="term-deprecates-style">
4779
4751
  <xsl:attribute name="font-weight">bold</xsl:attribute>
4780
4752
  <xsl:attribute name="color">black</xsl:attribute>
4781
- </xsl:attribute-set> <!-- deprecates-style -->
4753
+ </xsl:attribute-set> <!-- term-deprecates-style -->
4782
4754
 
4783
- <xsl:template name="refine_deprecates-style">
4755
+ <xsl:template name="refine_term-deprecates-style">
4784
4756
  </xsl:template>
4785
4757
 
4786
- <xsl:attribute-set name="related-block-style" use-attribute-sets="preferred-block-style">
4758
+ <xsl:attribute-set name="term-related-block-style" use-attribute-sets="term-preferred-block-style">
4787
4759
  </xsl:attribute-set>
4788
4760
 
4789
- <xsl:template name="refine_related-block-style">
4761
+ <xsl:template name="refine_term-related-block-style">
4790
4762
  </xsl:template>
4791
4763
 
4792
- <xsl:attribute-set name="definition-style">
4764
+ <xsl:attribute-set name="term-definition-style">
4793
4765
  <xsl:attribute name="keep-with-previous">always</xsl:attribute>
4794
4766
  <xsl:attribute name="space-before">12pt</xsl:attribute>
4795
4767
  <xsl:attribute name="space-after">6pt</xsl:attribute>
4796
- </xsl:attribute-set> <!-- definition-style -->
4768
+ </xsl:attribute-set> <!-- term-definition-style -->
4797
4769
 
4798
- <xsl:template name="refine_definition-style">
4770
+ <xsl:template name="refine_term-definition-style">
4799
4771
  </xsl:template>
4800
4772
 
4801
- <xsl:attribute-set name="termsource-style">
4773
+ <xsl:attribute-set name="term-termsource-style">
4802
4774
  <xsl:attribute name="keep-with-previous">always</xsl:attribute>
4803
- </xsl:attribute-set> <!-- termsource-style -->
4775
+ </xsl:attribute-set> <!-- term-termsource-style -->
4804
4776
 
4805
- <xsl:template name="refine_termsource-style">
4806
- </xsl:template> <!-- refine_termsource-style -->
4777
+ <xsl:template name="refine_term-termsource-style">
4778
+ </xsl:template> <!-- refine_term-termsource-style -->
4807
4779
 
4808
- <xsl:attribute-set name="termsource-text-style">
4780
+ <xsl:attribute-set name="term-termsource-text-style">
4809
4781
  <xsl:attribute name="color"><xsl:value-of select="$color_blue"/></xsl:attribute>
4810
- </xsl:attribute-set> <!-- termsource-text-style -->
4782
+ </xsl:attribute-set> <!-- term-termsource-text-style -->
4811
4783
 
4812
- <xsl:template name="refine_termsource-text-style">
4784
+ <xsl:template name="refine_term-termsource-text-style">
4813
4785
  </xsl:template>
4814
4786
 
4815
- <xsl:attribute-set name="origin-style">
4816
- </xsl:attribute-set> <!-- origin-style -->
4787
+ <xsl:attribute-set name="term-origin-style">
4788
+ </xsl:attribute-set> <!-- term-origin-style -->
4817
4789
 
4818
- <xsl:template name="refine_origin-style">
4790
+ <xsl:template name="refine_term-origin-style">
4819
4791
  </xsl:template>
4820
4792
 
4821
4793
  <!-- ====== -->
@@ -4859,9 +4831,9 @@
4859
4831
  <!-- modification -->
4860
4832
  <!-- ====== -->
4861
4833
  <xsl:template match="mn:fmt-termsource" name="termsource">
4862
- <fo:block xsl:use-attribute-sets="termsource-style">
4834
+ <fo:block xsl:use-attribute-sets="term-termsource-style">
4863
4835
 
4864
- <xsl:call-template name="refine_termsource-style"/>
4836
+ <xsl:call-template name="refine_term-termsource-style"/>
4865
4837
 
4866
4838
  <!-- Example: [SOURCE: ISO 5127:2017, 3.1.6.02] -->
4867
4839
  <xsl:variable name="termsource_text">
@@ -4909,8 +4881,8 @@
4909
4881
 
4910
4882
  <!-- text SOURCE: -->
4911
4883
  <xsl:template match="mn:fmt-termsource/mn:strong[1][following-sibling::*[1][self::mn:fmt-origin]]/text()">
4912
- <fo:inline xsl:use-attribute-sets="termsource-text-style">
4913
- <xsl:call-template name="refine_termsource-text-style"/>
4884
+ <fo:inline xsl:use-attribute-sets="term-termsource-text-style">
4885
+ <xsl:call-template name="refine_term-termsource-text-style"/>
4914
4886
  <xsl:value-of select="."/>
4915
4887
  </fo:inline>
4916
4888
  </xsl:template>
@@ -4922,8 +4894,8 @@
4922
4894
  <xsl:if test="normalize-space(@citeas) = ''">
4923
4895
  <xsl:attribute name="fox:alt-text"><xsl:value-of select="@bibitemid"/></xsl:attribute>
4924
4896
  </xsl:if>
4925
- <fo:inline xsl:use-attribute-sets="origin-style">
4926
- <xsl:call-template name="refine_origin-style"/>
4897
+ <fo:inline xsl:use-attribute-sets="term-origin-style">
4898
+ <xsl:call-template name="refine_term-origin-style"/>
4927
4899
  <xsl:apply-templates/>
4928
4900
  </fo:inline>
4929
4901
  </fo:basic-link>
@@ -4971,14 +4943,14 @@
4971
4943
  <xsl:variable name="levelTerm">
4972
4944
  <xsl:call-template name="getLevelTermName"/>
4973
4945
  </xsl:variable>
4974
- <fo:block font-size="{normalize-space($font-size)}" role="H{$levelTerm}" xsl:use-attribute-sets="preferred-block-style">
4946
+ <fo:block font-size="{normalize-space($font-size)}" role="H{$levelTerm}" xsl:use-attribute-sets="term-preferred-block-style">
4975
4947
 
4976
- <xsl:call-template name="refine_preferred-block-style"/>
4948
+ <xsl:call-template name="refine_term-preferred-block-style"/>
4977
4949
 
4978
4950
  <xsl:if test="parent::mn:term and not(preceding-sibling::mn:fmt-preferred)"> <!-- if first preffered in term, then display term's name -->
4979
4951
 
4980
- <fo:block xsl:use-attribute-sets="term-name-style" role="SKIP">
4981
- <xsl:call-template name="refine_term-name-style"/>
4952
+ <fo:block xsl:use-attribute-sets="term-number-style" role="SKIP">
4953
+ <xsl:call-template name="refine_term-number-style"/>
4982
4954
 
4983
4955
  <xsl:for-each select="ancestor::mn:term[1]/mn:fmt-name"><!-- change context -->
4984
4956
  <xsl:call-template name="setIDforNamedDestination"/>
@@ -4988,8 +4960,8 @@
4988
4960
  </fo:block>
4989
4961
  </xsl:if>
4990
4962
 
4991
- <fo:block xsl:use-attribute-sets="preferred-term-style" role="SKIP">
4992
- <xsl:call-template name="refine_preferred-term-style"/>
4963
+ <fo:block xsl:use-attribute-sets="term-preferred-style" role="SKIP">
4964
+ <xsl:call-template name="refine_term-preferred-style"/>
4993
4965
 
4994
4966
  <xsl:apply-templates/>
4995
4967
  </fo:block>
@@ -5009,15 +4981,15 @@
5009
4981
  <xsl:template match="mn:domain"/>
5010
4982
 
5011
4983
  <xsl:template match="mn:fmt-admitted">
5012
- <fo:block xsl:use-attribute-sets="admitted-style">
5013
- <xsl:call-template name="refine_admitted-style"/>
4984
+ <fo:block xsl:use-attribute-sets="term-admitted-style">
4985
+ <xsl:call-template name="refine_term-admitted-style"/>
5014
4986
  <xsl:apply-templates/>
5015
4987
  </fo:block>
5016
4988
  </xsl:template>
5017
4989
 
5018
4990
  <xsl:template match="mn:fmt-deprecates">
5019
- <fo:block xsl:use-attribute-sets="deprecates-style">
5020
- <xsl:call-template name="refine_deprecates-style"/>
4991
+ <fo:block xsl:use-attribute-sets="term-deprecates-style">
4992
+ <xsl:call-template name="refine_term-deprecates-style"/>
5021
4993
  <xsl:apply-templates/>
5022
4994
  </fo:block>
5023
4995
  </xsl:template>
@@ -5030,8 +5002,8 @@
5030
5002
  <!-- End Preferred, admitted, deprecated -->
5031
5003
 
5032
5004
  <xsl:template match="mn:fmt-related">
5033
- <fo:block role="SKIP" xsl:use-attribute-sets="related-block-style">
5034
- <xsl:call-template name="refine_related-block-style"/>
5005
+ <fo:block role="SKIP" xsl:use-attribute-sets="term-related-block-style">
5006
+ <xsl:call-template name="refine_term-related-block-style"/>
5035
5007
  <xsl:apply-templates/>
5036
5008
  </fo:block>
5037
5009
  </xsl:template>
@@ -5045,8 +5017,8 @@
5045
5017
  <!-- definition -->
5046
5018
  <!-- ========== -->
5047
5019
  <xsl:template match="mn:fmt-definition">
5048
- <fo:block xsl:use-attribute-sets="definition-style" role="SKIP">
5049
- <xsl:call-template name="refine_definition-style"/>
5020
+ <fo:block xsl:use-attribute-sets="term-definition-style" role="SKIP">
5021
+ <xsl:call-template name="refine_term-definition-style"/>
5050
5022
  <xsl:apply-templates/>
5051
5023
  </fo:block>
5052
5024
  </xsl:template>
@@ -9299,6 +9271,10 @@
9299
9271
  <!-- image -->
9300
9272
  <!-- ====== -->
9301
9273
 
9274
+ <!-- show figure's name 'before' or 'after' image -->
9275
+ <xsl:variable name="figure-name-position"><xsl:text>before</xsl:text>
9276
+ </xsl:variable>
9277
+
9302
9278
  <xsl:template match="mn:figure" name="figure">
9303
9279
  <xsl:variable name="isAdded" select="@added"/>
9304
9280
  <xsl:variable name="isDeleted" select="@deleted"/>
@@ -9309,8 +9285,11 @@
9309
9285
  <xsl:call-template name="setTrackChangesStyles">
9310
9286
  <xsl:with-param name="isAdded" select="$isAdded"/>
9311
9287
  <xsl:with-param name="isDeleted" select="$isDeleted"/>
9312
- </xsl:call-template> <!-- show figure's name BEFORE image -->
9313
- <xsl:apply-templates select="mn:fmt-name"/>
9288
+ </xsl:call-template>
9289
+
9290
+ <xsl:if test="$figure-name-position = 'before'"> <!-- show figure's name BEFORE image -->
9291
+ <xsl:apply-templates select="mn:fmt-name"/>
9292
+ </xsl:if>
9314
9293
 
9315
9294
  <!-- Example: Dimensions in millimeters -->
9316
9295
  <xsl:apply-templates select="mn:note[@type = 'units']"/>
@@ -9333,6 +9312,16 @@
9333
9312
  <xsl:call-template name="showFigureKey"/>
9334
9313
  </xsl:if>
9335
9314
 
9315
+ <!-- <xsl:choose>
9316
+ <xsl:when test="$namespace = 'bsi' or $namespace = 'pas' or $namespace = 'rsd'"></xsl:when>
9317
+ <xsl:otherwise>
9318
+ <xsl:apply-templates select="mn:fmt-name" /> --> <!-- show figure's name AFTER image -->
9319
+ <!-- </xsl:otherwise>
9320
+ </xsl:choose> -->
9321
+ <xsl:if test="$figure-name-position = 'after'">
9322
+ <xsl:apply-templates select="mn:fmt-name"/> <!-- show figure's name AFTER image -->
9323
+ </xsl:if>
9324
+
9336
9325
  </fo:block-container>
9337
9326
  </xsl:template>
9338
9327
 
@@ -11433,7 +11422,6 @@
11433
11422
  </xsl:attribute-set>
11434
11423
 
11435
11424
  <xsl:template name="refine_references-non-normative-title-style">
11436
-
11437
11425
  </xsl:template>
11438
11426
 
11439
11427
  <!-- bibitem in Normative References (references/@normative="true") -->
@@ -13563,7 +13551,7 @@
13563
13551
  <!-- ===================================== -->
13564
13552
 
13565
13553
  <xsl:attribute-set name="annex-title-style">
13566
- </xsl:attribute-set>
13554
+ </xsl:attribute-set> <!-- annex-title-style -->
13567
13555
 
13568
13556
  <xsl:template name="refine_annex-title-style">
13569
13557
  </xsl:template>
@@ -13574,6 +13562,65 @@
13574
13562
  <xsl:template name="refine_p-zzSTDTitle1-style">
13575
13563
  </xsl:template>
13576
13564
 
13565
+ <xsl:attribute-set name="p-style">
13566
+ </xsl:attribute-set> <!-- p-style -->
13567
+
13568
+ <xsl:template name="refine_p-style">
13569
+ <xsl:param name="element-name"/>
13570
+ <xsl:param name="margin"/>
13571
+ <xsl:call-template name="setBlockAttributes"/>
13572
+
13573
+ <xsl:copy-of select="@id"/>
13574
+
13575
+ <xsl:attribute name="space-after">
13576
+ <xsl:choose>
13577
+ <xsl:when test="ancestor::mn:li">6pt</xsl:when>
13578
+ <xsl:when test="ancestor::mn:feedback-statement and not(following-sibling::mn:p)">0pt</xsl:when>
13579
+ <xsl:otherwise>6pt</xsl:otherwise>
13580
+ </xsl:choose>
13581
+ </xsl:attribute>
13582
+ <xsl:if test="ancestor::mn:dl">
13583
+ <xsl:attribute name="margin-bottom">0pt</xsl:attribute>
13584
+ </xsl:if>
13585
+ <!-- namespace = 'rsd' -->
13586
+
13587
+ </xsl:template> <!-- refine_p-style -->
13588
+
13589
+ <xsl:attribute-set name="title-style">
13590
+ <!-- Note: font-size for level 1 title -->
13591
+ <xsl:attribute name="font-size">22pt</xsl:attribute>
13592
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
13593
+ <xsl:attribute name="space-before">25mm</xsl:attribute>
13594
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
13595
+ <xsl:attribute name="keep-with-next">always</xsl:attribute>
13596
+ <xsl:attribute name="color">black</xsl:attribute>
13597
+ <xsl:attribute name="line-height">125%</xsl:attribute>
13598
+ </xsl:attribute-set> <!-- title-style -->
13599
+
13600
+ <xsl:template name="refine_title-style">
13601
+ <xsl:param name="element-name"/>
13602
+ <xsl:variable name="level">
13603
+ <xsl:call-template name="getLevel"/>
13604
+ </xsl:variable>
13605
+ <xsl:if test="$level &gt;= 2">
13606
+ <xsl:attribute name="font-size">13pt</xsl:attribute>
13607
+ </xsl:if>
13608
+ <xsl:if test="$level = 2">
13609
+ <xsl:attribute name="space-before">9mm</xsl:attribute>
13610
+ </xsl:if>
13611
+ <xsl:if test="$level = 3">
13612
+ <xsl:attribute name="space-before">12pt</xsl:attribute>
13613
+ <xsl:attribute name="color"><xsl:value-of select="$color_blue"/></xsl:attribute>
13614
+ </xsl:if>
13615
+ <xsl:if test="$level &gt;= 4">
13616
+ <xsl:attribute name="font-weight">normal</xsl:attribute>
13617
+ <xsl:attribute name="space-before">8pt</xsl:attribute>
13618
+ <xsl:attribute name="margin-bottom">4pt</xsl:attribute>
13619
+ </xsl:if>
13620
+ <!-- $namespace = 'rsd' -->
13621
+ <xsl:attribute name="role">H<xsl:value-of select="$level"/></xsl:attribute>
13622
+ </xsl:template> <!-- refine_title-style -->
13623
+
13577
13624
  <xsl:template name="processPrefaceSectionsDefault">
13578
13625
  <xsl:for-each select="/*/mn:preface/*[not(self::mn:note or self::mn:admonition)]">
13579
13626
  <xsl:sort select="@displayorder" data-type="number"/>
@@ -13912,6 +13959,12 @@
13912
13959
  </xsl:choose>
13913
13960
  </xsl:template>
13914
13961
 
13962
+ <xsl:attribute-set name="reset-margins-style">
13963
+ <xsl:attribute name="margin-left">0mm</xsl:attribute>
13964
+ <xsl:attribute name="margin-right">0mm</xsl:attribute>
13965
+ <xsl:attribute name="role">SKIP</xsl:attribute>
13966
+ </xsl:attribute-set>
13967
+
13915
13968
  <xsl:attribute-set name="clause-style">
13916
13969
 
13917
13970
  </xsl:attribute-set>
@@ -14931,8 +14984,9 @@
14931
14984
 
14932
14985
  <xsl:template name="setTextAlignment">
14933
14986
  <xsl:param name="default">left</xsl:param>
14987
+ <xsl:param name="skip_default">false</xsl:param>
14934
14988
  <xsl:variable name="align" select="normalize-space(@align)"/>
14935
- <xsl:attribute name="text-align">
14989
+ <xsl:variable name="text_align">
14936
14990
  <xsl:choose>
14937
14991
  <xsl:when test="$lang = 'ar' and $align = 'left'">start</xsl:when>
14938
14992
  <xsl:when test="$lang = 'ar' and $align = 'right'">end</xsl:when>
@@ -14940,9 +14994,13 @@
14940
14994
  <xsl:when test="$align != '' and not($align = 'indent')"><xsl:value-of select="$align"/></xsl:when>
14941
14995
  <xsl:when test="ancestor::mn:td/@align"><xsl:value-of select="ancestor::mn:td/@align"/></xsl:when>
14942
14996
  <xsl:when test="ancestor::mn:th/@align"><xsl:value-of select="ancestor::mn:th/@align"/></xsl:when>
14997
+ <xsl:when test="$skip_default = 'true'"/>
14943
14998
  <xsl:otherwise><xsl:value-of select="$default"/></xsl:otherwise>
14944
14999
  </xsl:choose>
14945
- </xsl:attribute>
15000
+ </xsl:variable>
15001
+ <xsl:if test="normalize-space($text_align) != ''">
15002
+ <xsl:attribute name="text-align"><xsl:value-of select="$text_align"/></xsl:attribute>
15003
+ </xsl:if>
14946
15004
  <xsl:if test="$align = 'indent'">
14947
15005
  <xsl:attribute name="margin-left">7mm</xsl:attribute>
14948
15006
  </xsl:if>
@@ -14950,8 +15008,10 @@
14950
15008
 
14951
15009
  <xsl:template name="setBlockAttributes">
14952
15010
  <xsl:param name="text_align_default">left</xsl:param>
15011
+ <xsl:param name="skip_text_align_default">false</xsl:param>
14953
15012
  <xsl:call-template name="setTextAlignment">
14954
15013
  <xsl:with-param name="default" select="$text_align_default"/>
15014
+ <xsl:with-param name="skip_default" select="$skip_text_align_default"/>
14955
15015
  </xsl:call-template>
14956
15016
  <xsl:call-template name="setKeepAttributes"/>
14957
15017
  <xsl:if test="node()[1][self::mn:span][contains(@style, 'line-height')]">
@@ -14994,6 +15054,20 @@
14994
15054
  </fo:block-container>
14995
15055
  </xsl:template>
14996
15056
 
15057
+ <!-- for https://github.com/metanorma/mn-native-pdf/issues/845 -->
15058
+ <xsl:template name="insertCoverPageFullImage">
15059
+ <xsl:param name="name">coverpage-image</xsl:param>
15060
+ <xsl:for-each select="//mn:metanorma/mn:metanorma-extension/mn:presentation-metadata[mn:name = $name][1]/mn:value/mn:image">
15061
+ <fo:page-sequence master-reference="cover-page" force-page-count="no-force">
15062
+ <fo:flow flow-name="xsl-region-body">
15063
+ <xsl:call-template name="insertBackgroundPageImage">
15064
+ <xsl:with-param name="number" select="position()"/>
15065
+ </xsl:call-template>
15066
+ </fo:flow>
15067
+ </fo:page-sequence>
15068
+ </xsl:for-each>
15069
+ </xsl:template>
15070
+
14997
15071
  <xsl:template name="insertPageImage">
14998
15072
  <xsl:param name="svg_content_height" select="$pageHeight"/>
14999
15073
  <xsl:param name="bitmap_width" select="$pageWidth"/>
@@ -869,7 +869,7 @@ depending on whether the items exist as independent documents, or are parts of a
869
869
  </zeroOrMore>
870
870
  </element>
871
871
  </define>
872
- <define name="BibItemType" combine="choice">
872
+ <define name="BibItemType">
873
873
  <a:documentation>Type of bibliographic item.
874
874
  The value list complies with the types provided in ISO 690:2021.
875
875
  NOTE: These values represent a strict superset to BibTeX
@@ -56,3 +56,5 @@ module Metanorma
56
56
  end
57
57
  end
58
58
  end
59
+
60
+ require_relative "log"
@@ -311,17 +311,28 @@ and is intended to be referenced by a callout within the source code</a:document
311
311
  </ref>
312
312
  </optional>
313
313
  <choice>
314
- <a:documentation>Content of the figure</a:documentation>
315
- <ref name="image"/>
314
+ <a:documentation>Content of the figure </a:documentation>
315
+ <ref name="image">
316
+ <a:documentation>by default the content of a figure is a media file</a:documentation>
317
+ </ref>
316
318
  <ref name="video"/>
317
319
  <ref name="audio"/>
318
- <ref name="pre"/>
320
+ <ref name="pre">
321
+ <a:documentation>figures can contain ASCII art</a:documentation>
322
+ </ref>
319
323
  <oneOrMore>
320
- <ref name="paragraph-with-footnote"/>
324
+ <ref name="paragraph-with-footnote">
325
+ <a:documentation>figures can contain discursive art</a:documentation>
326
+ </ref>
321
327
  </oneOrMore>
322
328
  <zeroOrMore>
323
- <ref name="figure"/>
329
+ <ref name="figure">
330
+ <a:documentation>subfigures, nested directly within a figure</a:documentation>
331
+ </ref>
324
332
  </zeroOrMore>
333
+ <ref name="table">
334
+ <a:documentation>Table is understood in this context to be a tabular arrangement of subfigures</a:documentation>
335
+ </ref>
325
336
  </choice>
326
337
  <zeroOrMore>
327
338
  <ref name="fn">
@@ -354,17 +365,28 @@ and is intended to be referenced by a callout within the source code</a:document
354
365
  </ref>
355
366
  </optional>
356
367
  <choice>
357
- <a:documentation>Content of the figure</a:documentation>
358
- <ref name="image-no-id"/>
368
+ <a:documentation>Content of the figure </a:documentation>
369
+ <ref name="image-no-id">
370
+ <a:documentation>by default the content of a figure is a media file</a:documentation>
371
+ </ref>
359
372
  <ref name="video-no-id"/>
360
373
  <ref name="audio-no-id"/>
361
- <ref name="pre-no-id"/>
374
+ <ref name="pre-no-id">
375
+ <a:documentation>figures can contain ASCII art</a:documentation>
376
+ </ref>
362
377
  <oneOrMore>
363
- <ref name="paragraph-with-footnote-no-id"/>
378
+ <ref name="paragraph-with-footnote-no-id">
379
+ <a:documentation>figures can contain discursive art</a:documentation>
380
+ </ref>
364
381
  </oneOrMore>
365
382
  <zeroOrMore>
366
- <ref name="figure-no-id"/>
383
+ <ref name="figure-no-id">
384
+ <a:documentation>subfigures, nested directly within a figure</a:documentation>
385
+ </ref>
367
386
  </zeroOrMore>
387
+ <ref name="table-no-id">
388
+ <a:documentation>Table is understood in this context to be a tabular arrangement of subfigures</a:documentation>
389
+ </ref>
368
390
  </choice>
369
391
  <zeroOrMore>
370
392
  <ref name="fn">
@@ -876,6 +898,9 @@ titlecase, or lowercase</a:documentation>
876
898
  <data type="boolean"/>
877
899
  </attribute>
878
900
  </optional>
901
+ <ref name="LocalizedStringAttributes">
902
+ <a:documentation>Specify language of bibitem, can be used to render it with language-specific bibliographic style</a:documentation>
903
+ </ref>
879
904
  <ref name="ReducedBibliographicItem"/>
880
905
  </element>
881
906
  </define>
@@ -0,0 +1,15 @@
1
+ module Metanorma
2
+ module Ribose
3
+ class Converter
4
+ RIBOSE_LOG_MESSAGES = {
5
+ # rubocop:disable Naming/VariableNumber
6
+ # No gem-specific log messages currently defined
7
+ }.freeze
8
+ # rubocop:enable Naming/VariableNumber
9
+
10
+ def log_messages
11
+ super.merge(RIBOSE_LOG_MESSAGES)
12
+ end
13
+ end
14
+ end
15
+ end
@@ -1,5 +1,5 @@
1
1
  module Metanorma
2
2
  module Ribose
3
- VERSION = "2.7.5".freeze
3
+ VERSION = "2.7.7".freeze
4
4
  end
5
5
  end
@@ -29,7 +29,7 @@ Gem::Specification.new do |spec|
29
29
  spec.require_paths = ["lib"]
30
30
  spec.required_ruby_version = Gem::Requirement.new(">= 3.1.0")
31
31
 
32
- spec.add_dependency "metanorma-generic", "~> 3.1.0"
32
+ spec.add_dependency "metanorma-generic", "~> 3.2.0"
33
33
 
34
34
  spec.add_development_dependency "debug"
35
35
  spec.add_development_dependency "equivalent-xml", "~> 0.6"
@@ -42,5 +42,5 @@ spec.add_development_dependency "rubocop-performance"
42
42
  spec.add_development_dependency "sassc-embedded", "~> 1"
43
43
  spec.add_development_dependency "simplecov", "~> 0.15"
44
44
  spec.add_development_dependency "timecop", "~> 0.9"
45
- spec.add_development_dependency "canon"
45
+ spec.add_development_dependency "canon", "= 0.1.3"
46
46
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metanorma-ribose
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.7.5
4
+ version: 2.7.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2025-09-29 00:00:00.000000000 Z
11
+ date: 2025-11-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: metanorma-generic
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 3.1.0
19
+ version: 3.2.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 3.1.0
26
+ version: 3.2.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: debug
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -182,16 +182,16 @@ dependencies:
182
182
  name: canon
183
183
  requirement: !ruby/object:Gem::Requirement
184
184
  requirements:
185
- - - ">="
185
+ - - '='
186
186
  - !ruby/object:Gem::Version
187
- version: '0'
187
+ version: 0.1.3
188
188
  type: :development
189
189
  prerelease: false
190
190
  version_requirements: !ruby/object:Gem::Requirement
191
191
  requirements:
192
- - - ">="
192
+ - - '='
193
193
  - !ruby/object:Gem::Version
194
- version: '0'
194
+ version: 0.1.3
195
195
  description: |
196
196
  metanorma-ribose lets you write Ribose standards in AsciiDoc syntax.
197
197
 
@@ -242,6 +242,7 @@ files:
242
242
  - lib/metanorma/ribose/boilerplate.adoc
243
243
  - lib/metanorma/ribose/converter.rb
244
244
  - lib/metanorma/ribose/isodoc.rng
245
+ - lib/metanorma/ribose/log.rb
245
246
  - lib/metanorma/ribose/processor.rb
246
247
  - lib/metanorma/ribose/relaton-ribose.rng
247
248
  - lib/metanorma/ribose/reqt.rng