metanorma-itu 2.1.10 → 2.1.11

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ff80a10c49839631d4c76846f353bf8e180ce0ec482a126f63474ecbe091b3ad
4
- data.tar.gz: e4d8301448368fbd4c9f01a512c8fd7372c88d2adfd34cec55a5e9f33d75c50d
3
+ metadata.gz: c74099b675276db39c9419b36457a677658165bd73a0fca06655be8ddf666a3f
4
+ data.tar.gz: cb4fa32d57650bb3cdb4965218268baba793fc0852188b4f43373ec3e5ae4fe8
5
5
  SHA512:
6
- metadata.gz: cca3ddc45419d73b876c58cc13f1a3fd3328642bb815308125ceb58a5add436483645160f0975e4385567b7f294e59a2b78e306b5bff7be530092d933d05156d
7
- data.tar.gz: bd00bfced817a40dce7e195d36638c15255bd8f76d5429ac5c105bb00852dbba0320d3b72326990be6f9b74cf91add3356069fc3fcf4e35dbffe24ac7ab00edb
6
+ metadata.gz: bd1ca73a332a7f38548067c8ed47811d2d31193f25cc199feee681ae74b51f4ec27a9c84384d598af84e9ed7206b35a98fadc280b319c69fc124874dc169dda3
7
+ data.tar.gz: 987a42645c67d3e39be09154848e3248ad8ebed53c3384346c13fee85393a42f5f90615786a2f705988215f57a9e91e94edf2ed9034bdef31f62d830eef49dd3
@@ -0,0 +1,31 @@
1
+ # Auto-generated by Cimas: Do not edit it manually!
2
+ # See https://github.com/metanorma/cimas
3
+ # source: https://github.com/marketplace/actions/merge-pull-requests#usage
4
+ name: automerge
5
+ on:
6
+ pull_request:
7
+ types:
8
+ - labeled
9
+ - unlabeled
10
+ - synchronize
11
+ - opened
12
+ - edited
13
+ - ready_for_review
14
+ - reopened
15
+ - unlocked
16
+ pull_request_review:
17
+ types:
18
+ - submitted
19
+ check_suite:
20
+ types:
21
+ - completed
22
+ status: {}
23
+ jobs:
24
+ automerge:
25
+ runs-on: ubuntu-latest
26
+ steps:
27
+ - id: automerge
28
+ name: automerge
29
+ uses: "pascalgn/automerge-action@v0.15.3"
30
+ env:
31
+ GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
@@ -811,7 +811,7 @@ nav #toc {
811
811
  font-weight: 700;
812
812
  font-size: 1em;
813
813
  text-align: center; }
814
- .figure > img {
814
+ .figure > img, .figure > svg {
815
815
  margin-left: auto;
816
816
  margin-right: auto;
817
817
  display: block;
@@ -395,10 +395,18 @@
395
395
  </xsl:variable>
396
396
  <xsl:value-of select="java:toUpperCase(java:java.lang.String.new($tsb_full))"/>
397
397
  </fo:block>
398
- <fo:block-container height="20mm" display-align="center">
398
+ <fo:block-container height="20mm" display-align="center" width="90%">
399
399
  <fo:block font-weight="bold">
400
400
  <!-- complements -->
401
401
  <!-- To do: Example: COMPLEMENT TO ITU-T RECOMMENDATIONS F.69 (06/1994) AND F.68 (11/1988) -->
402
+ <fo:inline>COMPLEMENT TO ITU-T RECOMMENDATIONS </fo:inline>
403
+ <xsl:for-each select="/*/itu:bibdata/itu:relation[@type = 'complements']">
404
+ <xsl:value-of select="translate(itu:bibitem/itu:docidentifier, ' ', ' ')"/>
405
+ <xsl:choose>
406
+ <xsl:when test="count(following-sibling::itu:relation[@type = 'complements']) = 1"> AND </xsl:when>
407
+ <xsl:when test="following-sibling::itu:relation[@type = 'complements']">, </xsl:when>
408
+ </xsl:choose>
409
+ </xsl:for-each>
402
410
  </fo:block>
403
411
  </fo:block-container>
404
412
  <fo:block-container>
@@ -678,7 +686,7 @@
678
686
  <fo:table-cell>
679
687
  <fo:block> </fo:block>
680
688
  </fo:table-cell>
681
- <fo:table-cell font-size="16pt" number-columns-spanned="3" border-bottom="0.5mm solid black" padding-right="2mm" display-align="after">
689
+ <fo:table-cell font-size="16pt" number-columns-spanned="3" border-bottom="0.5mm solid black" display-align="after">
682
690
  <fo:block-container>
683
691
  <xsl:call-template name="setWritingMode"/>
684
692
  <fo:block padding-bottom="7mm">
@@ -722,8 +730,18 @@
722
730
  </xsl:if>
723
731
  </fo:block>
724
732
  </xsl:if>
733
+ <xsl:if test="$doctype = 'focus-group'">
734
+ <xsl:attribute name="padding-bottom">0mm</xsl:attribute>
735
+ <xsl:attribute name="border-bottom">1pt solid black</xsl:attribute>
736
+ </xsl:if>
725
737
  <fo:block text-transform="uppercase">
726
- <xsl:variable name="series_title" select="normalize-space(/itu:itu-standard/itu:bibdata/itu:series[@type = 'main']/itu:title[@type = 'full'])"/>
738
+ <xsl:variable name="series_title_full" select="normalize-space(/itu:itu-standard/itu:bibdata/itu:series[@type = 'main']/itu:title[@type = 'full'])"/>
739
+ <xsl:variable name="series_title">
740
+ <xsl:value-of select="$series_title_full"/>
741
+ <xsl:if test="$series_title_full = ''">
742
+ <xsl:value-of select="normalize-space(/itu:itu-standard/itu:bibdata/itu:series[@type = 'main']/itu:title[@type != 'full' and @type != 'abbrev'])"/>
743
+ </xsl:if>
744
+ </xsl:variable>
727
745
  <xsl:if test="$series_title != ''">
728
746
  <xsl:variable name="title">
729
747
  <xsl:if test="$doctype != 'resolution'">
@@ -1296,6 +1314,7 @@
1296
1314
  </fo:block>
1297
1315
  <xsl:apply-templates/>
1298
1316
  </xsl:template>
1317
+ <xsl:template match="itu:itu-standard/itu:preface/itu:abstract[@id = '_summary']/itu:title" priority="4"/>
1299
1318
 
1300
1319
  <xsl:template match="itu:preface/itu:clause" priority="3">
1301
1320
  <xsl:if test="$doctype != 'service-publication'">
@@ -3053,8 +3072,6 @@
3053
3072
  <xsl:attribute-set name="bibitem-non-normative-style">
3054
3073
 
3055
3074
  <xsl:attribute name="margin-top">6pt</xsl:attribute>
3056
- <xsl:attribute name="margin-left">14mm</xsl:attribute>
3057
- <xsl:attribute name="text-indent">-14mm</xsl:attribute>
3058
3075
 
3059
3076
  </xsl:attribute-set> <!-- bibitem-non-normative-style -->
3060
3077
 
@@ -5548,8 +5565,17 @@
5548
5565
  </fo:inline>
5549
5566
  </xsl:template> <!-- tt -->
5550
5567
 
5568
+ <xsl:variable name="regex_url_start">^(http://|https://|www\.)?(.*)</xsl:variable>
5551
5569
  <xsl:template match="*[local-name()='tt']/text()" priority="2">
5552
- <xsl:call-template name="add_spaces_to_sourcecode"/>
5570
+ <xsl:choose>
5571
+ <xsl:when test="java:replaceAll(java:java.lang.String.new(.), '$2', '') != ''">
5572
+ <!-- url -->
5573
+ <xsl:call-template name="add-zero-spaces-link-java"/>
5574
+ </xsl:when>
5575
+ <xsl:otherwise>
5576
+ <xsl:call-template name="add_spaces_to_sourcecode"/>
5577
+ </xsl:otherwise>
5578
+ </xsl:choose>
5553
5579
  </xsl:template>
5554
5580
 
5555
5581
  <xsl:template match="*[local-name()='underline']">
@@ -5905,8 +5931,11 @@
5905
5931
 
5906
5932
  <xsl:template name="add-zero-spaces-link-java">
5907
5933
  <xsl:param name="text" select="."/>
5934
+
5935
+ <xsl:value-of select="java:replaceAll(java:java.lang.String.new($text), $regex_url_start, '$1')"/> <!-- http://. https:// or www. -->
5936
+ <xsl:variable name="url_continue" select="java:replaceAll(java:java.lang.String.new($text), $regex_url_start, '$2')"/>
5908
5937
  <!-- add zero-width space (#x200B) after characters: dash, dot, colon, equal, underscore, em dash, thin space -->
5909
- <xsl:value-of select="java:replaceAll(java:java.lang.String.new($text),'(-|\.|:|=|_|—| |,)','$1​')"/>
5938
+ <xsl:value-of select="java:replaceAll(java:java.lang.String.new($url_continue),'(-|\.|:|=|_|—| |,|/)','$1​')"/>
5910
5939
  </xsl:template>
5911
5940
 
5912
5941
  <!-- add zero space after dash character (for table's entries) -->
@@ -9711,28 +9740,42 @@
9711
9740
  <xsl:attribute name="text-indent">0mm</xsl:attribute>
9712
9741
  </xsl:if>
9713
9742
 
9743
+ <xsl:variable name="docidentifier_metanorma" select="normalize-space(itu:docidentifier[@type = 'metanorma'])"/>
9744
+ <xsl:variable name="docidentifier_metanorma_ordinal" select="normalize-space(itu:docidentifier[@type = 'metanorma-ordinal'])"/>
9745
+
9714
9746
  <xsl:variable name="bibitem_label">
9715
- <xsl:value-of select="itu:docidentifier[@type = 'metanorma']"/>
9716
- <xsl:if test="not(itu:docidentifier[@type = 'metanorma'])">
9747
+ <xsl:value-of select="$docidentifier_metanorma"/>
9748
+ <xsl:if test="$docidentifier_metanorma = ''">
9717
9749
  <fo:inline padding-right="5mm">
9718
- <xsl:text>[</xsl:text>
9719
- <xsl:value-of select="itu:docidentifier[not(@type = 'metanorma-ordinal')]"/>
9720
- <xsl:text>] </xsl:text>
9750
+ <xsl:variable name="docidentifier" select="normalize-space(itu:docidentifier[not(@type = 'metanorma-ordinal')])"/>
9751
+ <xsl:choose>
9752
+ <xsl:when test="$docidentifier != ''">
9753
+ <xsl:text>[</xsl:text>
9754
+ <xsl:value-of select="$docidentifier"/>
9755
+ <xsl:text>] </xsl:text>
9756
+ </xsl:when>
9757
+ <xsl:otherwise>
9758
+ <xsl:value-of select="$docidentifier_metanorma_ordinal"/>
9759
+ </xsl:otherwise>
9760
+ </xsl:choose>
9721
9761
  </fo:inline>
9722
9762
  </xsl:if>
9723
9763
  </xsl:variable>
9724
9764
 
9725
9765
  <xsl:variable name="bibitem_body">
9726
- <xsl:text> </xsl:text>
9727
- <xsl:choose>
9728
- <xsl:when test="itu:docidentifier[@type = 'metanorma']">
9729
- <xsl:value-of select="itu:docidentifier[not(@type) or not(@type = 'metanorma' or @type = 'metanorma-ordinal')]"/>
9730
- </xsl:when>
9731
- <xsl:otherwise>
9732
- <xsl:value-of select="itu:docidentifier[not(@type = 'metanorma-ordinal')]"/>
9733
- </xsl:otherwise>
9734
- </xsl:choose>
9735
- <xsl:if test="itu:formattedref and not(itu:docidentifier[@type = 'metanorma'])">, </xsl:if>
9766
+ <xsl:variable name="docidentifier">
9767
+ <xsl:text> </xsl:text>
9768
+ <xsl:choose>
9769
+ <xsl:when test="$docidentifier_metanorma != ''">
9770
+ <xsl:value-of select="itu:docidentifier[not(@type) or not(@type = 'metanorma' or @type = 'metanorma-ordinal')]"/>
9771
+ </xsl:when>
9772
+ <xsl:otherwise>
9773
+ <xsl:value-of select="itu:docidentifier[not(@type = 'metanorma-ordinal')]"/>
9774
+ </xsl:otherwise>
9775
+ </xsl:choose>
9776
+ </xsl:variable>
9777
+ <xsl:value-of select="$docidentifier"/>
9778
+ <xsl:if test="normalize-space($docidentifier) != ''">, </xsl:if>
9736
9779
  <xsl:apply-templates select="itu:formattedref"/>
9737
9780
  </xsl:variable>
9738
9781
 
@@ -9749,9 +9792,27 @@
9749
9792
  </fo:table-body>
9750
9793
  </fo:table>
9751
9794
  </xsl:when> <!-- $doctype = 'implementers-guide' -->
9752
- <xsl:otherwise>
9795
+ <xsl:when test="$bibitem_label != $docidentifier_metanorma_ordinal">
9796
+ <xsl:attribute name="margin-left">14mm</xsl:attribute>
9797
+ <xsl:attribute name="text-indent">-14mm</xsl:attribute>
9753
9798
  <xsl:copy-of select="$bibitem_label"/>
9754
9799
  <xsl:copy-of select="$bibitem_body"/>
9800
+ </xsl:when>
9801
+ <xsl:otherwise>
9802
+ <fo:list-block provisional-distance-between-starts="14mm">
9803
+ <fo:list-item>
9804
+ <fo:list-item-label end-indent="label-end()">
9805
+ <fo:block>
9806
+ <xsl:copy-of select="$bibitem_label"/>
9807
+ </fo:block>
9808
+ </fo:list-item-label>
9809
+ <fo:list-item-body start-indent="body-start()">
9810
+ <fo:block>
9811
+ <xsl:copy-of select="$bibitem_body"/>
9812
+ </fo:block>
9813
+ </fo:list-item-body>
9814
+ </fo:list-item>
9815
+ </fo:list-block>
9755
9816
  </xsl:otherwise>
9756
9817
  </xsl:choose>
9757
9818
 
@@ -10339,7 +10400,7 @@
10339
10400
 
10340
10401
  <xsl:variable name="element_name_keep-together_within-line">keep-together_within-line</xsl:variable>
10341
10402
 
10342
- <xsl:template match="text()[not(ancestor::*[local-name() = 'bibdata'] or ancestor::*[local-name() = 'sourcecode'] or ancestor::*[local-name() = 'math'])]" name="keep_together_standard_number" mode="update_xml_enclose_keep-together_within-line">
10403
+ <xsl:template match="text()[not(ancestor::*[local-name() = 'bibdata'] or ancestor::*[local-name() = 'link'][not(contains(.,' '))] or ancestor::*[local-name() = 'sourcecode'] or ancestor::*[local-name() = 'math'] or starts-with(., 'http://') or starts-with(., 'https://') or starts-with(., 'www.') )]" name="keep_together_standard_number" mode="update_xml_enclose_keep-together_within-line">
10343
10404
 
10344
10405
  <!-- enclose standard's number into tag 'keep-together_within-line' -->
10345
10406
  <xsl:variable name="regex_standard_reference">([A-Z]{2,}(/[A-Z]{2,})* \d+(-\d+)*(:\d{4})?)</xsl:variable>
@@ -395,10 +395,18 @@
395
395
  </xsl:variable>
396
396
  <xsl:value-of select="java:toUpperCase(java:java.lang.String.new($tsb_full))"/>
397
397
  </fo:block>
398
- <fo:block-container height="20mm" display-align="center">
398
+ <fo:block-container height="20mm" display-align="center" width="90%">
399
399
  <fo:block font-weight="bold">
400
400
  <!-- complements -->
401
401
  <!-- To do: Example: COMPLEMENT TO ITU-T RECOMMENDATIONS F.69 (06/1994) AND F.68 (11/1988) -->
402
+ <fo:inline>COMPLEMENT TO ITU-T RECOMMENDATIONS </fo:inline>
403
+ <xsl:for-each select="/*/itu:bibdata/itu:relation[@type = 'complements']">
404
+ <xsl:value-of select="translate(itu:bibitem/itu:docidentifier, ' ', ' ')"/>
405
+ <xsl:choose>
406
+ <xsl:when test="count(following-sibling::itu:relation[@type = 'complements']) = 1"> AND </xsl:when>
407
+ <xsl:when test="following-sibling::itu:relation[@type = 'complements']">, </xsl:when>
408
+ </xsl:choose>
409
+ </xsl:for-each>
402
410
  </fo:block>
403
411
  </fo:block-container>
404
412
  <fo:block-container>
@@ -678,7 +686,7 @@
678
686
  <fo:table-cell>
679
687
  <fo:block> </fo:block>
680
688
  </fo:table-cell>
681
- <fo:table-cell font-size="16pt" number-columns-spanned="3" border-bottom="0.5mm solid black" padding-right="2mm" display-align="after">
689
+ <fo:table-cell font-size="16pt" number-columns-spanned="3" border-bottom="0.5mm solid black" display-align="after">
682
690
  <fo:block-container>
683
691
  <xsl:call-template name="setWritingMode"/>
684
692
  <fo:block padding-bottom="7mm">
@@ -722,8 +730,18 @@
722
730
  </xsl:if>
723
731
  </fo:block>
724
732
  </xsl:if>
733
+ <xsl:if test="$doctype = 'focus-group'">
734
+ <xsl:attribute name="padding-bottom">0mm</xsl:attribute>
735
+ <xsl:attribute name="border-bottom">1pt solid black</xsl:attribute>
736
+ </xsl:if>
725
737
  <fo:block text-transform="uppercase">
726
- <xsl:variable name="series_title" select="normalize-space(/itu:itu-standard/itu:bibdata/itu:series[@type = 'main']/itu:title[@type = 'full'])"/>
738
+ <xsl:variable name="series_title_full" select="normalize-space(/itu:itu-standard/itu:bibdata/itu:series[@type = 'main']/itu:title[@type = 'full'])"/>
739
+ <xsl:variable name="series_title">
740
+ <xsl:value-of select="$series_title_full"/>
741
+ <xsl:if test="$series_title_full = ''">
742
+ <xsl:value-of select="normalize-space(/itu:itu-standard/itu:bibdata/itu:series[@type = 'main']/itu:title[@type != 'full' and @type != 'abbrev'])"/>
743
+ </xsl:if>
744
+ </xsl:variable>
727
745
  <xsl:if test="$series_title != ''">
728
746
  <xsl:variable name="title">
729
747
  <xsl:if test="$doctype != 'resolution'">
@@ -1296,6 +1314,7 @@
1296
1314
  </fo:block>
1297
1315
  <xsl:apply-templates/>
1298
1316
  </xsl:template>
1317
+ <xsl:template match="itu:itu-standard/itu:preface/itu:abstract[@id = '_summary']/itu:title" priority="4"/>
1299
1318
 
1300
1319
  <xsl:template match="itu:preface/itu:clause" priority="3">
1301
1320
  <xsl:if test="$doctype != 'service-publication'">
@@ -3053,8 +3072,6 @@
3053
3072
  <xsl:attribute-set name="bibitem-non-normative-style">
3054
3073
 
3055
3074
  <xsl:attribute name="margin-top">6pt</xsl:attribute>
3056
- <xsl:attribute name="margin-left">14mm</xsl:attribute>
3057
- <xsl:attribute name="text-indent">-14mm</xsl:attribute>
3058
3075
 
3059
3076
  </xsl:attribute-set> <!-- bibitem-non-normative-style -->
3060
3077
 
@@ -5548,8 +5565,17 @@
5548
5565
  </fo:inline>
5549
5566
  </xsl:template> <!-- tt -->
5550
5567
 
5568
+ <xsl:variable name="regex_url_start">^(http://|https://|www\.)?(.*)</xsl:variable>
5551
5569
  <xsl:template match="*[local-name()='tt']/text()" priority="2">
5552
- <xsl:call-template name="add_spaces_to_sourcecode"/>
5570
+ <xsl:choose>
5571
+ <xsl:when test="java:replaceAll(java:java.lang.String.new(.), '$2', '') != ''">
5572
+ <!-- url -->
5573
+ <xsl:call-template name="add-zero-spaces-link-java"/>
5574
+ </xsl:when>
5575
+ <xsl:otherwise>
5576
+ <xsl:call-template name="add_spaces_to_sourcecode"/>
5577
+ </xsl:otherwise>
5578
+ </xsl:choose>
5553
5579
  </xsl:template>
5554
5580
 
5555
5581
  <xsl:template match="*[local-name()='underline']">
@@ -5905,8 +5931,11 @@
5905
5931
 
5906
5932
  <xsl:template name="add-zero-spaces-link-java">
5907
5933
  <xsl:param name="text" select="."/>
5934
+
5935
+ <xsl:value-of select="java:replaceAll(java:java.lang.String.new($text), $regex_url_start, '$1')"/> <!-- http://. https:// or www. -->
5936
+ <xsl:variable name="url_continue" select="java:replaceAll(java:java.lang.String.new($text), $regex_url_start, '$2')"/>
5908
5937
  <!-- add zero-width space (#x200B) after characters: dash, dot, colon, equal, underscore, em dash, thin space -->
5909
- <xsl:value-of select="java:replaceAll(java:java.lang.String.new($text),'(-|\.|:|=|_|—| |,)','$1​')"/>
5938
+ <xsl:value-of select="java:replaceAll(java:java.lang.String.new($url_continue),'(-|\.|:|=|_|—| |,|/)','$1​')"/>
5910
5939
  </xsl:template>
5911
5940
 
5912
5941
  <!-- add zero space after dash character (for table's entries) -->
@@ -9711,28 +9740,42 @@
9711
9740
  <xsl:attribute name="text-indent">0mm</xsl:attribute>
9712
9741
  </xsl:if>
9713
9742
 
9743
+ <xsl:variable name="docidentifier_metanorma" select="normalize-space(itu:docidentifier[@type = 'metanorma'])"/>
9744
+ <xsl:variable name="docidentifier_metanorma_ordinal" select="normalize-space(itu:docidentifier[@type = 'metanorma-ordinal'])"/>
9745
+
9714
9746
  <xsl:variable name="bibitem_label">
9715
- <xsl:value-of select="itu:docidentifier[@type = 'metanorma']"/>
9716
- <xsl:if test="not(itu:docidentifier[@type = 'metanorma'])">
9747
+ <xsl:value-of select="$docidentifier_metanorma"/>
9748
+ <xsl:if test="$docidentifier_metanorma = ''">
9717
9749
  <fo:inline padding-right="5mm">
9718
- <xsl:text>[</xsl:text>
9719
- <xsl:value-of select="itu:docidentifier[not(@type = 'metanorma-ordinal')]"/>
9720
- <xsl:text>] </xsl:text>
9750
+ <xsl:variable name="docidentifier" select="normalize-space(itu:docidentifier[not(@type = 'metanorma-ordinal')])"/>
9751
+ <xsl:choose>
9752
+ <xsl:when test="$docidentifier != ''">
9753
+ <xsl:text>[</xsl:text>
9754
+ <xsl:value-of select="$docidentifier"/>
9755
+ <xsl:text>] </xsl:text>
9756
+ </xsl:when>
9757
+ <xsl:otherwise>
9758
+ <xsl:value-of select="$docidentifier_metanorma_ordinal"/>
9759
+ </xsl:otherwise>
9760
+ </xsl:choose>
9721
9761
  </fo:inline>
9722
9762
  </xsl:if>
9723
9763
  </xsl:variable>
9724
9764
 
9725
9765
  <xsl:variable name="bibitem_body">
9726
- <xsl:text> </xsl:text>
9727
- <xsl:choose>
9728
- <xsl:when test="itu:docidentifier[@type = 'metanorma']">
9729
- <xsl:value-of select="itu:docidentifier[not(@type) or not(@type = 'metanorma' or @type = 'metanorma-ordinal')]"/>
9730
- </xsl:when>
9731
- <xsl:otherwise>
9732
- <xsl:value-of select="itu:docidentifier[not(@type = 'metanorma-ordinal')]"/>
9733
- </xsl:otherwise>
9734
- </xsl:choose>
9735
- <xsl:if test="itu:formattedref and not(itu:docidentifier[@type = 'metanorma'])">, </xsl:if>
9766
+ <xsl:variable name="docidentifier">
9767
+ <xsl:text> </xsl:text>
9768
+ <xsl:choose>
9769
+ <xsl:when test="$docidentifier_metanorma != ''">
9770
+ <xsl:value-of select="itu:docidentifier[not(@type) or not(@type = 'metanorma' or @type = 'metanorma-ordinal')]"/>
9771
+ </xsl:when>
9772
+ <xsl:otherwise>
9773
+ <xsl:value-of select="itu:docidentifier[not(@type = 'metanorma-ordinal')]"/>
9774
+ </xsl:otherwise>
9775
+ </xsl:choose>
9776
+ </xsl:variable>
9777
+ <xsl:value-of select="$docidentifier"/>
9778
+ <xsl:if test="normalize-space($docidentifier) != ''">, </xsl:if>
9736
9779
  <xsl:apply-templates select="itu:formattedref"/>
9737
9780
  </xsl:variable>
9738
9781
 
@@ -9749,9 +9792,27 @@
9749
9792
  </fo:table-body>
9750
9793
  </fo:table>
9751
9794
  </xsl:when> <!-- $doctype = 'implementers-guide' -->
9752
- <xsl:otherwise>
9795
+ <xsl:when test="$bibitem_label != $docidentifier_metanorma_ordinal">
9796
+ <xsl:attribute name="margin-left">14mm</xsl:attribute>
9797
+ <xsl:attribute name="text-indent">-14mm</xsl:attribute>
9753
9798
  <xsl:copy-of select="$bibitem_label"/>
9754
9799
  <xsl:copy-of select="$bibitem_body"/>
9800
+ </xsl:when>
9801
+ <xsl:otherwise>
9802
+ <fo:list-block provisional-distance-between-starts="14mm">
9803
+ <fo:list-item>
9804
+ <fo:list-item-label end-indent="label-end()">
9805
+ <fo:block>
9806
+ <xsl:copy-of select="$bibitem_label"/>
9807
+ </fo:block>
9808
+ </fo:list-item-label>
9809
+ <fo:list-item-body start-indent="body-start()">
9810
+ <fo:block>
9811
+ <xsl:copy-of select="$bibitem_body"/>
9812
+ </fo:block>
9813
+ </fo:list-item-body>
9814
+ </fo:list-item>
9815
+ </fo:list-block>
9755
9816
  </xsl:otherwise>
9756
9817
  </xsl:choose>
9757
9818
 
@@ -10339,7 +10400,7 @@
10339
10400
 
10340
10401
  <xsl:variable name="element_name_keep-together_within-line">keep-together_within-line</xsl:variable>
10341
10402
 
10342
- <xsl:template match="text()[not(ancestor::*[local-name() = 'bibdata'] or ancestor::*[local-name() = 'sourcecode'] or ancestor::*[local-name() = 'math'])]" name="keep_together_standard_number" mode="update_xml_enclose_keep-together_within-line">
10403
+ <xsl:template match="text()[not(ancestor::*[local-name() = 'bibdata'] or ancestor::*[local-name() = 'link'][not(contains(.,' '))] or ancestor::*[local-name() = 'sourcecode'] or ancestor::*[local-name() = 'math'] or starts-with(., 'http://') or starts-with(., 'https://') or starts-with(., 'www.') )]" name="keep_together_standard_number" mode="update_xml_enclose_keep-together_within-line">
10343
10404
 
10344
10405
  <!-- enclose standard's number into tag 'keep-together_within-line' -->
10345
10406
  <xsl:variable name="regex_standard_reference">([A-Z]{2,}(/[A-Z]{2,})* \d+(-\d+)*(:\d{4})?)</xsl:variable>
@@ -395,10 +395,18 @@
395
395
  </xsl:variable>
396
396
  <xsl:value-of select="java:toUpperCase(java:java.lang.String.new($tsb_full))"/>
397
397
  </fo:block>
398
- <fo:block-container height="20mm" display-align="center">
398
+ <fo:block-container height="20mm" display-align="center" width="90%">
399
399
  <fo:block font-weight="bold">
400
400
  <!-- complements -->
401
401
  <!-- To do: Example: COMPLEMENT TO ITU-T RECOMMENDATIONS F.69 (06/1994) AND F.68 (11/1988) -->
402
+ <fo:inline>COMPLEMENT TO ITU-T RECOMMENDATIONS </fo:inline>
403
+ <xsl:for-each select="/*/itu:bibdata/itu:relation[@type = 'complements']">
404
+ <xsl:value-of select="translate(itu:bibitem/itu:docidentifier, ' ', ' ')"/>
405
+ <xsl:choose>
406
+ <xsl:when test="count(following-sibling::itu:relation[@type = 'complements']) = 1"> AND </xsl:when>
407
+ <xsl:when test="following-sibling::itu:relation[@type = 'complements']">, </xsl:when>
408
+ </xsl:choose>
409
+ </xsl:for-each>
402
410
  </fo:block>
403
411
  </fo:block-container>
404
412
  <fo:block-container>
@@ -678,7 +686,7 @@
678
686
  <fo:table-cell>
679
687
  <fo:block> </fo:block>
680
688
  </fo:table-cell>
681
- <fo:table-cell font-size="16pt" number-columns-spanned="3" border-bottom="0.5mm solid black" padding-right="2mm" display-align="after">
689
+ <fo:table-cell font-size="16pt" number-columns-spanned="3" border-bottom="0.5mm solid black" display-align="after">
682
690
  <fo:block-container>
683
691
  <xsl:call-template name="setWritingMode"/>
684
692
  <fo:block padding-bottom="7mm">
@@ -722,8 +730,18 @@
722
730
  </xsl:if>
723
731
  </fo:block>
724
732
  </xsl:if>
733
+ <xsl:if test="$doctype = 'focus-group'">
734
+ <xsl:attribute name="padding-bottom">0mm</xsl:attribute>
735
+ <xsl:attribute name="border-bottom">1pt solid black</xsl:attribute>
736
+ </xsl:if>
725
737
  <fo:block text-transform="uppercase">
726
- <xsl:variable name="series_title" select="normalize-space(/itu:itu-standard/itu:bibdata/itu:series[@type = 'main']/itu:title[@type = 'full'])"/>
738
+ <xsl:variable name="series_title_full" select="normalize-space(/itu:itu-standard/itu:bibdata/itu:series[@type = 'main']/itu:title[@type = 'full'])"/>
739
+ <xsl:variable name="series_title">
740
+ <xsl:value-of select="$series_title_full"/>
741
+ <xsl:if test="$series_title_full = ''">
742
+ <xsl:value-of select="normalize-space(/itu:itu-standard/itu:bibdata/itu:series[@type = 'main']/itu:title[@type != 'full' and @type != 'abbrev'])"/>
743
+ </xsl:if>
744
+ </xsl:variable>
727
745
  <xsl:if test="$series_title != ''">
728
746
  <xsl:variable name="title">
729
747
  <xsl:if test="$doctype != 'resolution'">
@@ -1296,6 +1314,7 @@
1296
1314
  </fo:block>
1297
1315
  <xsl:apply-templates/>
1298
1316
  </xsl:template>
1317
+ <xsl:template match="itu:itu-standard/itu:preface/itu:abstract[@id = '_summary']/itu:title" priority="4"/>
1299
1318
 
1300
1319
  <xsl:template match="itu:preface/itu:clause" priority="3">
1301
1320
  <xsl:if test="$doctype != 'service-publication'">
@@ -3053,8 +3072,6 @@
3053
3072
  <xsl:attribute-set name="bibitem-non-normative-style">
3054
3073
 
3055
3074
  <xsl:attribute name="margin-top">6pt</xsl:attribute>
3056
- <xsl:attribute name="margin-left">14mm</xsl:attribute>
3057
- <xsl:attribute name="text-indent">-14mm</xsl:attribute>
3058
3075
 
3059
3076
  </xsl:attribute-set> <!-- bibitem-non-normative-style -->
3060
3077
 
@@ -5548,8 +5565,17 @@
5548
5565
  </fo:inline>
5549
5566
  </xsl:template> <!-- tt -->
5550
5567
 
5568
+ <xsl:variable name="regex_url_start">^(http://|https://|www\.)?(.*)</xsl:variable>
5551
5569
  <xsl:template match="*[local-name()='tt']/text()" priority="2">
5552
- <xsl:call-template name="add_spaces_to_sourcecode"/>
5570
+ <xsl:choose>
5571
+ <xsl:when test="java:replaceAll(java:java.lang.String.new(.), '$2', '') != ''">
5572
+ <!-- url -->
5573
+ <xsl:call-template name="add-zero-spaces-link-java"/>
5574
+ </xsl:when>
5575
+ <xsl:otherwise>
5576
+ <xsl:call-template name="add_spaces_to_sourcecode"/>
5577
+ </xsl:otherwise>
5578
+ </xsl:choose>
5553
5579
  </xsl:template>
5554
5580
 
5555
5581
  <xsl:template match="*[local-name()='underline']">
@@ -5905,8 +5931,11 @@
5905
5931
 
5906
5932
  <xsl:template name="add-zero-spaces-link-java">
5907
5933
  <xsl:param name="text" select="."/>
5934
+
5935
+ <xsl:value-of select="java:replaceAll(java:java.lang.String.new($text), $regex_url_start, '$1')"/> <!-- http://. https:// or www. -->
5936
+ <xsl:variable name="url_continue" select="java:replaceAll(java:java.lang.String.new($text), $regex_url_start, '$2')"/>
5908
5937
  <!-- add zero-width space (#x200B) after characters: dash, dot, colon, equal, underscore, em dash, thin space -->
5909
- <xsl:value-of select="java:replaceAll(java:java.lang.String.new($text),'(-|\.|:|=|_|—| |,)','$1​')"/>
5938
+ <xsl:value-of select="java:replaceAll(java:java.lang.String.new($url_continue),'(-|\.|:|=|_|—| |,|/)','$1​')"/>
5910
5939
  </xsl:template>
5911
5940
 
5912
5941
  <!-- add zero space after dash character (for table's entries) -->
@@ -9711,28 +9740,42 @@
9711
9740
  <xsl:attribute name="text-indent">0mm</xsl:attribute>
9712
9741
  </xsl:if>
9713
9742
 
9743
+ <xsl:variable name="docidentifier_metanorma" select="normalize-space(itu:docidentifier[@type = 'metanorma'])"/>
9744
+ <xsl:variable name="docidentifier_metanorma_ordinal" select="normalize-space(itu:docidentifier[@type = 'metanorma-ordinal'])"/>
9745
+
9714
9746
  <xsl:variable name="bibitem_label">
9715
- <xsl:value-of select="itu:docidentifier[@type = 'metanorma']"/>
9716
- <xsl:if test="not(itu:docidentifier[@type = 'metanorma'])">
9747
+ <xsl:value-of select="$docidentifier_metanorma"/>
9748
+ <xsl:if test="$docidentifier_metanorma = ''">
9717
9749
  <fo:inline padding-right="5mm">
9718
- <xsl:text>[</xsl:text>
9719
- <xsl:value-of select="itu:docidentifier[not(@type = 'metanorma-ordinal')]"/>
9720
- <xsl:text>] </xsl:text>
9750
+ <xsl:variable name="docidentifier" select="normalize-space(itu:docidentifier[not(@type = 'metanorma-ordinal')])"/>
9751
+ <xsl:choose>
9752
+ <xsl:when test="$docidentifier != ''">
9753
+ <xsl:text>[</xsl:text>
9754
+ <xsl:value-of select="$docidentifier"/>
9755
+ <xsl:text>] </xsl:text>
9756
+ </xsl:when>
9757
+ <xsl:otherwise>
9758
+ <xsl:value-of select="$docidentifier_metanorma_ordinal"/>
9759
+ </xsl:otherwise>
9760
+ </xsl:choose>
9721
9761
  </fo:inline>
9722
9762
  </xsl:if>
9723
9763
  </xsl:variable>
9724
9764
 
9725
9765
  <xsl:variable name="bibitem_body">
9726
- <xsl:text> </xsl:text>
9727
- <xsl:choose>
9728
- <xsl:when test="itu:docidentifier[@type = 'metanorma']">
9729
- <xsl:value-of select="itu:docidentifier[not(@type) or not(@type = 'metanorma' or @type = 'metanorma-ordinal')]"/>
9730
- </xsl:when>
9731
- <xsl:otherwise>
9732
- <xsl:value-of select="itu:docidentifier[not(@type = 'metanorma-ordinal')]"/>
9733
- </xsl:otherwise>
9734
- </xsl:choose>
9735
- <xsl:if test="itu:formattedref and not(itu:docidentifier[@type = 'metanorma'])">, </xsl:if>
9766
+ <xsl:variable name="docidentifier">
9767
+ <xsl:text> </xsl:text>
9768
+ <xsl:choose>
9769
+ <xsl:when test="$docidentifier_metanorma != ''">
9770
+ <xsl:value-of select="itu:docidentifier[not(@type) or not(@type = 'metanorma' or @type = 'metanorma-ordinal')]"/>
9771
+ </xsl:when>
9772
+ <xsl:otherwise>
9773
+ <xsl:value-of select="itu:docidentifier[not(@type = 'metanorma-ordinal')]"/>
9774
+ </xsl:otherwise>
9775
+ </xsl:choose>
9776
+ </xsl:variable>
9777
+ <xsl:value-of select="$docidentifier"/>
9778
+ <xsl:if test="normalize-space($docidentifier) != ''">, </xsl:if>
9736
9779
  <xsl:apply-templates select="itu:formattedref"/>
9737
9780
  </xsl:variable>
9738
9781
 
@@ -9749,9 +9792,27 @@
9749
9792
  </fo:table-body>
9750
9793
  </fo:table>
9751
9794
  </xsl:when> <!-- $doctype = 'implementers-guide' -->
9752
- <xsl:otherwise>
9795
+ <xsl:when test="$bibitem_label != $docidentifier_metanorma_ordinal">
9796
+ <xsl:attribute name="margin-left">14mm</xsl:attribute>
9797
+ <xsl:attribute name="text-indent">-14mm</xsl:attribute>
9753
9798
  <xsl:copy-of select="$bibitem_label"/>
9754
9799
  <xsl:copy-of select="$bibitem_body"/>
9800
+ </xsl:when>
9801
+ <xsl:otherwise>
9802
+ <fo:list-block provisional-distance-between-starts="14mm">
9803
+ <fo:list-item>
9804
+ <fo:list-item-label end-indent="label-end()">
9805
+ <fo:block>
9806
+ <xsl:copy-of select="$bibitem_label"/>
9807
+ </fo:block>
9808
+ </fo:list-item-label>
9809
+ <fo:list-item-body start-indent="body-start()">
9810
+ <fo:block>
9811
+ <xsl:copy-of select="$bibitem_body"/>
9812
+ </fo:block>
9813
+ </fo:list-item-body>
9814
+ </fo:list-item>
9815
+ </fo:list-block>
9755
9816
  </xsl:otherwise>
9756
9817
  </xsl:choose>
9757
9818
 
@@ -10339,7 +10400,7 @@
10339
10400
 
10340
10401
  <xsl:variable name="element_name_keep-together_within-line">keep-together_within-line</xsl:variable>
10341
10402
 
10342
- <xsl:template match="text()[not(ancestor::*[local-name() = 'bibdata'] or ancestor::*[local-name() = 'sourcecode'] or ancestor::*[local-name() = 'math'])]" name="keep_together_standard_number" mode="update_xml_enclose_keep-together_within-line">
10403
+ <xsl:template match="text()[not(ancestor::*[local-name() = 'bibdata'] or ancestor::*[local-name() = 'link'][not(contains(.,' '))] or ancestor::*[local-name() = 'sourcecode'] or ancestor::*[local-name() = 'math'] or starts-with(., 'http://') or starts-with(., 'https://') or starts-with(., 'www.') )]" name="keep_together_standard_number" mode="update_xml_enclose_keep-together_within-line">
10343
10404
 
10344
10405
  <!-- enclose standard's number into tag 'keep-together_within-line' -->
10345
10406
  <xsl:variable name="regex_standard_reference">([A-Z]{2,}(/[A-Z]{2,})* \d+(-\d+)*(:\d{4})?)</xsl:variable>