metanorma-csa 1.4.8 → 1.4.9

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: 49ee0bf63630b9acfea0fd2a9e3b91e1a2e50f215516cd8fc2ff1df5aea39bc9
4
- data.tar.gz: 4adbad5301f92a84b2841232d7c47c2210b0a8232b22facf842d2156bc3b3ded
3
+ metadata.gz: aae7195b2c04c1c2ecdde71942043c8ef86eb2e71e8595294bccd10b98d819e5
4
+ data.tar.gz: ec0d397cf000ef052dfb6b18aecbba57f2a1c7cedf3e3a1b7ef4808cdaabedc3
5
5
  SHA512:
6
- metadata.gz: 4fa8862f64df460d861796f1e3ee8221cf3dfabfc7637880a7f8b07ae2e0a2aacbe97773b0c78f0d096e7acffd3202128b6654bc4f4d054038710a3708ee2129
7
- data.tar.gz: db9a193ba45327ed58cd1c764b8d48871b3a01e9512457c0ce80741844d0776d3babae7c1fc5ebe9337030110d1fff7e13bd1ec77e022fa865d572e548523250
6
+ metadata.gz: ef705e1eb5035ff85022976df756c835f02327ae3f8963ec050f14046d3875f2fa1e2352ccfdba2b6aaf8e3af996320f4102aca5939d9c7a425f053e252dab9d
7
+ data.tar.gz: e57f15b56c2b7ed627fd82474aea51b1e6aae480a84aa29a97f829cf84f481a3e2fea750f47c4e9bf8779261e8834cbcdf7c102d6a3295566d113abd993e4e0f
@@ -26,16 +26,6 @@ jobs:
26
26
  run: |
27
27
  sudo gem install bundler --force
28
28
  bundle install --jobs 4 --retry 3
29
- - name: Use Node
30
- uses: actions/setup-node@v1
31
- with:
32
- node-version: '8'
33
- - name: Install Puppeteer
34
- run: |
35
- npm install -g puppeteer
36
- - name: Install PlantUML
37
- run: |
38
- brew install plantuml
39
29
  - name: Run specs
40
30
  run: |
41
31
  bundle exec rake
@@ -26,16 +26,18 @@ jobs:
26
26
  run: |
27
27
  gem install bundler
28
28
  bundle install --jobs 4 --retry 3
29
- - name: Use Node
30
- uses: actions/setup-node@v1
31
- with:
32
- node-version: '8'
33
- - name: Install Puppeteer
34
- run: |
35
- npm install -g puppeteer
36
- - name: Install PlantUML
37
- run: |
38
- sudo bash -c "curl -L https://github.com/riboseinc/plantuml-install/raw/master/ubuntu.sh | bash"
39
29
  - name: Run specs
40
30
  run: |
41
31
  bundle exec rake
32
+ - name: Trigger dependent repositories
33
+ if: github.ref == 'refs/heads/master' && matrix.ruby == '2.6'
34
+ env:
35
+ GH_USERNAME: ${{ secrets.PAT_USERNAME }}
36
+ GH_ACCESS_TOKEN: ${{ secrets.PAT_TOKEN }}
37
+ run: |
38
+ curl -LO --retry 3 https://raw.githubusercontent.com/metanorma/metanorma-build-scripts/master/trigger-gh-actions.sh
39
+ [[ -f ".github/workflows/dependent_repos.env" ]] && source .github/workflows/dependent_repos.env
40
+ for repo in $DEPENDENT_REPOS
41
+ do
42
+ sh trigger-gh-actions.sh $ORGANISATION $repo $GH_USERNAME $GH_ACCESS_TOKEN $GITHUB_REPOSITORY "{ \"ref\": \"${GITHUB_REF}\" }"
43
+ done
@@ -27,18 +27,7 @@ jobs:
27
27
  run: |
28
28
  gem install bundler
29
29
  bundle config --local path vendor/bundle
30
- bundle update
31
30
  bundle install --jobs 4 --retry 3
32
- - name: Use Node
33
- uses: actions/setup-node@v1
34
- with:
35
- node-version: '8'
36
- - name: Install Puppeteer
37
- run: |
38
- npm install -g puppeteer
39
- - name: Install PlantUML
40
- run: |
41
- cinst -y plantuml
42
31
  - name: Run specs
43
32
  run: |
44
33
  bundle exec rake
@@ -49,11 +49,17 @@
49
49
  </define>
50
50
  <define name="stage">
51
51
  <element name="stage">
52
+ <optional>
53
+ <attribute name="abbreviation"/>
54
+ </optional>
52
55
  <text/>
53
56
  </element>
54
57
  </define>
55
58
  <define name="substage">
56
59
  <element name="substage">
60
+ <optional>
61
+ <attribute name="abbreviation"/>
62
+ </optional>
57
63
  <text/>
58
64
  </element>
59
65
  </define>
@@ -452,9 +458,14 @@
452
458
  <attribute name="bibitemid">
453
459
  <data type="IDREF"/>
454
460
  </attribute>
455
- <zeroOrMore>
456
- <ref name="locality"/>
457
- </zeroOrMore>
461
+ <choice>
462
+ <zeroOrMore>
463
+ <ref name="locality"/>
464
+ </zeroOrMore>
465
+ <zeroOrMore>
466
+ <ref name="localityStack"/>
467
+ </zeroOrMore>
468
+ </choice>
458
469
  <optional>
459
470
  <ref name="date"/>
460
471
  </optional>
@@ -469,6 +480,25 @@
469
480
  <ref name="BibItemLocality"/>
470
481
  </element>
471
482
  </define>
483
+ <define name="localityStack">
484
+ <element name="localityStack">
485
+ <zeroOrMore>
486
+ <ref name="locality"/>
487
+ </zeroOrMore>
488
+ </element>
489
+ </define>
490
+ <define name="sourceLocality">
491
+ <element name="sourceLocality">
492
+ <ref name="BibItemLocality"/>
493
+ </element>
494
+ </define>
495
+ <define name="sourceLocalityStack">
496
+ <element name="sourceLocalityStack">
497
+ <zeroOrMore>
498
+ <ref name="sourceLocality"/>
499
+ </zeroOrMore>
500
+ </element>
501
+ </define>
472
502
  <define name="BibItemLocality">
473
503
  <attribute name="type">
474
504
  <ref name="LocalityType"/>
@@ -737,6 +767,8 @@
737
767
  <value>unchanged</value>
738
768
  <value>circulated</value>
739
769
  <value>adapted</value>
770
+ <value>vote-started</value>
771
+ <value>vote-ended</value>
740
772
  </choice>
741
773
  </define>
742
774
  <define name="bdate">
@@ -989,38 +1021,63 @@
989
1021
  </define>
990
1022
  <define name="DocRelationType">
991
1023
  <choice>
992
- <value>obsoletes</value>
993
- <value>obsoletedBy</value>
994
- <value>supersedes</value>
995
- <value>supersededBy</value>
996
- <value>updates</value>
997
- <value>updatedBy</value>
998
- <value>complements</value>
999
- <value>derivedFrom</value>
1000
- <value>translatedFrom</value>
1001
- <value>hasTranslation</value>
1002
- <value>adoptedFrom</value>
1003
- <value>equivalent</value>
1004
- <value>identical</value>
1005
- <value>nonequivalent</value>
1006
- <value>includedIn</value>
1007
1024
  <value>includes</value>
1008
- <value>instance</value>
1009
- <value>instanceOf</value>
1010
- <value>partOf</value>
1025
+ <value>includedIn</value>
1011
1026
  <value>hasPart</value>
1012
- <value>hasDraft</value>
1013
- <value>draftOf</value>
1027
+ <value>partOf</value>
1014
1028
  <value>merges</value>
1029
+ <value>mergedInto</value>
1015
1030
  <value>splits</value>
1016
- <value>amends</value>
1017
- <value>amendedBy</value>
1018
- <value>corrects</value>
1019
- <value>correctedBy</value>
1020
- <value>revises</value>
1021
- <value>revisedBy</value>
1031
+ <value>splitInto</value>
1032
+ <value>instance</value>
1033
+ <value>hasInstance</value>
1034
+ <value>exemplarOf</value>
1035
+ <value>hasExemplar</value>
1036
+ <value>manifestationOf</value>
1037
+ <value>hasManifestation</value>
1038
+ <value>reproductionOf</value>
1039
+ <value>hasReproduction</value>
1040
+ <value>reprintOf</value>
1041
+ <value>hasReprint</value>
1042
+ <value>expressionOf</value>
1043
+ <value>hasExpression</value>
1044
+ <value>translatedFrom</value>
1045
+ <value>hasTranslation</value>
1046
+ <value>arrangementOf</value>
1047
+ <value>hasArrangement</value>
1048
+ <value>abridgementOf</value>
1049
+ <value>hasAbridgement</value>
1050
+ <value>annotationOf</value>
1051
+ <value>hasAnnotation</value>
1052
+ <value>draftOf</value>
1053
+ <value>hasDraft</value>
1054
+ <value>editionOf</value>
1055
+ <value>hasEdition</value>
1056
+ <value>updates</value>
1057
+ <value>updatedBy</value>
1058
+ <value>derivedFrom</value>
1059
+ <value>derives</value>
1022
1060
  <value>describes</value>
1023
1061
  <value>describedBy</value>
1062
+ <value>catalogues</value>
1063
+ <value>cataloguedBy</value>
1064
+ <value>hasSuccessor</value>
1065
+ <value>successorOf</value>
1066
+ <value>adaptedFrom</value>
1067
+ <value>hasAdaptation</value>
1068
+ <value>adoptedFrom</value>
1069
+ <value>adoptedAs</value>
1070
+ <value>reviewOf</value>
1071
+ <value>hasReview</value>
1072
+ <value>commentaryOf</value>
1073
+ <value>hasCommentary</value>
1074
+ <value>related</value>
1075
+ <value>complements</value>
1076
+ <value>complementOf</value>
1077
+ <value>obsoletes</value>
1078
+ <value>obsoletedBy</value>
1079
+ <value>cited</value>
1080
+ <value>isCitedIn</value>
1024
1081
  </choice>
1025
1082
  </define>
1026
1083
  <define name="docrelation">
@@ -1028,12 +1085,30 @@
1028
1085
  <attribute name="type">
1029
1086
  <ref name="DocRelationType"/>
1030
1087
  </attribute>
1088
+ <optional>
1089
+ <element name="description">
1090
+ <ref name="FormattedString"/>
1091
+ </element>
1092
+ </optional>
1031
1093
  <element name="bibitem">
1032
1094
  <ref name="BibliographicItem"/>
1033
1095
  </element>
1034
- <zeroOrMore>
1035
- <ref name="locality"/>
1036
- </zeroOrMore>
1096
+ <choice>
1097
+ <zeroOrMore>
1098
+ <ref name="locality"/>
1099
+ </zeroOrMore>
1100
+ <zeroOrMore>
1101
+ <ref name="localityStack"/>
1102
+ </zeroOrMore>
1103
+ </choice>
1104
+ <choice>
1105
+ <zeroOrMore>
1106
+ <ref name="sourceLocality"/>
1107
+ </zeroOrMore>
1108
+ <zeroOrMore>
1109
+ <ref name="sourceLocalityStack"/>
1110
+ </zeroOrMore>
1111
+ </choice>
1037
1112
  </element>
1038
1113
  </define>
1039
1114
  <define name="version">
@@ -303,8 +303,23 @@
303
303
  <ref name="paragraph"/>
304
304
  </element>
305
305
  </define>
306
+ <define name="TextElement" combine="choice">
307
+ <ref name="concept"/>
308
+ </define>
306
309
  </include>
307
310
  <!-- end overrides -->
311
+ <define name="concept">
312
+ <element name="concept">
313
+ <optional>
314
+ <attribute name="term"/>
315
+ </optional>
316
+ <choice>
317
+ <ref name="eref"/>
318
+ <ref name="xref"/>
319
+ <ref name="termref"/>
320
+ </choice>
321
+ </element>
322
+ </define>
308
323
  <define name="BasicBlock" combine="choice">
309
324
  <choice>
310
325
  <ref name="requirement"/>
@@ -911,7 +926,10 @@
911
926
  </define>
912
927
  <define name="origin">
913
928
  <element name="origin">
914
- <ref name="erefType"/>
929
+ <choice>
930
+ <ref name="erefType"/>
931
+ <ref name="termref"/>
932
+ </choice>
915
933
  </element>
916
934
  </define>
917
935
  <define name="modification">
@@ -919,6 +937,15 @@
919
937
  <ref name="paragraph"/>
920
938
  </element>
921
939
  </define>
940
+ <define name="termref">
941
+ <element name="termref">
942
+ <attribute name="base"/>
943
+ <attribute name="target"/>
944
+ <optional>
945
+ <text/>
946
+ </optional>
947
+ </element>
948
+ </define>
922
949
  <define name="structuredidentifier">
923
950
  <element name="structuredidentifier">
924
951
  <optional>
@@ -0,0 +1,4013 @@
1
+ <?xml version="1.0" encoding="UTF-8"?><xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:csa="https://www.metanorma.org/ns/csa" xmlns:mathml="http://www.w3.org/1998/Math/MathML" xmlns:xalan="http://xml.apache.org/xalan" xmlns:fox="http://xmlgraphics.apache.org/fop/extensions" version="1.0">
2
+
3
+ <xsl:output version="1.0" method="xml" encoding="UTF-8" indent="yes"/>
4
+
5
+ <xsl:variable name="pageWidth" select="'215.9mm'"/>
6
+ <xsl:variable name="pageHeight" select="'279.4mm'"/>
7
+
8
+
9
+
10
+ <xsl:variable name="copyright">
11
+ <xsl:text>© Copyright </xsl:text>
12
+ <xsl:value-of select="/csa:csa-standard/csa:bibdata/csa:copyright/csa:from"/>
13
+ <xsl:text>, Cloud Security Alliance. All rights reserved.</xsl:text>
14
+ </xsl:variable>
15
+
16
+ <xsl:variable name="color-header-cover">rgb(55, 243, 244)</xsl:variable>
17
+ <xsl:variable name="color-header-document">rgb(79, 201, 204)</xsl:variable>
18
+ <xsl:variable name="color-link">rgb(33, 94, 159)</xsl:variable>
19
+
20
+ <xsl:variable name="copyright_short">
21
+ <xsl:text>© </xsl:text>
22
+ <xsl:value-of select="/csa:csa-standard/csa:bibdata/csa:copyright/csa:from"/>
23
+ <xsl:text> </xsl:text>
24
+ <xsl:value-of select="/csa:csa-standard/csa:bibdata/csa:contributor/csa:organization/csa:name"/>
25
+ </xsl:variable>
26
+
27
+ <xsl:variable name="doctitle" select="/csa:csa-standard/csa:bibdata/csa:title[@language = 'en']"/>
28
+
29
+ <xsl:variable name="doctype">
30
+ <xsl:call-template name="capitalizeWords">
31
+ <xsl:with-param name="str" select="/csa:csa-standard/csa:bibdata/csa:ext/csa:doctype"/>
32
+ </xsl:call-template>
33
+ </xsl:variable>
34
+
35
+ <xsl:variable name="header">
36
+ <xsl:text>Open Geospatial Consortium </xsl:text>
37
+ <xsl:value-of select="/csa:csa-standard/csa:bibdata/csa:docidentifier[@type = 'csa-internal']"/>
38
+ <xsl:text>:</xsl:text>
39
+ <xsl:value-of select="/csa:csa-standard/csa:bibdata/csa:copyright/csa:from"/>
40
+ </xsl:variable>
41
+
42
+ <xsl:variable name="contents">
43
+ <contents>
44
+
45
+ <xsl:apply-templates select="/csa:csa-standard/csa:preface/csa:introduction" mode="contents"/>
46
+
47
+ <xsl:apply-templates select="/csa:csa-standard/csa:sections/csa:clause[@id='_scope']" mode="contents"/>
48
+
49
+ <!-- Normative references -->
50
+ <xsl:apply-templates select="/csa:csa-standard/csa:bibliography/csa:references[@id = '_normative_references' or @id = '_references']" mode="contents"/>
51
+
52
+ <xsl:apply-templates select="/csa:csa-standard/csa:sections/csa:terms" mode="contents"/> <!-- Terms and definitions -->
53
+
54
+ <xsl:apply-templates select="/csa:csa-standard/csa:sections/*[local-name() != 'terms' and not(@id='_scope') and not(@id='conformance') and not(@id='_conformance')]" mode="contents"/>
55
+
56
+ <xsl:apply-templates select="/csa:csa-standard/csa:annex" mode="contents"/>
57
+ <xsl:apply-templates select="/csa:csa-standard/csa:bibliography/csa:references[@id != '_normative_references' and @id != '_references']" mode="contents"/>
58
+
59
+ </contents>
60
+ </xsl:variable>
61
+
62
+ <xsl:variable name="lang">
63
+ <xsl:call-template name="getLang"/>
64
+ </xsl:variable>
65
+
66
+ <xsl:template match="/">
67
+ <xsl:message>INFO: Document namespace: '<xsl:value-of select="namespace-uri(/*)"/>'</xsl:message>
68
+ <fo:root font-family="AzoSans, STIX2Math" font-size="10pt" xml:lang="{$lang}">
69
+ <fo:layout-master-set>
70
+ <!-- Cover page -->
71
+ <fo:simple-page-master master-name="cover-page" page-width="{$pageWidth}" page-height="{$pageHeight}">
72
+ <fo:region-body margin-top="21mm" margin-bottom="21mm" margin-left="25mm" margin-right="25mm"/>
73
+ <fo:region-before region-name="cover-page-header" extent="21mm" precedence="true"/>
74
+ <fo:region-after region-name="footer" extent="21mm"/>
75
+ </fo:simple-page-master>
76
+
77
+ <fo:simple-page-master master-name="document" page-width="{$pageWidth}" page-height="{$pageHeight}">
78
+ <fo:region-body margin-top="25mm" margin-bottom="21mm" margin-left="25mm" margin-right="25mm"/>
79
+ <fo:region-before region-name="header" extent="25mm" precedence="true"/>
80
+ <fo:region-after region-name="footer" extent="21mm"/>
81
+ <fo:region-start region-name="left-region" extent="25mm"/>
82
+ <fo:region-end region-name="right-region" extent="25mm"/>
83
+ </fo:simple-page-master>
84
+
85
+ </fo:layout-master-set>
86
+
87
+ <fo:declarations>
88
+ <pdf:catalog xmlns:pdf="http://xmlgraphics.apache.org/fop/extensions/pdf">
89
+ <pdf:dictionary type="normal" key="ViewerPreferences">
90
+ <pdf:boolean key="DisplayDocTitle">true</pdf:boolean>
91
+ </pdf:dictionary>
92
+ </pdf:catalog>
93
+ <x:xmpmeta xmlns:x="adobe:ns:meta/">
94
+ <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
95
+ <rdf:Description xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:pdf="http://ns.adobe.com/pdf/1.3/" rdf:about="">
96
+ <!-- Dublin Core properties go here -->
97
+ <dc:title>
98
+ <xsl:choose>
99
+ <xsl:when test="$doctitle != ''">
100
+ <xsl:value-of select="$doctitle"/>
101
+ </xsl:when>
102
+ <xsl:otherwise>
103
+ <xsl:text> </xsl:text>
104
+ </xsl:otherwise>
105
+ </xsl:choose>
106
+ </dc:title>
107
+ <dc:creator/>
108
+ <dc:description>
109
+ <xsl:variable name="abstract">
110
+ <xsl:copy-of select="/csa:csa-standard/csa:bibdata/csa:abstract//text()"/>
111
+ </xsl:variable>
112
+ <xsl:value-of select="normalize-space($abstract)"/>
113
+ </dc:description>
114
+ <pdf:Keywords>
115
+ <xsl:for-each select="/csa:csa-standard/csa:bibdata//csa:keyword">
116
+ <xsl:sort data-type="text" order="ascending"/>
117
+ <xsl:apply-templates/>
118
+ <xsl:choose>
119
+ <xsl:when test="position() != last()">, </xsl:when>
120
+ <xsl:otherwise>.</xsl:otherwise>
121
+ </xsl:choose>
122
+ </xsl:for-each>
123
+ </pdf:Keywords>
124
+ </rdf:Description>
125
+ <rdf:Description xmlns:xmp="http://ns.adobe.com/xap/1.0/" rdf:about="">
126
+ <!-- XMP properties go here -->
127
+ <xmp:CreatorTool/>
128
+ </rdf:Description>
129
+ </rdf:RDF>
130
+ </x:xmpmeta>
131
+ </fo:declarations>
132
+
133
+ <!-- Cover Page -->
134
+ <fo:page-sequence master-reference="cover-page" force-page-count="no-force">
135
+ <fo:static-content flow-name="xsl-footnote-separator">
136
+ <fo:block>
137
+ <fo:leader leader-pattern="rule" leader-length="30%"/>
138
+ </fo:block>
139
+ </fo:static-content>
140
+ <fo:static-content flow-name="cover-page-header">
141
+ <fo:block-container height="2.5mm" background-color="{$color-header-cover}">
142
+ <fo:block font-size="1pt"> </fo:block>
143
+ </fo:block-container>
144
+ <fo:block-container position="absolute" top="2.5mm" height="{279.4 - 2.5}mm" width="100%" background-color="rgb(80, 203, 205)">
145
+ <fo:block> </fo:block>
146
+ </fo:block-container>
147
+ </fo:static-content>
148
+
149
+ <fo:flow flow-name="xsl-region-body">
150
+
151
+ <fo:block-container width="136mm" margin-bottom="12pt">
152
+ <fo:block font-size="36pt" font-weight="bold" color="rgb(54, 59, 74)">
153
+ <xsl:value-of select="$doctitle"/>
154
+ </fo:block>
155
+ </fo:block-container>
156
+
157
+ <fo:block font-size="26pt" color="rgb(55, 60, 75)">
158
+ <xsl:value-of select="/csa:csa-standard/csa:bibdata/csa:title[@language = 'en' and @type = 'subtitle']"/>
159
+ </fo:block>
160
+
161
+ <fo:block-container absolute-position="fixed" left="11mm" top="245mm">
162
+ <fo:block>
163
+ <fo:external-graphic src="{concat('data:image/png;base64,', normalize-space($Image-Logo))}" width="42mm" content-height="scale-to-fit" scaling="uniform" fox:alt-text="Image {@alt}"/>
164
+ </fo:block>
165
+ </fo:block-container>
166
+
167
+ </fo:flow>
168
+ </fo:page-sequence>
169
+ <!-- End Cover Page -->
170
+
171
+
172
+ <!-- Copyright, Content, Foreword, etc. pages -->
173
+ <fo:page-sequence master-reference="document" initial-page-number="2" format="1" force-page-count="no-force">
174
+ <fo:static-content flow-name="xsl-footnote-separator">
175
+ <fo:block>
176
+ <fo:leader leader-pattern="rule" leader-length="30%"/>
177
+ </fo:block>
178
+ </fo:static-content>
179
+ <xsl:call-template name="insertHeaderFooter"/>
180
+ <fo:flow flow-name="xsl-region-body">
181
+ <xsl:text disable-output-escaping="yes">&lt;!--</xsl:text>
182
+ DEBUG
183
+ contents=<!-- <xsl:copy-of select="xalan:nodeset($contents)"/> -->
184
+ <xsl:text disable-output-escaping="yes">--&gt;</xsl:text>
185
+
186
+ <fo:block>
187
+ <fo:block>The permanent and official location for Cloud Security Alliance DevSecOps is</fo:block>
188
+ <fo:block color="rgb(33, 94, 159)" text-decoration="underline">https://cloudsecurityalliance.org/group/DevSecOps/</fo:block>
189
+ </fo:block>
190
+
191
+ <fo:block-container absolute-position="fixed" left="25mm" top="152mm" width="165mm" height="100mm" display-align="after" color="rgb(165, 169, 172)" line-height="145%">
192
+ <fo:block>© <xsl:value-of select="/csa:csa-standard/csa:bibdata/csa:copyright/csa:from"/> Cloud Security Alliance – All Rights Reserved. You may download, store, display on your
193
+ computer, view, print, and link to the Cloud Security Alliance at <fo:inline text-decoration="underline">https://cloudsecurityalliance.org</fo:inline>
194
+ subject to the following: (a) the draft may be used solely for your personal, informational, noncommercial
195
+ use; (b) the draft may not be modified or altered in any way; (c) the draft may not be
196
+ redistributed; and (d) the trademark, copyright or other notices may not be removed. You may quote
197
+ portions of the draft as permitted by the Fair Use provisions of the United States Copyright Act,
198
+ provided that you attribute the portions to the Cloud Security Alliance.</fo:block>
199
+ </fo:block-container>
200
+
201
+ <fo:block break-after="page"/>
202
+
203
+ <fo:block font-size="26pt" margin-bottom="18pt">Acknowledgements</fo:block>
204
+
205
+ <fo:block font-size="18pt" font-weight="bold" margin-bottom="12pt" color="rgb(3, 115, 200)">Lead Authors:</fo:block>
206
+ <fo:block>Ronald Tse</fo:block>
207
+ <fo:block font-size="18pt" font-weight="bold" margin-top="16pt" margin-bottom="12pt" color="rgb(3, 115, 200)">Contributors:</fo:block>
208
+ <fo:block>Michael Roza</fo:block>
209
+ <fo:block>Sean Heide</fo:block>
210
+ <fo:block>David Lewis</fo:block>
211
+ <fo:block>Eric Gauthier</fo:block>
212
+ <fo:block font-size="18pt" font-weight="bold" margin-top="16pt" margin-bottom="12pt" color="rgb(3, 115, 200)">CSA Staff:</fo:block>
213
+ <fo:block>Sean Heide</fo:block>
214
+
215
+ <fo:block break-after="page"/>
216
+
217
+ <fo:block-container font-size="12pt" line-height="170%" color="rgb(7, 72, 156)">
218
+ <fo:block font-size="26pt" color="black" margin-top="2pt" margin-bottom="30pt">Table of Contents</fo:block>
219
+
220
+ <fo:block margin-left="-3mm">
221
+ <xsl:for-each select="xalan:nodeset($contents)//item[@display = 'true' and @level &lt;= 2]">
222
+
223
+ <fo:block>
224
+ <fo:list-block>
225
+
226
+ <xsl:attribute name="provisional-distance-between-starts">
227
+ <xsl:choose>
228
+ <xsl:when test="@level = 2">10mm</xsl:when>
229
+ <xsl:otherwise>3mm</xsl:otherwise>
230
+ </xsl:choose>
231
+ </xsl:attribute>
232
+ <fo:list-item>
233
+ <fo:list-item-label end-indent="label-end()">
234
+ <fo:block font-size="1pt"> </fo:block>
235
+ </fo:list-item-label>
236
+ <fo:list-item-body start-indent="body-start()">
237
+ <fo:block text-align-last="justify" margin-left="12mm" text-indent="-12mm">
238
+ <fo:basic-link internal-destination="{@id}" fox:alt-text="{text()}">
239
+ <xsl:if test="@section and @display-section = 'false' and not(@section = '0')">
240
+ <xsl:value-of select="@section"/><xsl:text> </xsl:text>
241
+ </xsl:if>
242
+ <xsl:if test="@addon != ''">
243
+ <xsl:text>(</xsl:text><xsl:value-of select="@addon"/><xsl:text>)</xsl:text>
244
+ </xsl:if>
245
+ <xsl:text> </xsl:text><xsl:value-of select="text()"/>
246
+ <fo:inline keep-together.within-line="always">
247
+ <fo:leader leader-pattern="dots"/>
248
+ <fo:inline><fo:page-number-citation ref-id="{@id}"/></fo:inline>
249
+ </fo:inline>
250
+ </fo:basic-link>
251
+ </fo:block>
252
+ </fo:list-item-body>
253
+ </fo:list-item>
254
+ </fo:list-block>
255
+ </fo:block>
256
+ </xsl:for-each>
257
+ </fo:block>
258
+ </fo:block-container>
259
+
260
+ <fo:block break-after="page"/>
261
+
262
+ <fo:block line-height="145%">
263
+ <xsl:apply-templates select="/csa:csa-standard/csa:preface/csa:introduction" mode="introduction"/>
264
+
265
+ <xsl:apply-templates select="/csa:csa-standard/csa:sections/csa:clause[@id='_scope']"/>
266
+
267
+ <!-- Normative references -->
268
+ <xsl:apply-templates select="/csa:csa-standard/csa:bibliography/csa:references[@id = '_normative_references' or @id = '_references']"/>
269
+
270
+ <xsl:apply-templates select="/csa:csa-standard/csa:sections/csa:terms"/> <!-- Terms and definitions -->
271
+
272
+ <xsl:apply-templates select="/csa:csa-standard/csa:sections/*[local-name() != 'terms' and not(@id='_scope') and not(@id='conformance') and not(@id='_conformance')]"/>
273
+
274
+ <xsl:apply-templates select="/csa:csa-standard/csa:annex"/>
275
+ <xsl:apply-templates select="/csa:csa-standard/csa:bibliography/csa:references[@id != '_normative_references' and @id != '_references']"/>
276
+
277
+ </fo:block>
278
+
279
+
280
+ </fo:flow>
281
+ </fo:page-sequence>
282
+ <!-- End Document Pages -->
283
+
284
+ </fo:root>
285
+ </xsl:template>
286
+
287
+ <!-- for pass the paremeter 'sectionNum' over templates, like 'tunnel' parameter in XSLT 2.0 -->
288
+ <xsl:template match="node()">
289
+ <xsl:param name="sectionNum"/>
290
+ <xsl:param name="sectionNumSkew"/>
291
+ <xsl:apply-templates>
292
+ <xsl:with-param name="sectionNum" select="$sectionNum"/>
293
+ <xsl:with-param name="sectionNumSkew" select="$sectionNumSkew"/>
294
+ </xsl:apply-templates>
295
+ </xsl:template>
296
+
297
+ <!-- ============================= -->
298
+ <!-- CONTENTS -->
299
+ <!-- ============================= -->
300
+ <xsl:template match="node()" mode="contents">
301
+ <xsl:param name="sectionNum"/>
302
+ <xsl:param name="sectionNumSkew"/>
303
+ <xsl:apply-templates mode="contents">
304
+ <xsl:with-param name="sectionNum" select="$sectionNum"/>
305
+ <xsl:with-param name="sectionNumSkew" select="$sectionNumSkew"/>
306
+ </xsl:apply-templates>
307
+ </xsl:template>
308
+
309
+
310
+ <!-- calculate main section number (1,2,3) and pass it deep into templates -->
311
+ <!-- it's necessary, because there is itu:bibliography/itu:references from other section, but numbering should be sequental -->
312
+ <xsl:template match="csa:csa-standard/csa:sections/*" mode="contents">
313
+ <xsl:param name="sectionNum"/>
314
+ <xsl:param name="sectionNumSkew" select="0"/>
315
+ <xsl:variable name="sectionNum_">
316
+ <xsl:choose>
317
+ <xsl:when test="$sectionNum"><xsl:value-of select="$sectionNum"/></xsl:when>
318
+ <xsl:when test="$sectionNumSkew != 0">
319
+ <xsl:variable name="number"><xsl:number count="csa:sections/csa:clause[not(@id='_scope') and not(@id='conformance') and not(@id='_conformance')]"/></xsl:variable> <!-- * csa:sections/csa:clause | csa:sections/csa:terms -->
320
+ <xsl:value-of select="$number + $sectionNumSkew"/>
321
+ </xsl:when>
322
+ <xsl:otherwise>
323
+ <xsl:number count="*"/>
324
+ </xsl:otherwise>
325
+ </xsl:choose>
326
+ </xsl:variable>
327
+ <xsl:apply-templates mode="contents">
328
+ <xsl:with-param name="sectionNum" select="$sectionNum_"/>
329
+ </xsl:apply-templates>
330
+ </xsl:template>
331
+ <xsl:template match="csa:csa-standard/csa:sections/csa:terms" mode="contents">
332
+ <xsl:param name="sectionNum"/>
333
+ <xsl:param name="sectionNumSkew" select="0"/>
334
+ <xsl:variable name="sectionNum_">
335
+ <xsl:choose>
336
+ <xsl:when test="$sectionNum"><xsl:value-of select="$sectionNum"/></xsl:when>
337
+ <xsl:when test="$sectionNumSkew != 0">
338
+ <xsl:variable name="number"><xsl:number count="*"/></xsl:variable> <!-- csa:sections/csa:clause | csa:sections/csa:terms -->
339
+ <xsl:value-of select="$number + $sectionNumSkew"/>
340
+ </xsl:when>
341
+ <xsl:otherwise>
342
+ <xsl:number count="*"/>
343
+ </xsl:otherwise>
344
+ </xsl:choose>
345
+ </xsl:variable>
346
+ <xsl:apply-templates mode="contents">
347
+ <xsl:with-param name="sectionNum" select="$sectionNum_"/>
348
+ </xsl:apply-templates>
349
+ </xsl:template>
350
+
351
+
352
+ <!-- Any node with title element - clause, definition, annex,... -->
353
+ <xsl:template match="csa:title | csa:preferred" mode="contents">
354
+ <xsl:param name="sectionNum"/>
355
+ <xsl:variable name="id">
356
+ <xsl:call-template name="getId"/>
357
+ </xsl:variable>
358
+
359
+ <xsl:variable name="level">
360
+ <xsl:call-template name="getLevel"/>
361
+ </xsl:variable>
362
+
363
+ <xsl:variable name="section">
364
+ <xsl:call-template name="getSection">
365
+ <xsl:with-param name="sectionNum" select="$sectionNum"/>
366
+ </xsl:call-template>
367
+ </xsl:variable>
368
+
369
+ <xsl:variable name="display">
370
+ <xsl:choose>
371
+ <xsl:when test="ancestor::csa:bibitem">false</xsl:when>
372
+ <xsl:when test="ancestor::csa:term">false</xsl:when>
373
+ <xsl:when test="ancestor::csa:annex and $level &gt;= 3">false</xsl:when>
374
+ <xsl:when test="$level &lt;= 3">true</xsl:when>
375
+ <xsl:otherwise>false</xsl:otherwise>
376
+ </xsl:choose>
377
+ </xsl:variable>
378
+
379
+ <xsl:variable name="display-section">
380
+ <xsl:choose>
381
+ <xsl:when test="ancestor::csa:annex and $level &gt;= 2">true</xsl:when>
382
+ <xsl:when test="ancestor::csa:annex">false</xsl:when>
383
+ <xsl:when test="$section = '0'">false</xsl:when>
384
+ <xsl:otherwise>true</xsl:otherwise>
385
+ </xsl:choose>
386
+ </xsl:variable>
387
+
388
+ <xsl:variable name="type">
389
+ <xsl:value-of select="local-name(..)"/>
390
+ </xsl:variable>
391
+
392
+ <xsl:variable name="root">
393
+ <xsl:choose>
394
+ <xsl:when test="ancestor::csa:annex">annex</xsl:when>
395
+ <xsl:when test="ancestor::csa:clause">clause</xsl:when>
396
+ <xsl:when test="ancestor::csa:terms">terms</xsl:when>
397
+ </xsl:choose>
398
+ </xsl:variable>
399
+
400
+ <item id="{$id}" level="{$level}" section="{$section}" display-section="{$display-section}" display="{$display}" type="{$type}" root="{$root}">
401
+ <xsl:attribute name="addon">
402
+ <xsl:if test="local-name(..) = 'annex'"><xsl:value-of select="../@obligation"/></xsl:if>
403
+ </xsl:attribute>
404
+ <xsl:apply-templates/>
405
+ </item>
406
+
407
+ <xsl:apply-templates mode="contents">
408
+ <xsl:with-param name="sectionNum" select="$sectionNum"/>
409
+ </xsl:apply-templates>
410
+
411
+ </xsl:template>
412
+
413
+ <xsl:template match="csa:csa-standard/csa:preface/*" mode="contents">
414
+ <xsl:param name="sectionNum" select="'1'"/>
415
+ <xsl:variable name="section">
416
+ <xsl:number format="i" value="$sectionNum"/>
417
+ </xsl:variable>
418
+ <xsl:variable name="id">
419
+ <xsl:choose>
420
+ <xsl:when test="@id">
421
+ <xsl:value-of select="@id"/>
422
+ </xsl:when>
423
+ <xsl:otherwise>
424
+ <xsl:value-of select="local-name()"/>
425
+ </xsl:otherwise>
426
+ </xsl:choose>
427
+ </xsl:variable>
428
+ <xsl:if test="not(csa:title)">
429
+ <item id="{$id}" level="1" section="{$section}" display-section="true" display="true" type="abstract" root="preface">
430
+ <xsl:if test="local-name() = 'foreword'">
431
+ <xsl:attribute name="display">false</xsl:attribute>
432
+ </xsl:if>
433
+ <xsl:choose>
434
+ <xsl:when test="not(csa:title)">
435
+ <xsl:variable name="name" select="local-name()"/>
436
+ <xsl:value-of select="translate(substring($name, 1, 1), $lower, $upper)"/><xsl:value-of select="substring($name, 2)"/>
437
+ </xsl:when>
438
+ <xsl:otherwise>
439
+ <xsl:value-of select="csa:title"/>
440
+ </xsl:otherwise>
441
+ </xsl:choose>
442
+ </item>
443
+ </xsl:if>
444
+ <xsl:apply-templates mode="contents">
445
+ <xsl:with-param name="sectionNum" select="$sectionNum"/>
446
+ </xsl:apply-templates>
447
+ </xsl:template>
448
+
449
+ <!-- Keywords -->
450
+ <xsl:template match="/csa:csa-standard/csa:bibdata/csa:keyword" mode="contents">
451
+ <xsl:param name="sectionNum" select="'1'"/>
452
+ <xsl:variable name="section">
453
+ <xsl:number format="i" value="$sectionNum"/>
454
+ </xsl:variable>
455
+ <item id="keywords" level="1" section="{$section}" display-section="true" display="true" type="abstract" root="preface">
456
+ <xsl:text>Keywords</xsl:text>
457
+ </item>
458
+ </xsl:template>
459
+ <!-- Submitting Organizations -->
460
+ <xsl:template match="/csa:csa-standard/csa:bibdata/csa:contributor[csa:role/@type='author']/csa:organization/csa:name" mode="contents">
461
+ <xsl:param name="sectionNum" select="'1'"/>
462
+ <xsl:variable name="section">
463
+ <xsl:number format="i" value="$sectionNum"/>
464
+ </xsl:variable>
465
+ <item id="submitting_orgs" level="1" section="{$section}" display-section="true" display="true" type="abstract" root="preface">
466
+ <xsl:text>Submitting Organizations</xsl:text>
467
+ </item>
468
+ </xsl:template>
469
+
470
+ <xsl:template match="csa:figure" mode="contents">
471
+ <xsl:param name="sectionNum"/>
472
+ <item level="" id="{@id}" type="figure">
473
+ <xsl:attribute name="section">
474
+ <xsl:text>Figure </xsl:text>
475
+ <xsl:choose>
476
+ <xsl:when test="ancestor::csa:annex">
477
+ <xsl:choose>
478
+ <xsl:when test="count(//csa:annex) = 1">
479
+ <xsl:value-of select="/csa:nist-standard/csa:bibdata/csa:ext/csa:structuredidentifier/csa:annexid"/><xsl:number format="-1" level="any" count="csa:annex//csa:figure"/>
480
+ </xsl:when>
481
+ <xsl:otherwise>
482
+ <xsl:number format="A.1-1" level="multiple" count="csa:annex | csa:figure"/>
483
+ </xsl:otherwise>
484
+ </xsl:choose>
485
+ </xsl:when>
486
+ <xsl:when test="ancestor::csa:figure">
487
+ <xsl:for-each select="parent::*[1]">
488
+ <xsl:number format="1" level="any" count="csa:figure[not(parent::csa:figure)]"/>
489
+ </xsl:for-each>
490
+ <xsl:number format="-a" count="csa:figure"/>
491
+ </xsl:when>
492
+ <xsl:otherwise>
493
+ <xsl:number format="1" level="any" count="csa:figure[not(parent::csa:figure)] | csa:sourcecode[not(@unnumbered = 'true') and not(ancestor::csa:example)]"/>
494
+ <!-- <xsl:number format="1.1-1" level="multiple" count="csa:annex | csa:figure"/> -->
495
+ </xsl:otherwise>
496
+ </xsl:choose>
497
+ </xsl:attribute>
498
+ <xsl:value-of select="csa:name"/>
499
+ </item>
500
+ </xsl:template>
501
+
502
+
503
+
504
+ <xsl:template match="csa:table[not(@unnumbered='true')]" mode="contents">
505
+ <xsl:param name="sectionNum"/>
506
+ <xsl:variable name="annex-id" select="ancestor::csa:annex/@id"/>
507
+ <item level="" id="{@id}" display="false" type="table">
508
+ <xsl:attribute name="section">
509
+ <xsl:text>Table </xsl:text>
510
+ <xsl:choose>
511
+ <xsl:when test="ancestor::*[local-name()='executivesummary']">
512
+ <xsl:text>ES-</xsl:text><xsl:number format="1" count="*[local-name()='executivesummary']//*[local-name()='table'][not(@unnumbered='true')]"/>
513
+ </xsl:when>
514
+ <xsl:when test="ancestor::*[local-name()='annex']">
515
+ <xsl:number format="A-" count="csa:annex"/>
516
+ <xsl:number format="1" level="any" count="csa:table[ancestor::csa:annex[@id = $annex-id]][not(@unnumbered='true')]"/>
517
+ </xsl:when>
518
+ <xsl:otherwise>
519
+ <xsl:number format="1" level="any" count="*[local-name()='sections']//*[local-name()='table'][not(@unnumbered='true')] | *[local-name()='preface']//*[local-name()='table'][not(@unnumbered='true')]"/>
520
+ </xsl:otherwise>
521
+ </xsl:choose>
522
+ </xsl:attribute>
523
+ <xsl:value-of select="csa:name/text()"/>
524
+ </item>
525
+ </xsl:template>
526
+
527
+
528
+
529
+ <xsl:template match="csa:formula" mode="contents">
530
+ <item level="" id="{@id}" display="false">
531
+ <xsl:attribute name="section">
532
+ <xsl:text>Formula (</xsl:text><xsl:number format="A.1" level="multiple" count="csa:annex | csa:formula"/><xsl:text>)</xsl:text>
533
+ </xsl:attribute>
534
+ </item>
535
+ </xsl:template>
536
+
537
+ <xsl:template match="csa:fn" mode="contents"/>
538
+ <!-- ============================= -->
539
+ <!-- ============================= -->
540
+
541
+ <xsl:template match="/csa:csa-standard/csa:bibdata/csa:uri[not(@type)]">
542
+ <fo:block margin-bottom="12pt">
543
+ <xsl:text>URL for this OGC® document: </xsl:text>
544
+ <xsl:value-of select="."/><xsl:text> </xsl:text>
545
+ </fo:block>
546
+ </xsl:template>
547
+
548
+ <xsl:template match="/csa:csa-standard/csa:bibdata/csa:edition">
549
+ <fo:block margin-bottom="12pt">
550
+ <xsl:text>Version: </xsl:text>
551
+ <xsl:value-of select="."/><xsl:text> </xsl:text>
552
+ </fo:block>
553
+ </xsl:template>
554
+
555
+ <xsl:template match="csa:license-statement//csa:title">
556
+ <fo:block text-align="center" font-weight="bold" margin-top="4pt">
557
+ <xsl:apply-templates/>
558
+ </fo:block>
559
+ </xsl:template>
560
+
561
+ <xsl:template match="csa:license-statement//csa:p">
562
+ <fo:block font-size="8pt" margin-top="14pt" line-height="115%">
563
+ <xsl:if test="following-sibling::csa:p">
564
+ <xsl:attribute name="margin-bottom">14pt</xsl:attribute>
565
+ </xsl:if>
566
+ <xsl:apply-templates/>
567
+ </fo:block>
568
+ </xsl:template>
569
+
570
+ <xsl:template match="csa:feedback-statement">
571
+ <fo:block margin-top="12pt" margin-bottom="12pt">
572
+ <xsl:apply-templates select="csa:clause[1]"/>
573
+ </fo:block>
574
+ </xsl:template>
575
+
576
+ <xsl:template match="csa:copyright-statement//csa:title">
577
+ <fo:block font-weight="bold" text-align="center">
578
+ <xsl:apply-templates/>
579
+ </fo:block>
580
+ </xsl:template>
581
+ <xsl:template match="csa:copyright-statement//csa:p">
582
+ <fo:block margin-bottom="12pt">
583
+ <xsl:if test="not(following-sibling::p)">
584
+ <xsl:attribute name="margin-bottom">10pt</xsl:attribute>
585
+ </xsl:if>
586
+ <xsl:attribute name="text-align">
587
+ <xsl:choose>
588
+ <xsl:when test="@align"><xsl:value-of select="@align"/></xsl:when>
589
+ <xsl:otherwise>left</xsl:otherwise>
590
+ </xsl:choose>
591
+ </xsl:attribute>
592
+ <xsl:apply-templates/>
593
+ </fo:block>
594
+ </xsl:template>
595
+
596
+ <xsl:template match="csa:legal-statement">
597
+ <fo:block-container border="0.5pt solid black" margin-bottom="12pt" margin-left="-2mm" margin-right="-2mm">
598
+ <fo:block-container margin-left="0mm" margin-right="0mm">
599
+ <fo:block margin-left="2mm" margin-right="2mm">
600
+ <xsl:apply-templates/>
601
+ </fo:block>
602
+ </fo:block-container>
603
+ </fo:block-container>
604
+ </xsl:template>
605
+
606
+
607
+ <xsl:template match="csa:legal-statement//csa:title">
608
+ <fo:block text-align="center" font-weight="bold" padding-top="2mm" margin-bottom="6pt">
609
+ <xsl:apply-templates/>
610
+ </fo:block>
611
+ </xsl:template>
612
+
613
+ <xsl:template match="csa:legal-statement//csa:p">
614
+ <fo:block margin-bottom="6pt">
615
+ <xsl:if test="not(following-sibling::csa:p)">
616
+ <xsl:attribute name="margin-bottom">0pt</xsl:attribute>
617
+ </xsl:if>
618
+ <xsl:attribute name="text-align">
619
+ <xsl:choose>
620
+ <xsl:when test="@align"><xsl:value-of select="@align"/></xsl:when>
621
+ <xsl:otherwise>left</xsl:otherwise>
622
+ </xsl:choose>
623
+ </xsl:attribute>
624
+ <xsl:apply-templates/>
625
+ </fo:block>
626
+ </xsl:template>
627
+
628
+
629
+ <!-- Introduction -->
630
+ <xsl:template match="csa:csa-standard/csa:preface/csa:introduction" mode="introduction">
631
+ <fo:block break-after="page"/>
632
+ <xsl:apply-templates select="current()"/>
633
+ </xsl:template>
634
+ <!-- Abstract -->
635
+ <xsl:template match="csa:csa-standard/csa:preface/csa:abstract" mode="abstract">
636
+ <fo:block break-after="page"/>
637
+ <xsl:apply-templates select="current()"/>
638
+ </xsl:template>
639
+ <!-- Preface -->
640
+ <xsl:template match="csa:csa-standard/csa:preface/csa:foreword" mode="preface">
641
+ <xsl:param name="sectionNum"/>
642
+ <fo:block break-after="page"/>
643
+ <xsl:apply-templates select="current()">
644
+ <xsl:with-param name="sectionNum" select="$sectionNum"/>
645
+ </xsl:apply-templates>
646
+ </xsl:template>
647
+ <!-- Abstract, Preface -->
648
+ <xsl:template match="csa:csa-standard/csa:preface/*">
649
+ <xsl:param name="sectionNum" select="'1'"/>
650
+ <xsl:if test="not(csa:title)">
651
+ <xsl:variable name="id">
652
+ <xsl:choose>
653
+ <xsl:when test="@id">
654
+ <xsl:value-of select="@id"/>
655
+ </xsl:when>
656
+ <xsl:otherwise>
657
+ <xsl:value-of select="local-name()"/>
658
+ </xsl:otherwise>
659
+ </xsl:choose>
660
+ </xsl:variable>
661
+ <fo:block id="{$id}" font-size="13pt" font-weight="bold" margin-bottom="12pt" color="rgb(14, 26, 133)">
662
+ <xsl:number format="i." value="$sectionNum"/><fo:inline padding-right="3mm"> </fo:inline>
663
+ <xsl:variable name="name" select="local-name()"/>
664
+ <xsl:value-of select="translate(substring($name, 1, 1), $lower, $upper)"/><xsl:value-of select="substring($name, 2)"/>
665
+ </fo:block>
666
+ </xsl:if>
667
+ <xsl:apply-templates/>
668
+ </xsl:template>
669
+ <!-- Keywords -->
670
+ <xsl:template match="/csa:csa-standard/csa:bibdata/csa:keyword">
671
+ <xsl:param name="sectionNum" select="'1'"/>
672
+ <fo:block id="keywords" font-size="13pt" font-weight="bold" margin-top="13.5pt" margin-bottom="12pt" color="rgb(14, 26, 133)">
673
+ <xsl:number format="i." value="$sectionNum"/><fo:inline padding-right="2mm"> </fo:inline>
674
+ <xsl:text>Keywords</xsl:text>
675
+ </fo:block>
676
+ <fo:block margin-bottom="12pt">The following are keywords to be used by search engines and document catalogues.</fo:block>
677
+ <fo:block margin-bottom="12pt">
678
+ <xsl:for-each select="/csa:csa-standard/csa:bibdata/csa:keyword">
679
+ <xsl:value-of select="."/>
680
+ <xsl:if test="position() != last()">, </xsl:if>
681
+ </xsl:for-each>
682
+ </fo:block>
683
+ </xsl:template>
684
+ <!-- Submitting Organizations -->
685
+ <xsl:template match="/csa:csa-standard/csa:bibdata/csa:contributor[csa:role/@type='author']/csa:organization/csa:name">
686
+ <xsl:param name="sectionNum" select="'1'"/>
687
+ <fo:block id="submitting_orgs" font-size="13pt" font-weight="bold" color="rgb(14, 26, 133)" margin-top="13.5pt" margin-bottom="12pt">
688
+ <xsl:number format="i." value="$sectionNum"/><fo:inline padding-right="3mm"> </fo:inline>
689
+ <xsl:text>Submitting Organizations</xsl:text>
690
+ </fo:block>
691
+ <fo:block margin-bottom="12pt">The following organizations submitted this Document to the Open Geospatial Consortium (OGC):</fo:block>
692
+ <fo:list-block provisional-distance-between-starts="6.5mm" margin-bottom="12pt" line-height="115%">
693
+ <xsl:for-each select="/csa:csa-standard/csa:bibdata/csa:contributor[csa:role/@type='author']/csa:organization/csa:name">
694
+ <fo:list-item>
695
+ <fo:list-item-label end-indent="label-end()">
696
+ <fo:block>—</fo:block>
697
+ </fo:list-item-label>
698
+ <fo:list-item-body start-indent="body-start()" line-height-shift-adjustment="disregard-shifts">
699
+ <fo:block>
700
+ <xsl:apply-templates/>
701
+ </fo:block>
702
+ </fo:list-item-body>
703
+ </fo:list-item>
704
+ </xsl:for-each>
705
+ </fo:list-block>
706
+ </xsl:template>
707
+
708
+
709
+ <!-- clause, terms, clause, ...-->
710
+ <xsl:template match="csa:csa-standard/csa:sections/*">
711
+ <xsl:param name="sectionNum"/>
712
+ <xsl:param name="sectionNumSkew" select="0"/>
713
+ <fo:block>
714
+ <xsl:variable name="pos"><xsl:number count="csa:sections/csa:clause[not(@id='_scope') and not(@id='conformance') and not(@id='_conformance')]"/></xsl:variable> <!-- | csa:sections/csa:terms -->
715
+ <xsl:if test="$pos &gt;= 2">
716
+ <xsl:attribute name="space-before">18pt</xsl:attribute>
717
+ </xsl:if>
718
+ <xsl:variable name="sectionNum_">
719
+ <xsl:choose>
720
+ <xsl:when test="$sectionNum"><xsl:value-of select="$sectionNum"/></xsl:when>
721
+ <xsl:when test="$sectionNumSkew != 0">
722
+ <xsl:variable name="number"><xsl:number count="csa:sections/csa:clause[not(@id='_scope') and not(@id='conformance') and not(@id='_conformance')]"/></xsl:variable> <!-- | csa:sections/csa:terms -->
723
+ <xsl:value-of select="$number + $sectionNumSkew"/>
724
+ </xsl:when>
725
+ <xsl:otherwise>
726
+ <xsl:number count="*"/>
727
+ </xsl:otherwise>
728
+ </xsl:choose>
729
+ </xsl:variable>
730
+ <xsl:if test="not(csa:title)">
731
+ <fo:block margin-top="3pt" margin-bottom="12pt">
732
+ <xsl:value-of select="$sectionNum_"/><xsl:number format=".1 " level="multiple" count="csa:clause[not(@id='_scope') and not(@id='conformance') and not(@id='_conformance')]"/>
733
+ </fo:block>
734
+ </xsl:if>
735
+ <xsl:apply-templates>
736
+ <xsl:with-param name="sectionNum" select="$sectionNum_"/>
737
+ </xsl:apply-templates>
738
+ </fo:block>
739
+ </xsl:template>
740
+
741
+
742
+
743
+ <xsl:template match="csa:clause//csa:clause[not(csa:title)]">
744
+ <xsl:param name="sectionNum"/>
745
+ <xsl:variable name="section">
746
+ <xsl:call-template name="getSection">
747
+ <xsl:with-param name="sectionNum" select="$sectionNum"/>
748
+ </xsl:call-template>
749
+ </xsl:variable>
750
+
751
+ <fo:block margin-top="3pt">
752
+ <fo:inline font-weight="bold" padding-right="3mm">
753
+ <xsl:value-of select="$section"/>
754
+ </fo:inline>
755
+ <xsl:apply-templates>
756
+ <xsl:with-param name="sectionNum" select="$sectionNum"/>
757
+ <xsl:with-param name="inline" select="'true'"/>
758
+ </xsl:apply-templates>
759
+ </fo:block>
760
+ </xsl:template>
761
+
762
+
763
+ <xsl:template match="csa:title">
764
+ <xsl:param name="sectionNum"/>
765
+
766
+ <xsl:variable name="parent-name" select="local-name(..)"/>
767
+ <xsl:variable name="references_num_current">
768
+ <xsl:number level="any" count="csa:references"/>
769
+ </xsl:variable>
770
+
771
+ <xsl:variable name="id">
772
+ <xsl:call-template name="getId"/>
773
+ </xsl:variable>
774
+
775
+ <xsl:variable name="level">
776
+ <xsl:call-template name="getLevel"/>
777
+ </xsl:variable>
778
+
779
+ <xsl:variable name="section">
780
+ <xsl:call-template name="getSection">
781
+ <xsl:with-param name="sectionNum" select="$sectionNum"/>
782
+ </xsl:call-template>
783
+ </xsl:variable>
784
+
785
+ <xsl:variable name="font-size">
786
+ <xsl:choose>
787
+ <xsl:when test="ancestor::csa:preface and $level &gt;= 2">12pt</xsl:when>
788
+ <xsl:when test="ancestor::csa:preface">13pt</xsl:when>
789
+ <xsl:when test="$level = 1">26pt</xsl:when>
790
+ <xsl:when test="$level = 2 and ancestor::csa:terms">11pt</xsl:when>
791
+ <xsl:when test="$level = 2">14pt</xsl:when>
792
+ <xsl:when test="$level &gt;= 3">11pt</xsl:when>
793
+ <xsl:otherwise>16pt</xsl:otherwise>
794
+ </xsl:choose>
795
+ </xsl:variable>
796
+
797
+ <xsl:variable name="font-weight">
798
+ <xsl:choose>
799
+ <xsl:when test="$level = 1">normal</xsl:when>
800
+ <xsl:otherwise>bold</xsl:otherwise>
801
+ </xsl:choose>
802
+ </xsl:variable>
803
+
804
+ <xsl:variable name="element-name">
805
+ <xsl:choose>
806
+ <xsl:when test="../@inline-header = 'true'">fo:inline</xsl:when>
807
+ <xsl:otherwise>fo:block</xsl:otherwise>
808
+ </xsl:choose>
809
+ </xsl:variable>
810
+
811
+ <xsl:variable name="color">
812
+ <xsl:choose>
813
+ <xsl:when test="$level &gt;= 2">rgb(3, 115, 200)</xsl:when>
814
+ <xsl:otherwise>black</xsl:otherwise>
815
+ </xsl:choose>
816
+ </xsl:variable>
817
+
818
+ <xsl:choose>
819
+ <xsl:when test="$parent-name = 'annex'">
820
+ <fo:block id="{$id}" font-size="12pt" font-weight="{$font-weight}" text-align="center" margin-bottom="12pt" keep-with-next="always" color="{$color}">
821
+ <xsl:value-of select="$section"/>
822
+ <xsl:if test=" ../@obligation">
823
+ <xsl:value-of select="$linebreak"/>
824
+ <fo:inline font-weight="normal">(<xsl:value-of select="../@obligation"/>)</fo:inline>
825
+ </xsl:if>
826
+ <xsl:value-of select="$linebreak"/>
827
+ <xsl:apply-templates/>
828
+ </fo:block>
829
+ </xsl:when>
830
+ <xsl:otherwise>
831
+ <xsl:element name="{$element-name}">
832
+ <xsl:attribute name="id"><xsl:value-of select="$id"/></xsl:attribute>
833
+ <xsl:attribute name="font-size"><xsl:value-of select="$font-size"/></xsl:attribute>
834
+ <xsl:attribute name="font-weight"><xsl:value-of select="$font-weight"/></xsl:attribute>
835
+ <xsl:attribute name="space-before">13.5pt</xsl:attribute>
836
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
837
+ <xsl:attribute name="keep-with-next">always</xsl:attribute>
838
+ <xsl:attribute name="color"><xsl:value-of select="$color"/></xsl:attribute>
839
+ <xsl:attribute name="line-height">120%</xsl:attribute>
840
+
841
+ <xsl:if test="$level = 2">
842
+ <fo:inline padding-right="1mm">
843
+ <fo:external-graphic src="{concat('data:image/png;base64,', normalize-space($Title-Image))}" width="15mm" content-height="scale-to-fit" scaling="uniform" fox:alt-text="Image {@alt}" vertical-align="middle"/>
844
+ </fo:inline>
845
+ </xsl:if>
846
+
847
+ <xsl:apply-templates/>
848
+ </xsl:element>
849
+ </xsl:otherwise>
850
+ </xsl:choose>
851
+
852
+ </xsl:template>
853
+
854
+
855
+ <xsl:template match="csa:p">
856
+ <xsl:param name="inline" select="'false'"/>
857
+ <xsl:variable name="previous-element" select="local-name(preceding-sibling::*[1])"/>
858
+ <xsl:variable name="element-name">
859
+ <xsl:choose>
860
+ <xsl:when test="$inline = 'true'">fo:inline</xsl:when>
861
+ <xsl:when test="../@inline-header = 'true' and $previous-element = 'title'">fo:inline</xsl:when> <!-- first paragraph after inline title -->
862
+ <xsl:when test="local-name(..) = 'admonition'">fo:inline</xsl:when>
863
+ <xsl:otherwise>fo:block</xsl:otherwise>
864
+ </xsl:choose>
865
+ </xsl:variable>
866
+ <xsl:element name="{$element-name}">
867
+ <xsl:attribute name="id">
868
+ <xsl:value-of select="@id"/>
869
+ </xsl:attribute>
870
+ <xsl:attribute name="text-align">
871
+ <xsl:choose>
872
+ <!-- <xsl:when test="ancestor::csa:preface">justify</xsl:when> -->
873
+ <xsl:when test="@align"><xsl:value-of select="@align"/></xsl:when>
874
+ <xsl:otherwise>left</xsl:otherwise><!-- justify -->
875
+ </xsl:choose>
876
+ </xsl:attribute>
877
+ <xsl:attribute name="space-after">
878
+ <xsl:choose>
879
+ <xsl:when test="ancestor::csa:li">0pt</xsl:when>
880
+ <xsl:otherwise>12pt</xsl:otherwise>
881
+ </xsl:choose>
882
+ </xsl:attribute>
883
+ <xsl:attribute name="line-height">155%</xsl:attribute>
884
+ <xsl:apply-templates/>
885
+ </xsl:element>
886
+ <xsl:if test="$element-name = 'fo:inline' and not($inline = 'true') and not(local-name(..) = 'admonition')">
887
+ <fo:block margin-bottom="12pt">
888
+ <xsl:if test="ancestor::csa:annex">
889
+ <xsl:attribute name="margin-bottom">0</xsl:attribute>
890
+ </xsl:if>
891
+ <xsl:value-of select="$linebreak"/>
892
+ </fo:block>
893
+ </xsl:if>
894
+ <xsl:if test="$inline = 'true'">
895
+ <fo:block> </fo:block>
896
+ </xsl:if>
897
+ </xsl:template>
898
+
899
+ <!--
900
+ <fn reference="1">
901
+ <p id="_8e5cf917-f75a-4a49-b0aa-1714cb6cf954">Formerly denoted as 15 % (m/m).</p>
902
+ </fn>
903
+ -->
904
+ <xsl:template match="csa:title/csa:fn | csa:p/csa:fn[not(ancestor::csa:table)]" priority="2">
905
+ <fo:footnote keep-with-previous.within-line="always">
906
+ <xsl:variable name="number" select="@reference"/>
907
+
908
+ <fo:inline font-size="65%" keep-with-previous.within-line="always" vertical-align="super">
909
+ <fo:basic-link internal-destination="footnote_{@reference}" fox:alt-text="footnote {@reference}">
910
+ <xsl:value-of select="$number"/><!-- + count(//csa:bibitem/csa:note) -->
911
+ </fo:basic-link>
912
+ </fo:inline>
913
+ <fo:footnote-body>
914
+ <fo:block font-family="AzoSans-Light" font-size="10pt" margin-bottom="12pt" font-weight="normal" text-indent="0" start-indent="0" color="rgb(168, 170, 173)" text-align="left">
915
+ <fo:inline id="footnote_{@reference}" keep-with-next.within-line="always" font-size="60%" vertical-align="super">
916
+ <xsl:value-of select="$number "/><!-- + count(//csa:bibitem/csa:note) -->
917
+ </fo:inline>
918
+ <xsl:for-each select="csa:p">
919
+ <xsl:apply-templates/>
920
+ </xsl:for-each>
921
+ </fo:block>
922
+ </fo:footnote-body>
923
+ </fo:footnote>
924
+ </xsl:template>
925
+
926
+ <xsl:template match="csa:fn/csa:p">
927
+ <fo:block>
928
+ <xsl:apply-templates/>
929
+ </fo:block>
930
+ </xsl:template>
931
+
932
+ <xsl:template match="csa:review">
933
+ <!-- comment 2019-11-29 -->
934
+ <!-- <fo:block font-weight="bold">Review:</fo:block>
935
+ <xsl:apply-templates /> -->
936
+ </xsl:template>
937
+
938
+ <xsl:template match="text()">
939
+ <xsl:value-of select="."/>
940
+ </xsl:template>
941
+
942
+
943
+ <xsl:template match="csa:image"> <!-- only for without outer figure -->
944
+ <fo:block margin-top="12pt" margin-bottom="6pt">
945
+ <fo:external-graphic src="{@src}" width="100%" content-height="scale-to-fit" scaling="uniform" fox:alt-text="Image {@alt}"/> <!-- content-width="75%" -->
946
+ </fo:block>
947
+ </xsl:template>
948
+
949
+ <xsl:template match="csa:figure">
950
+ <xsl:variable name="title">
951
+ <xsl:text>Figure </xsl:text>
952
+ </xsl:variable>
953
+
954
+ <fo:block-container id="{@id}">
955
+ <fo:block>
956
+ <xsl:apply-templates/>
957
+ </fo:block>
958
+ <xsl:call-template name="fn_display_figure"/>
959
+ <xsl:for-each select="csa:note//csa:p">
960
+ <xsl:call-template name="note"/>
961
+ </xsl:for-each>
962
+ <fo:block font-size="11pt" font-weight="bold" text-align="center" margin-top="12pt" margin-bottom="6pt" keep-with-previous="always">
963
+
964
+ <xsl:choose>
965
+ <xsl:when test="ancestor::csa:annex">
966
+ <xsl:choose>
967
+ <xsl:when test="local-name(..) = 'figure'">
968
+ <xsl:number format="a) "/>
969
+ </xsl:when>
970
+ <xsl:otherwise>
971
+ <xsl:value-of select="$title"/><xsl:number format="A.1-1" level="multiple" count="csa:annex | csa:figure"/>
972
+ </xsl:otherwise>
973
+ </xsl:choose>
974
+
975
+ </xsl:when>
976
+ <xsl:otherwise>
977
+ <xsl:value-of select="$title"/><xsl:number format="1" level="any" count="csa:sourcecode[not(@unnumbered='true') and not(ancestor::csa:example)] | csa:figure"/>
978
+ </xsl:otherwise>
979
+ </xsl:choose>
980
+ <xsl:if test="csa:name">
981
+ <xsl:if test="not(local-name(..) = 'figure')">
982
+ <xsl:text> — </xsl:text>
983
+ </xsl:if>
984
+ <xsl:value-of select="csa:name"/>
985
+ </xsl:if>
986
+ </fo:block>
987
+ </fo:block-container>
988
+ </xsl:template>
989
+
990
+ <xsl:template match="csa:figure/csa:name"/>
991
+ <xsl:template match="csa:figure/csa:fn"/>
992
+ <xsl:template match="csa:figure/csa:note"/>
993
+
994
+
995
+ <xsl:template match="csa:figure/csa:image">
996
+ <fo:block text-align="center">
997
+ <fo:external-graphic src="{@src}" width="100%" content-height="scale-to-fit" scaling="uniform" fox:alt-text="Image {@alt}"/> <!-- content-width="75%" -->
998
+ </fo:block>
999
+ </xsl:template>
1000
+
1001
+
1002
+ <xsl:template match="csa:bibitem">
1003
+ <fo:block id="{@id}" margin-bottom="12pt" start-indent="12mm" text-indent="-12mm" line-height="145%">
1004
+ <xsl:if test=".//csa:fn">
1005
+ <xsl:attribute name="line-height-shift-adjustment">disregard-shifts</xsl:attribute>
1006
+ </xsl:if>
1007
+ <xsl:choose>
1008
+ <xsl:when test="csa:formattedref">
1009
+ <xsl:apply-templates select="csa:formattedref"/>
1010
+ </xsl:when>
1011
+ <xsl:otherwise>
1012
+ <xsl:for-each select="csa:contributor[csa:role/@type='publisher']/csa:organization/csa:name">
1013
+ <xsl:apply-templates/>
1014
+ <xsl:if test="position() != last()">, </xsl:if>
1015
+ <xsl:if test="position() = last()">: </xsl:if>
1016
+ </xsl:for-each>
1017
+ <!-- csa:docidentifier -->
1018
+ <xsl:if test="csa:docidentifier">
1019
+ <xsl:value-of select="csa:docidentifier/@type"/><xsl:text> </xsl:text>
1020
+ <xsl:value-of select="csa:docidentifier"/>
1021
+ </xsl:if>
1022
+ <xsl:apply-templates select="csa:note"/>
1023
+ <xsl:if test="csa:docidentifier">, </xsl:if>
1024
+ <fo:inline font-style="italic">
1025
+ <xsl:choose>
1026
+ <xsl:when test="csa:title[@type = 'main' and @language = 'en']">
1027
+ <xsl:value-of select="csa:title[@type = 'main' and @language = 'en']"/><xsl:text>. </xsl:text>
1028
+ </xsl:when>
1029
+ <xsl:otherwise>
1030
+ <xsl:value-of select="csa:title"/><xsl:text>. </xsl:text>
1031
+ </xsl:otherwise>
1032
+ </xsl:choose>
1033
+ </fo:inline>
1034
+ <xsl:for-each select="csa:contributor[csa:role/@type='publisher']/csa:organization/csa:name">
1035
+ <xsl:apply-templates/>
1036
+ <xsl:if test="position() != last()">, </xsl:if>
1037
+ </xsl:for-each>
1038
+ <xsl:if test="csa:date[@type='published']/csa:on">
1039
+ <xsl:text>(</xsl:text><xsl:value-of select="csa:date[@type='published']/csa:on"/><xsl:text>)</xsl:text>
1040
+ </xsl:if>
1041
+ </xsl:otherwise>
1042
+ </xsl:choose>
1043
+ </fo:block>
1044
+ </xsl:template>
1045
+
1046
+
1047
+ <xsl:template match="csa:bibitem/csa:note">
1048
+ <fo:footnote>
1049
+ <xsl:variable name="number">
1050
+ <xsl:choose>
1051
+ <xsl:when test="ancestor::csa:references[preceding-sibling::csa:references]">
1052
+ <xsl:number level="any" count="csa:references[preceding-sibling::csa:references]//csa:bibitem/csa:note"/>
1053
+ </xsl:when>
1054
+ <xsl:otherwise>
1055
+ <xsl:number level="any" count="csa:bibitem/csa:note"/>
1056
+ </xsl:otherwise>
1057
+ </xsl:choose>
1058
+ </xsl:variable>
1059
+ <fo:inline font-size="65%" keep-with-previous.within-line="always" vertical-align="super"> <!-- 60% baseline-shift="35%" -->
1060
+ <fo:basic-link internal-destination="footnote_{../@id}" fox:alt-text="footnote {$number}">
1061
+ <xsl:value-of select="$number"/><!-- <xsl:text>)</xsl:text> -->
1062
+ </fo:basic-link>
1063
+ </fo:inline>
1064
+ <fo:footnote-body>
1065
+ <fo:block font-family="AzoSans-Light" font-size="10pt" margin-bottom="12pt" start-indent="0pt" color="rgb(168, 170, 173)">
1066
+ <fo:inline id="footnote_{../@id}" keep-with-next.within-line="always" font-size="60%" vertical-align="super"><!-- baseline-shift="30%" padding-right="9mm" alignment-baseline="hanging" -->
1067
+ <xsl:value-of select="$number"/><!-- <xsl:text>)</xsl:text> -->
1068
+ </fo:inline>
1069
+ <xsl:apply-templates/>
1070
+ </fo:block>
1071
+ </fo:footnote-body>
1072
+ </fo:footnote>
1073
+ </xsl:template>
1074
+
1075
+
1076
+
1077
+ <xsl:template match="csa:ul | csa:ol">
1078
+ <xsl:choose>
1079
+ <xsl:when test="not(ancestor::csa:ul) and not(ancestor::csa:ol)">
1080
+ <fo:block-container border-left="0.75mm solid {$color-header-document}" margin-left="1mm" margin-bottom="12pt">
1081
+ <fo:block-container margin-left="8mm">
1082
+ <fo:block margin-left="-8mm" padding-top="6pt">
1083
+ <xsl:call-template name="listProcessing"/>
1084
+ </fo:block>
1085
+ </fo:block-container>
1086
+ </fo:block-container>
1087
+ </xsl:when>
1088
+ <xsl:otherwise>
1089
+ <xsl:call-template name="listProcessing"/>
1090
+ </xsl:otherwise>
1091
+ </xsl:choose>
1092
+ </xsl:template>
1093
+
1094
+ <xsl:template name="listProcessing">
1095
+ <fo:list-block provisional-distance-between-starts="6.5mm" line-height="145%">
1096
+ <xsl:if test="ancestor::csa:ul | ancestor::csa:ol">
1097
+ <!-- <xsl:attribute name="margin-bottom">0pt</xsl:attribute> -->
1098
+ </xsl:if>
1099
+ <xsl:if test="following-sibling::*[1][local-name() = 'ul' or local-name() = 'ol']">
1100
+ <!-- <xsl:attribute name="margin-bottom">0pt</xsl:attribute> -->
1101
+ </xsl:if>
1102
+ <xsl:apply-templates/>
1103
+ </fo:list-block>
1104
+ </xsl:template>
1105
+
1106
+ <xsl:template match="csa:li">
1107
+ <fo:list-item>
1108
+ <fo:list-item-label end-indent="label-end()">
1109
+ <fo:block>
1110
+ <xsl:choose>
1111
+ <xsl:when test="local-name(..) = 'ul' and (../ancestor::csa:ul or ../ancestor::csa:ol)">-</xsl:when> <!-- &#x2014; dash -->
1112
+ <xsl:when test="local-name(..) = 'ul'">•</xsl:when> <!-- &#x2014; dash -->
1113
+ <xsl:otherwise> <!-- for ordered lists -->
1114
+ <xsl:choose>
1115
+ <xsl:when test="../@type = 'arabic'">
1116
+ <xsl:number format="a)"/>
1117
+ </xsl:when>
1118
+ <xsl:when test="../@type = 'alphabet'">
1119
+ <xsl:number format="1)"/>
1120
+ </xsl:when>
1121
+ <xsl:when test="../@type = 'alphabet_upper'">
1122
+ <xsl:number format="A)"/>
1123
+ </xsl:when>
1124
+
1125
+ <xsl:when test="../@type = 'roman'">
1126
+ <xsl:number format="i)"/>
1127
+ </xsl:when>
1128
+ <xsl:otherwise>
1129
+ <xsl:number format="1)"/>
1130
+ </xsl:otherwise>
1131
+ </xsl:choose>
1132
+ </xsl:otherwise>
1133
+ </xsl:choose>
1134
+ </fo:block>
1135
+ </fo:list-item-label>
1136
+ <fo:list-item-body start-indent="body-start()" line-height-shift-adjustment="disregard-shifts">
1137
+ <xsl:apply-templates/>
1138
+ </fo:list-item-body>
1139
+ </fo:list-item>
1140
+ </xsl:template>
1141
+
1142
+ <xsl:template match="csa:ul/csa:note | csa:ol/csa:note">
1143
+ <fo:list-item font-size="10pt">
1144
+ <fo:list-item-label><fo:block/></fo:list-item-label>
1145
+ <fo:list-item-body>
1146
+ <xsl:apply-templates/>
1147
+ </fo:list-item-body>
1148
+ </fo:list-item>
1149
+ </xsl:template>
1150
+
1151
+ <xsl:template match="csa:link">
1152
+ <fo:inline>
1153
+ <fo:basic-link external-destination="{@target}" text-decoration="underline" fox:alt-text="{@target}" color="{$color-link}">
1154
+ <xsl:choose>
1155
+ <xsl:when test="normalize-space(.) = ''">
1156
+ <xsl:value-of select="@target"/>
1157
+ </xsl:when>
1158
+ <xsl:otherwise>
1159
+ <xsl:apply-templates/>
1160
+ </xsl:otherwise>
1161
+ </xsl:choose>
1162
+ </fo:basic-link>
1163
+ </fo:inline>
1164
+ </xsl:template>
1165
+
1166
+ <xsl:template match="csa:preferred">
1167
+ <xsl:param name="sectionNum"/>
1168
+ <xsl:variable name="section">
1169
+ <xsl:call-template name="getSection">
1170
+ <xsl:with-param name="sectionNum" select="$sectionNum"/>
1171
+ </xsl:call-template>
1172
+ </xsl:variable>
1173
+ <xsl:variable name="level">
1174
+ <xsl:call-template name="getLevel"/>
1175
+ </xsl:variable>
1176
+ <xsl:variable name="font-size">
1177
+ <xsl:choose>
1178
+ <xsl:when test="$level &gt;= 2">11pt</xsl:when>
1179
+ <xsl:otherwise>12pt</xsl:otherwise>
1180
+ </xsl:choose>
1181
+ </xsl:variable>
1182
+ <fo:block font-size="{$font-size}">
1183
+ <fo:block font-weight="bold" keep-with-next="always">
1184
+ <fo:inline id="{../@id}">
1185
+ <xsl:value-of select="$section"/><xsl:text>.</xsl:text>
1186
+ </fo:inline>
1187
+ </fo:block>
1188
+ <fo:block font-weight="bold" keep-with-next="always" line-height="1">
1189
+ <xsl:apply-templates/>
1190
+ </fo:block>
1191
+ </fo:block>
1192
+ </xsl:template>
1193
+
1194
+ <xsl:template match="csa:admitted">
1195
+ <fo:block font-size="11pt">
1196
+ <xsl:apply-templates/>
1197
+ </fo:block>
1198
+ </xsl:template>
1199
+
1200
+ <xsl:template match="csa:deprecates">
1201
+ <fo:block>DEPRECATED: <xsl:apply-templates/></fo:block>
1202
+ </xsl:template>
1203
+
1204
+ <xsl:template match="csa:definition[preceding-sibling::csa:domain]">
1205
+ <xsl:apply-templates/>
1206
+ </xsl:template>
1207
+ <xsl:template match="csa:definition[preceding-sibling::csa:domain]/csa:p">
1208
+ <fo:inline> <xsl:apply-templates/></fo:inline>
1209
+ <fo:block> </fo:block>
1210
+ </xsl:template>
1211
+
1212
+ <xsl:template match="csa:definition">
1213
+ <fo:block space-after="6pt">
1214
+ <xsl:apply-templates/>
1215
+ </fo:block>
1216
+ </xsl:template>
1217
+
1218
+ <xsl:template match="csa:termsource">
1219
+ <fo:block margin-bottom="12pt" keep-with-previous="always">
1220
+ <!-- Example: [SOURCE: ISO 5127:2017, 3.1.6.02] -->
1221
+ <fo:basic-link internal-destination="{csa:origin/@bibitemid}" fox:alt-text="{csa:origin/@citeas}">
1222
+ <xsl:text>[SOURCE: </xsl:text>
1223
+ <fo:inline text-decoration="underline" color="{$color-link}">
1224
+ <xsl:value-of select="csa:origin/@citeas"/>
1225
+ <xsl:if test="csa:origin/csa:locality/csa:referenceFrom">
1226
+ <xsl:text>, </xsl:text><xsl:value-of select="csa:origin/csa:locality/csa:referenceFrom"/>
1227
+ </xsl:if>
1228
+ </fo:inline>
1229
+ </fo:basic-link>
1230
+ <xsl:apply-templates select="csa:modification"/>
1231
+ <xsl:text>]</xsl:text>
1232
+ </fo:block>
1233
+ </xsl:template>
1234
+
1235
+ <xsl:template match="csa:modification">
1236
+ <xsl:text>, modified — </xsl:text>
1237
+ <xsl:apply-templates/>
1238
+ </xsl:template>
1239
+ <xsl:template match="csa:modification/csa:p">
1240
+ <fo:inline><xsl:apply-templates/></fo:inline>
1241
+ </xsl:template>
1242
+
1243
+ <xsl:template match="csa:termnote">
1244
+ <fo:block font-size="10pt" margin-bottom="12pt">
1245
+ <xsl:text>Note </xsl:text>
1246
+ <xsl:number/>
1247
+ <xsl:text> to entry: </xsl:text>
1248
+ <xsl:apply-templates/>
1249
+ </fo:block>
1250
+ </xsl:template>
1251
+
1252
+ <xsl:template match="csa:termnote/csa:p">
1253
+ <fo:inline><xsl:apply-templates/></fo:inline>
1254
+ </xsl:template>
1255
+
1256
+ <xsl:template match="csa:domain">
1257
+ <fo:inline>&lt;<xsl:apply-templates/>&gt;</fo:inline>
1258
+ </xsl:template>
1259
+
1260
+
1261
+ <xsl:template match="csa:termexample">
1262
+ <fo:block font-size="10pt" margin-bottom="12pt">
1263
+ <fo:inline padding-right="10mm">EXAMPLE</fo:inline>
1264
+ <xsl:apply-templates/>
1265
+ </fo:block>
1266
+ </xsl:template>
1267
+
1268
+ <xsl:template match="csa:termexample/csa:p">
1269
+ <fo:inline><xsl:apply-templates/></fo:inline>
1270
+ </xsl:template>
1271
+
1272
+
1273
+ <xsl:template match="csa:annex">
1274
+ <fo:block break-after="page"/>
1275
+ <xsl:apply-templates/>
1276
+ </xsl:template>
1277
+
1278
+
1279
+ <!-- [position() &gt; 1] -->
1280
+ <xsl:template match="csa:references[@id != '_normative_references' and @id != '_references']">
1281
+ <fo:block break-after="page"/>
1282
+ <fo:block line-height="145%">
1283
+ <xsl:apply-templates/>
1284
+ </fo:block>
1285
+ </xsl:template>
1286
+
1287
+
1288
+ <!-- Example: [1] ISO 9:1995, Information and documentation – Transliteration of Cyrillic characters into Latin characters – Slavic and non-Slavic languages -->
1289
+ <!-- <xsl:template match="csa:references[@id = '_bibliography']/csa:bibitem"> [position() &gt; 1] -->
1290
+ <xsl:template match="csa:references[@id != '_normative_references' and @id != '_references']/csa:bibitem">
1291
+ <fo:block margin-bottom="12pt" line-height="145%">
1292
+ <fo:inline id="{@id}">
1293
+ <xsl:number format="[1]"/>
1294
+ </fo:inline>
1295
+
1296
+ <xsl:if test="not(csa:formattedref)">
1297
+ <xsl:choose>
1298
+ <xsl:when test="csa:contributor[csa:role/@type='publisher']/csa:organization/csa:abbreviation">
1299
+ <xsl:for-each select="csa:contributor[csa:role/@type='publisher']/csa:organization/csa:abbreviation">
1300
+ <xsl:value-of select="."/>
1301
+ <xsl:if test="position() != last()">/</xsl:if>
1302
+ </xsl:for-each>
1303
+ <xsl:text>: </xsl:text>
1304
+ </xsl:when>
1305
+ <xsl:when test="csa:contributor[csa:role/@type='publisher']/csa:organization/csa:name">
1306
+ <xsl:value-of select="csa:contributor[csa:role/@type='publisher']/csa:organization/csa:name"/>
1307
+ <xsl:text>: </xsl:text>
1308
+ </xsl:when>
1309
+ </xsl:choose>
1310
+
1311
+ </xsl:if>
1312
+
1313
+ <xsl:if test="csa:docidentifier">
1314
+ <xsl:choose>
1315
+ <xsl:when test="csa:docidentifier/@type = 'ISO' and csa:formattedref"/>
1316
+ <xsl:when test="csa:docidentifier/@type = 'OGC' and csa:formattedref"/>
1317
+ <xsl:otherwise><fo:inline>
1318
+ <xsl:if test="csa:docidentifier/@type = 'OGC'">OGC </xsl:if>
1319
+ <xsl:value-of select="csa:docidentifier"/><xsl:apply-templates select="csa:note"/>, </fo:inline></xsl:otherwise>
1320
+ </xsl:choose>
1321
+ </xsl:if>
1322
+
1323
+ <xsl:choose>
1324
+ <xsl:when test="csa:title[@type = 'main' and @language = 'en']">
1325
+ <xsl:apply-templates select="csa:title[@type = 'main' and @language = 'en']"/>
1326
+ </xsl:when>
1327
+ <xsl:otherwise>
1328
+ <xsl:apply-templates select="csa:title"/>
1329
+ </xsl:otherwise>
1330
+ </xsl:choose>
1331
+ <xsl:if test="csa:contributor[csa:role/@type='publisher']/csa:organization/csa:name">
1332
+ <xsl:text>, </xsl:text>
1333
+ <xsl:for-each select="csa:contributor[csa:role/@type='publisher']/csa:organization/csa:name">
1334
+ <xsl:if test="position() != last()">and </xsl:if>
1335
+ <xsl:value-of select="."/>
1336
+ </xsl:for-each>
1337
+
1338
+ </xsl:if>
1339
+ <xsl:if test="csa:place">
1340
+ <xsl:text>, </xsl:text>
1341
+ <xsl:value-of select="csa:place"/>
1342
+ </xsl:if>
1343
+ <xsl:if test="csa:date[@type='published']/csa:on">
1344
+ <xsl:text> (</xsl:text><xsl:value-of select="csa:date[@type='published']/csa:on"/><xsl:text>).</xsl:text>
1345
+ </xsl:if>
1346
+ <xsl:apply-templates select="csa:formattedref"/>
1347
+
1348
+
1349
+ </fo:block>
1350
+ </xsl:template>
1351
+
1352
+ <!-- <xsl:template match="csa:references[@id = '_bibliography']/csa:bibitem" mode="contents"/> [position() &gt; 1] -->
1353
+ <xsl:template match="csa:references[@id != '_normative_references' and @id != '_references']/csa:bibitem" mode="contents"/>
1354
+
1355
+ <!-- <xsl:template match="csa:references[@id = '_bibliography']/csa:bibitem/csa:title"> [position() &gt; 1]-->
1356
+ <xsl:template match="csa:references[@id != '_normative_references' and @id != '_references']/csa:bibitem/csa:title">
1357
+ <fo:inline font-style="italic">
1358
+ <xsl:apply-templates/>
1359
+ </fo:inline>
1360
+ </xsl:template>
1361
+
1362
+ <xsl:template match="csa:quote">
1363
+ <fo:block margin-top="12pt" margin-left="13mm" margin-right="12mm">
1364
+ <xsl:apply-templates select=".//csa:p"/>
1365
+ </fo:block>
1366
+ <xsl:if test="csa:author or csa:source">
1367
+ <fo:block text-align="right" margin-right="25mm">
1368
+ <!-- — ISO, ISO 7301:2011, Clause 1 -->
1369
+ <xsl:if test="csa:author">
1370
+ <xsl:text>— </xsl:text><xsl:value-of select="csa:author"/>
1371
+ </xsl:if>
1372
+ <xsl:if test="csa:source">
1373
+ <xsl:text>, </xsl:text>
1374
+ <xsl:apply-templates select="csa:source"/>
1375
+ </xsl:if>
1376
+ </fo:block>
1377
+ </xsl:if>
1378
+ </xsl:template>
1379
+
1380
+ <xsl:template match="csa:source">
1381
+ <fo:basic-link internal-destination="{@bibitemid}" fox:alt-text="{@citeas}">
1382
+ <xsl:value-of select="@citeas" disable-output-escaping="yes"/>
1383
+ <xsl:if test="csa:locality">
1384
+ <xsl:text>, </xsl:text>
1385
+ <xsl:apply-templates select="csa:locality"/>
1386
+ </xsl:if>
1387
+ </fo:basic-link>
1388
+ </xsl:template>
1389
+
1390
+ <xsl:template match="csa:appendix">
1391
+ <fo:block font-size="12pt" font-weight="bold" margin-top="12pt" margin-bottom="12pt">
1392
+ <fo:inline padding-right="5mm">Appendix <xsl:number/></fo:inline>
1393
+ <xsl:apply-templates select="csa:title" mode="process"/>
1394
+ </fo:block>
1395
+ <xsl:apply-templates/>
1396
+ </xsl:template>
1397
+
1398
+ <xsl:template match="csa:appendix//csa:example">
1399
+ <fo:block font-size="10pt" margin-bottom="12pt">
1400
+ <xsl:text>EXAMPLE</xsl:text>
1401
+ <xsl:if test="csa:name">
1402
+ <xsl:text> — </xsl:text><xsl:apply-templates select="csa:name" mode="process"/>
1403
+ </xsl:if>
1404
+ </fo:block>
1405
+ <xsl:apply-templates/>
1406
+ </xsl:template>
1407
+
1408
+ <xsl:template match="csa:appendix//csa:example/csa:name"/>
1409
+ <xsl:template match="csa:appendix//csa:example/csa:name" mode="process">
1410
+ <fo:inline><xsl:apply-templates/></fo:inline>
1411
+ </xsl:template>
1412
+
1413
+ <xsl:template match="csa:callout">
1414
+ <fo:basic-link internal-destination="{@target}" fox:alt-text="{@target}">&lt;<xsl:apply-templates/>&gt;</fo:basic-link>
1415
+ </xsl:template>
1416
+
1417
+ <xsl:template match="csa:annotation">
1418
+ <fo:block>
1419
+
1420
+ </fo:block>
1421
+ <xsl:apply-templates/>
1422
+ </xsl:template>
1423
+
1424
+ <xsl:template match="csa:annotation/text()"/>
1425
+
1426
+ <xsl:template match="csa:annotation/csa:p">
1427
+ <xsl:variable name="annotation-id" select="../@id"/>
1428
+ <xsl:variable name="callout" select="//*[@target = $annotation-id]/text()"/>
1429
+ <fo:block id="{$annotation-id}">
1430
+ <xsl:value-of select="concat('&lt;', $callout, '&gt; ')"/>
1431
+ <xsl:apply-templates/>
1432
+ </fo:block>
1433
+ </xsl:template>
1434
+
1435
+
1436
+ <xsl:template match="csa:appendix/csa:title"/>
1437
+ <xsl:template match="csa:appendix/csa:title" mode="process">
1438
+ <fo:inline><xsl:apply-templates/></fo:inline>
1439
+ </xsl:template>
1440
+
1441
+
1442
+ <xsl:template match="csa:xref">
1443
+ <fo:basic-link internal-destination="{@target}" fox:alt-text="{@target}">
1444
+ <xsl:variable name="section" select="xalan:nodeset($contents)//item[@id = current()/@target]/@section"/>
1445
+ <!-- <xsl:if test="not(starts-with($section, 'Figure') or starts-with($section, 'Table'))"> -->
1446
+ <!-- <xsl:attribute name="color">blue</xsl:attribute> -->
1447
+ <xsl:attribute name="text-decoration">underline</xsl:attribute>
1448
+ <!-- </xsl:if> -->
1449
+ <xsl:variable name="type" select="xalan:nodeset($contents)//item[@id = current()/@target]/@type"/>
1450
+ <xsl:variable name="root" select="xalan:nodeset($contents)//item[@id = current()/@target]/@root"/>
1451
+
1452
+ <xsl:choose>
1453
+ <xsl:when test="normalize-space(.) != ''">
1454
+ <xsl:apply-templates/>
1455
+ </xsl:when>
1456
+ <xsl:otherwise>
1457
+ <xsl:choose>
1458
+ <xsl:when test="$type = 'clause' and $root != 'annex'">Clause </xsl:when><!-- and not (ancestor::annex) -->
1459
+ <xsl:when test="$type = 'term' and ($root = 'clause' or $root = 'terms')">Clause </xsl:when>
1460
+ <xsl:when test="$type = 'clause' and $root = 'annex'">Annex </xsl:when>
1461
+ <xsl:otherwise/> <!-- <xsl:value-of select="$type"/> -->
1462
+ </xsl:choose>
1463
+ <xsl:value-of select="$section"/>
1464
+ </xsl:otherwise>
1465
+ </xsl:choose>
1466
+ </fo:basic-link>
1467
+ </xsl:template>
1468
+
1469
+ <xsl:template match="csa:sourcecode">
1470
+ <fo:block font-family="SourceCodePro" font-size="10pt" margin-bottom="6pt" keep-with-next="always" line-height="113%">
1471
+ <xsl:choose>
1472
+ <xsl:when test="@lang = 'en'"/>
1473
+ <xsl:otherwise>
1474
+ <xsl:attribute name="white-space">pre</xsl:attribute>
1475
+ <xsl:attribute name="wrap-option">wrap</xsl:attribute>
1476
+ </xsl:otherwise>
1477
+ </xsl:choose>
1478
+ <xsl:apply-templates/>
1479
+ </fo:block>
1480
+ <xsl:choose>
1481
+ <xsl:when test="@unnumbered='true'"/>
1482
+ <xsl:when test="ancestor::csa:example"/>
1483
+ <xsl:when test="ancestor::csa:td"/>
1484
+ <xsl:when test="ancestor::csa:annex">
1485
+ <xsl:variable name="id_annex" select="ancestor::csa:annex/@id"/>
1486
+ <xsl:choose>
1487
+ <xsl:when test="count(//csa:annex) = 1">
1488
+ <xsl:value-of select="/csa:nist-standard/csa:bibdata/csa:ext/csa:structuredidentifier/csa:annexid"/><xsl:number format="-1" level="any" count="csa:annex//csa:sourcecode"/>
1489
+ </xsl:when>
1490
+ <xsl:otherwise>
1491
+ <fo:block font-size="11pt" font-weight="bold" text-align="center" margin-bottom="12pt">
1492
+ <xsl:text>Figure </xsl:text>
1493
+ <xsl:number format="A." level="multiple" count="csa:annex"/>
1494
+ <xsl:number format="1" level="any" count="csa:sourcecode[ancestor::csa:annex/@id = $id_annex and not(@unnumbered='true') and not(ancestor::csa:example)]"/>
1495
+ <xsl:if test="csa:name">
1496
+ <xsl:text> — </xsl:text>
1497
+ <xsl:apply-templates select="csa:name/*"/>
1498
+ </xsl:if>
1499
+ </fo:block>
1500
+ </xsl:otherwise>
1501
+ </xsl:choose>
1502
+ </xsl:when>
1503
+ <xsl:otherwise>
1504
+ <fo:block font-size="11pt" font-weight="bold" text-align="center" margin-bottom="12pt">
1505
+ <xsl:text>Figure </xsl:text>
1506
+ <xsl:number format="1" level="any" count="csa:sourcecode[not(@unnumbered='true') and not(ancestor::csa:example)] | csa:figure"/>
1507
+ <xsl:if test="csa:name">
1508
+ <xsl:text> — </xsl:text>
1509
+ <xsl:apply-templates select="csa:name/*"/>
1510
+ </xsl:if>
1511
+ </fo:block>
1512
+ </xsl:otherwise>
1513
+ </xsl:choose>
1514
+ </xsl:template>
1515
+
1516
+ <xsl:template match="csa:sourcecode/text()">
1517
+ <xsl:variable name="text">
1518
+ <xsl:call-template name="add-zero-spaces-equal"/>
1519
+ </xsl:variable>
1520
+ <xsl:call-template name="add-zero-spaces">
1521
+ <xsl:with-param name="text" select="$text"/>
1522
+ </xsl:call-template>
1523
+ </xsl:template>
1524
+
1525
+ <xsl:template match="csa:sourcecode/csa:name"/>
1526
+
1527
+ <xsl:template match="csa:tt" priority="2">
1528
+ <fo:inline font-family="SourceCodePro" font-size="10pt">
1529
+ <xsl:apply-templates/>
1530
+ </fo:inline>
1531
+ </xsl:template>
1532
+
1533
+ <xsl:template match="csa:example">
1534
+ <fo:block font-size="10pt" margin-top="12pt" margin-bottom="12pt" font-weight="bold" keep-with-next="always">
1535
+ <xsl:text>EXAMPLE</xsl:text>
1536
+ <xsl:if test="following-sibling::csa:example or preceding-sibling::csa:example">
1537
+ <xsl:number format=" 1"/>
1538
+ </xsl:if>
1539
+ <xsl:if test="csa:name">
1540
+ <xsl:text> — </xsl:text>
1541
+ <xsl:apply-templates select="csa:name/node()"/>
1542
+ </xsl:if>
1543
+ </fo:block>
1544
+ <fo:block font-size="10pt" margin-left="12.5mm" margin-right="12.5mm">
1545
+ <xsl:apply-templates/>
1546
+ </fo:block>
1547
+ </xsl:template>
1548
+
1549
+ <xsl:template match="csa:example/csa:name"/>
1550
+
1551
+ <xsl:template match="csa:example/csa:p">
1552
+ <fo:block margin-bottom="14pt">
1553
+ <xsl:apply-templates/>
1554
+ </fo:block>
1555
+ </xsl:template>
1556
+
1557
+
1558
+ <xsl:template match="csa:note/csa:p" name="note">
1559
+ <fo:block font-size="10pt" margin-top="12pt" margin-bottom="12pt" line-height="115%">
1560
+ <xsl:if test="ancestor::csa:ul or ancestor::csa:ol and not(ancestor::csa:note[1]/following-sibling::*)">
1561
+ <xsl:attribute name="margin-bottom">0pt</xsl:attribute>
1562
+ </xsl:if>
1563
+ <xsl:variable name="clauseid" select="ancestor::csa:clause[1]/@id"/>
1564
+ <fo:inline padding-right="4mm">
1565
+ <xsl:text>NOTE </xsl:text>
1566
+ <xsl:if test="count(//csa:note[ancestor::csa:clause[1][@id = $clauseid]]) &gt; 1">
1567
+ <xsl:number count="csa:note[ancestor::csa:clause[1][@id = $clauseid]]" level="any"/>
1568
+ </xsl:if>
1569
+ </fo:inline>
1570
+ <xsl:apply-templates/>
1571
+ </fo:block>
1572
+ </xsl:template>
1573
+
1574
+ <!-- <eref type="inline" bibitemid="ISO20483" citeas="ISO 20483:2013"><locality type="annex"><referenceFrom>C</referenceFrom></locality></eref> -->
1575
+ <xsl:template match="csa:eref">
1576
+ <fo:basic-link internal-destination="{@bibitemid}" fox:alt-text="{@citeas}" text-decoration="underline" color="{$color-link}"> <!-- font-size="9pt" color="blue" vertical-align="super" -->
1577
+ <xsl:if test="@type = 'footnote'">
1578
+ <xsl:attribute name="keep-together.within-line">always</xsl:attribute>
1579
+ <xsl:attribute name="font-size">80%</xsl:attribute>
1580
+ <xsl:attribute name="keep-with-previous.within-line">always</xsl:attribute>
1581
+ <xsl:attribute name="vertical-align">super</xsl:attribute>
1582
+ </xsl:if>
1583
+ <xsl:choose>
1584
+ <xsl:when test="@citeas and normalize-space(text()) = ''">
1585
+ <xsl:value-of select="@citeas" disable-output-escaping="yes"/>
1586
+ </xsl:when>
1587
+ <xsl:when test="@bibitemid and normalize-space(text()) = ''">
1588
+ <xsl:value-of select="//csa:bibitem[@id = current()/@bibitemid]/csa:docidentifier"/>
1589
+ </xsl:when>
1590
+ <xsl:otherwise/>
1591
+ </xsl:choose>
1592
+ <xsl:if test="csa:locality">
1593
+ <xsl:text>, </xsl:text>
1594
+ <!-- <xsl:choose>
1595
+ <xsl:when test="csa:locality/@type = 'section'">Section </xsl:when>
1596
+ <xsl:when test="csa:locality/@type = 'clause'">Clause </xsl:when>
1597
+ <xsl:otherwise></xsl:otherwise>
1598
+ </xsl:choose> -->
1599
+ <xsl:apply-templates select="csa:locality"/>
1600
+ </xsl:if>
1601
+ <xsl:apply-templates select="text()"/>
1602
+ </fo:basic-link>
1603
+ </xsl:template>
1604
+
1605
+ <xsl:template match="csa:locality">
1606
+ <xsl:choose>
1607
+ <xsl:when test="@type ='clause'">Clause </xsl:when>
1608
+ <xsl:when test="@type ='annex'">Annex </xsl:when>
1609
+ <xsl:otherwise><xsl:value-of select="@type"/></xsl:otherwise>
1610
+ </xsl:choose>
1611
+ <xsl:text> </xsl:text><xsl:value-of select="csa:referenceFrom"/>
1612
+ </xsl:template>
1613
+
1614
+ <xsl:template match="csa:admonition">
1615
+ <fo:block-container border="0.5pt solid rgb(79, 129, 189)" color="rgb(79, 129, 189)" margin-left="16mm" margin-right="16mm" margin-bottom="12pt">
1616
+ <fo:block-container margin-left="0mm" margin-right="0mm" padding="2mm" padding-top="3mm">
1617
+ <fo:block font-size="11pt" margin-bottom="6pt" font-weight="bold" font-style="italic" text-align="center">
1618
+ <xsl:value-of select="translate(@type, $lower, $upper)"/>
1619
+ </fo:block>
1620
+ <fo:block font-style="italic">
1621
+ <xsl:apply-templates/>
1622
+ </fo:block>
1623
+ </fo:block-container>
1624
+ </fo:block-container>
1625
+
1626
+
1627
+ </xsl:template>
1628
+
1629
+ <xsl:template match="csa:formula/csa:dt/csa:stem">
1630
+ <fo:inline>
1631
+ <xsl:apply-templates/>
1632
+ </fo:inline>
1633
+ </xsl:template>
1634
+
1635
+ <xsl:template match="csa:formula/csa:stem">
1636
+ <fo:block id="{../@id}" margin-top="6pt" margin-bottom="12pt">
1637
+ <fo:table table-layout="fixed" width="100%">
1638
+ <fo:table-column column-width="95%"/>
1639
+ <fo:table-column column-width="5%"/>
1640
+ <fo:table-body>
1641
+ <fo:table-row>
1642
+ <fo:table-cell display-align="center">
1643
+ <fo:block text-align="left" margin-left="5mm">
1644
+ <xsl:apply-templates/>
1645
+ </fo:block>
1646
+ </fo:table-cell>
1647
+ <fo:table-cell display-align="center">
1648
+ <fo:block text-align="right">
1649
+ <xsl:choose>
1650
+ <xsl:when test="ancestor::csa:annex">
1651
+ <xsl:text>(</xsl:text><xsl:number format="A.1" level="multiple" count="csa:annex | csa:formula"/><xsl:text>)</xsl:text>
1652
+ </xsl:when>
1653
+ <xsl:otherwise> <!-- not(ancestor::csa:annex) -->
1654
+ <!-- <xsl:text>(</xsl:text><xsl:number level="any" count="csa:formula"/><xsl:text>)</xsl:text> -->
1655
+ </xsl:otherwise>
1656
+ </xsl:choose>
1657
+ </fo:block>
1658
+ </fo:table-cell>
1659
+ </fo:table-row>
1660
+ </fo:table-body>
1661
+ </fo:table>
1662
+ <fo:inline keep-together.within-line="always">
1663
+ </fo:inline>
1664
+ </fo:block>
1665
+ </xsl:template>
1666
+
1667
+
1668
+ <xsl:template match="csa:br" priority="2">
1669
+ <!-- <fo:block>&#xA0;</fo:block> -->
1670
+ <xsl:value-of select="$linebreak"/>
1671
+ </xsl:template>
1672
+
1673
+ <xsl:template match="csa:pagebreak">
1674
+ <fo:block break-after="page"/>
1675
+ <fo:block> </fo:block>
1676
+ <fo:block break-after="page"/>
1677
+ </xsl:template>
1678
+
1679
+ <xsl:template match="csa:bookmark">
1680
+ <fo:inline id="{@id}"/>
1681
+ </xsl:template>
1682
+
1683
+ <xsl:template name="insertHeaderFooter">
1684
+ <fo:static-content flow-name="header">
1685
+ <fo:block-container height="2.5mm" background-color="{$color-header-document}">
1686
+ <fo:block font-size="1pt"> </fo:block>
1687
+ </fo:block-container>
1688
+ </fo:static-content>
1689
+ <fo:static-content flow-name="footer">
1690
+ <fo:block-container font-family="AzoSans-Light" font-size="10.1pt" height="100%" display-align="after"> <!-- 11.5pt -->
1691
+ <fo:block padding-bottom="13mm" text-align="right" color="rgb(144, 144, 144)">
1692
+ <fo:inline padding-right="7mm"><xsl:value-of select="$copyright"/></fo:inline>
1693
+ <fo:page-number/>
1694
+ </fo:block>
1695
+ </fo:block-container>
1696
+ </fo:static-content>
1697
+ </xsl:template>
1698
+
1699
+ <xsl:template name="getId">
1700
+ <xsl:choose>
1701
+ <xsl:when test="../@id">
1702
+ <xsl:value-of select="../@id"/>
1703
+ </xsl:when>
1704
+ <xsl:otherwise>
1705
+ <xsl:value-of select="text()"/>
1706
+ </xsl:otherwise>
1707
+ </xsl:choose>
1708
+ </xsl:template>
1709
+
1710
+ <xsl:template name="getLevel">
1711
+ <xsl:variable name="level_total" select="count(ancestor::*)"/>
1712
+ <xsl:variable name="level">
1713
+ <xsl:choose>
1714
+ <xsl:when test="ancestor::csa:preface">
1715
+ <xsl:value-of select="$level_total - 2"/>
1716
+ </xsl:when>
1717
+ <xsl:when test="ancestor::csa:sections">
1718
+ <xsl:value-of select="$level_total - 2"/>
1719
+ </xsl:when>
1720
+ <xsl:when test="ancestor::csa:bibliography">
1721
+ <xsl:value-of select="$level_total - 2"/>
1722
+ </xsl:when>
1723
+ <xsl:when test="local-name(ancestor::*[1]) = 'annex'">1</xsl:when>
1724
+ <xsl:otherwise>
1725
+ <xsl:value-of select="$level_total - 1"/>
1726
+ </xsl:otherwise>
1727
+ </xsl:choose>
1728
+ </xsl:variable>
1729
+ <xsl:value-of select="$level"/>
1730
+ </xsl:template>
1731
+
1732
+ <xsl:template name="getSection">
1733
+ <xsl:param name="sectionNum"/>
1734
+ <xsl:variable name="level">
1735
+ <xsl:call-template name="getLevel"/>
1736
+ </xsl:variable>
1737
+ <xsl:variable name="section">
1738
+ <xsl:choose>
1739
+ <xsl:when test="ancestor::csa:bibliography">
1740
+ <xsl:value-of select="$sectionNum"/>
1741
+ </xsl:when>
1742
+ <xsl:when test="ancestor::csa:sections">
1743
+ <!-- 1, 2, 3, 4, ... from main section (not annex, bibliography, ...) -->
1744
+ <xsl:choose>
1745
+ <xsl:when test="$level = 1">
1746
+ <xsl:value-of select="$sectionNum"/>
1747
+ </xsl:when>
1748
+ <xsl:when test="$level &gt;= 2">
1749
+ <xsl:variable name="num">
1750
+ <xsl:number format=".1" level="multiple" count="csa:clause/csa:clause | csa:clause/csa:terms | csa:terms/csa:term | csa:clause/csa:term | csa:clause/csa:definitions | csa:definitions/csa:definitions | csa:terms/csa:definitions"/>
1751
+ </xsl:variable>
1752
+ <xsl:value-of select="concat($sectionNum, $num)"/>
1753
+ </xsl:when>
1754
+ <xsl:otherwise>
1755
+ <!-- z<xsl:value-of select="$sectionNum"/>z -->
1756
+ </xsl:otherwise>
1757
+ </xsl:choose>
1758
+ <!-- <xsl:text>.</xsl:text> -->
1759
+ </xsl:when>
1760
+ <!-- <xsl:when test="ancestor::csa:annex[@obligation = 'informative']">
1761
+ <xsl:choose>
1762
+ <xsl:when test="$level = 1">
1763
+ <xsl:text>Annex </xsl:text>
1764
+ <xsl:number format="I" level="any" count="csa:annex[@obligation = 'informative']"/>
1765
+ </xsl:when>
1766
+ <xsl:otherwise>
1767
+ <xsl:number format="I.1" level="multiple" count="csa:annex[@obligation = 'informative'] | csa:clause"/>
1768
+ </xsl:otherwise>
1769
+ </xsl:choose>
1770
+ </xsl:when> -->
1771
+ <xsl:when test="ancestor::csa:annex">
1772
+ <xsl:choose>
1773
+ <xsl:when test="$level = 1">
1774
+ <xsl:text>Annex </xsl:text>
1775
+ <xsl:choose>
1776
+ <xsl:when test="count(//csa:annex) = 1">
1777
+ <xsl:value-of select="/csa:csa-standard/csa:bibdata/csa:ext/csa:structuredidentifier/csa:annexid"/>
1778
+ </xsl:when>
1779
+ <xsl:otherwise>
1780
+ <xsl:number format="A" level="any" count="csa:annex"/>
1781
+ </xsl:otherwise>
1782
+ </xsl:choose>
1783
+ </xsl:when>
1784
+ <xsl:otherwise>
1785
+ <xsl:choose>
1786
+ <xsl:when test="count(//csa:annex) = 1">
1787
+ <xsl:value-of select="/csa:csa-standard/csa:bibdata/csa:ext/csa:structuredidentifier/csa:annexid"/><xsl:number format=".1" level="multiple" count="csa:clause"/>
1788
+ </xsl:when>
1789
+ <xsl:otherwise>
1790
+ <xsl:number format="A.1" level="multiple" count="csa:annex | csa:clause"/>
1791
+ </xsl:otherwise>
1792
+ </xsl:choose>
1793
+ </xsl:otherwise>
1794
+ </xsl:choose>
1795
+ </xsl:when>
1796
+ <xsl:when test="ancestor::csa:preface"> <!-- if preface and there is clause(s) -->
1797
+ <xsl:choose>
1798
+ <xsl:when test="$level = 1 and ..//csa:clause">0</xsl:when>
1799
+ <xsl:when test="$level &gt;= 2">
1800
+ <xsl:variable name="num">
1801
+ <xsl:number format=".1" level="multiple" count="csa:clause"/>
1802
+ </xsl:variable>
1803
+ <xsl:value-of select="concat('0', $num)"/>
1804
+ </xsl:when>
1805
+ <xsl:otherwise>
1806
+ <!-- z<xsl:value-of select="$sectionNum"/>z -->
1807
+ </xsl:otherwise>
1808
+ </xsl:choose>
1809
+ </xsl:when>
1810
+ <xsl:otherwise>
1811
+ </xsl:otherwise>
1812
+ </xsl:choose>
1813
+ </xsl:variable>
1814
+ <xsl:value-of select="$section"/>
1815
+ </xsl:template>
1816
+
1817
+ <xsl:variable name="Image-Logo">
1818
+ <xsl:text>iVBORw0KGgoAAAANSUhEUgAAA+AAAAFsCAYAAABMytP3AAAAGXRFWHRTb2Z0d2FyZQBBZG9i
1819
+ ZSBJbWFnZVJlYWR5ccllPAAAA3BpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tl
1820
+ dCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1l
1821
+ dGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUu
1822
+ Ni1jMDE0IDc5LjE1Njc5NywgMjAxNC8wOC8yMC0wOTo1MzowMiAgICAgICAgIj4gPHJkZjpS
1823
+ REYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgt
1824
+ bnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6
1825
+ Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRv
1826
+ YmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9u
1827
+ cy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRp
1828
+ ZDplYWRhN2RlNC04YzAyLTQ1N2UtYjUwNy0zNGYzY2RjNWE2ZGQiIHhtcE1NOkRvY3VtZW50
1829
+ SUQ9InhtcC5kaWQ6NkU5NEE5NUY3NjVBMTFFQUFGNTc5RUZEMzQzODM4QzgiIHhtcE1NOklu
1830
+ c3RhbmNlSUQ9InhtcC5paWQ6NkU5NEE5NUU3NjVBMTFFQUFGNTc5RUZEMzQzODM4QzgiIHht
1831
+ cDpDcmVhdG9yVG9vbD0iQWRvYmUgSW5EZXNpZ24gMTQuMCAoTWFjaW50b3NoKSI+IDx4bXBN
1832
+ TTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ1dWlkOmQ1MDMzN2Q0LTBkZmItYzI0
1833
+ MS1iZTY2LWI3M2VlMWI2NWE4MyIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmlkOmJhMmE0NmVk
1834
+ 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
2766
+ JP5/AQYA3Lt5kGz07MoAAAAASUVORK5CYII=
2767
+ </xsl:text>
2768
+ </xsl:variable>
2769
+
2770
+ <xsl:variable name="Title-Image">
2771
+ <xsl:text>iVBORw0KGgoAAAANSUhEUgAAASEAAAEhCAYAAAAwHRYbAAAAGXRFWHRTb2Z0d2FyZQBBZG9i
2772
+ ZSBJbWFnZVJlYWR5ccllPAAAA3BpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tl
2773
+ dCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1l
2774
+ dGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUu
2775
+ Ni1jMDE0IDc5LjE1Njc5NywgMjAxNC8wOC8yMC0wOTo1MzowMiAgICAgICAgIj4gPHJkZjpS
2776
+ REYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgt
2777
+ bnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6
2778
+ Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRv
2779
+ YmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9u
2780
+ cy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRp
2781
+ ZDplYWRhN2RlNC04YzAyLTQ1N2UtYjUwNy0zNGYzY2RjNWE2ZGQiIHhtcE1NOkRvY3VtZW50
2782
+ SUQ9InhtcC5kaWQ6MDUyNzBENDc3NjVCMTFFQTlDMDhGMEI2ODhENjUxQkIiIHhtcE1NOklu
2783
+ c3RhbmNlSUQ9InhtcC5paWQ6MDUyNzBENDY3NjVCMTFFQTlDMDhGMEI2ODhENjUxQkIiIHht
2784
+ cDpDcmVhdG9yVG9vbD0iQWRvYmUgSW5EZXNpZ24gMTQuMCAoTWFjaW50b3NoKSI+IDx4bXBN
2785
+ TTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ1dWlkOmZiZjFiODZmLTIzMjMtM2U0
2786
+ OS1hMDMzLTVlOGQxYThlNmI1YiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmlkOjFlMzVjZTE3
2787
+ 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
3046
+ AElFTkSuQmCC
3047
+ </xsl:text>
3048
+ </xsl:variable>
3049
+
3050
+ <xsl:variable xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="lower">abcdefghijklmnopqrstuvwxyz</xsl:variable><xsl:variable xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="upper">ABCDEFGHIJKLMNOPQRSTUVWXYZ</xsl:variable><xsl:variable xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="en_chars" select="concat($lower,$upper,',.`1234567890-=~!@#$%^*()_+[]{}\|?/')"/><xsl:variable xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="linebreak" select="'&#8232;'"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="text()">
3051
+ <xsl:value-of select="."/>
3052
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='br']">
3053
+ <xsl:value-of select="$linebreak"/>
3054
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='td']//text() | *[local-name()='th']//text()" priority="1">
3055
+ <xsl:call-template name="add-zero-spaces"/>
3056
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='table']">
3057
+
3058
+ <xsl:variable name="simple-table">
3059
+ <!-- <xsl:copy> -->
3060
+ <xsl:call-template name="getSimpleTable"/>
3061
+ <!-- </xsl:copy> -->
3062
+ </xsl:variable>
3063
+
3064
+ <!-- DEBUG -->
3065
+ <!-- SourceTable=<xsl:copy-of select="current()"/>EndSourceTable -->
3066
+ <!-- Simpletable=<xsl:copy-of select="$simple-table"/>EndSimpltable -->
3067
+
3068
+ <!-- <xsl:variable name="namespace" select="substring-before(name(/*), '-')"/> -->
3069
+
3070
+
3071
+
3072
+ <xsl:choose>
3073
+ <xsl:when test="@unnumbered = 'true'"/>
3074
+ <xsl:otherwise>
3075
+
3076
+
3077
+
3078
+
3079
+ </xsl:otherwise>
3080
+ </xsl:choose>
3081
+
3082
+ <xsl:variable name="cols-count" select="count(xalan:nodeset($simple-table)//tr[1]/td)"/>
3083
+
3084
+ <!-- <xsl:variable name="cols-count">
3085
+ <xsl:choose>
3086
+ <xsl:when test="*[local-name()='thead']">
3087
+ <xsl:call-template name="calculate-columns-numbers">
3088
+ <xsl:with-param name="table-row" select="*[local-name()='thead']/*[local-name()='tr'][1]"/>
3089
+ </xsl:call-template>
3090
+ </xsl:when>
3091
+ <xsl:otherwise>
3092
+ <xsl:call-template name="calculate-columns-numbers">
3093
+ <xsl:with-param name="table-row" select="*[local-name()='tbody']/*[local-name()='tr'][1]"/>
3094
+ </xsl:call-template>
3095
+ </xsl:otherwise>
3096
+ </xsl:choose>
3097
+ </xsl:variable> -->
3098
+ <!-- cols-count=<xsl:copy-of select="$cols-count"/> -->
3099
+ <!-- cols-count2=<xsl:copy-of select="$cols-count2"/> -->
3100
+
3101
+
3102
+
3103
+ <xsl:variable name="colwidths">
3104
+ <xsl:call-template name="calculate-column-widths">
3105
+ <xsl:with-param name="cols-count" select="$cols-count"/>
3106
+ <xsl:with-param name="table" select="$simple-table"/>
3107
+ </xsl:call-template>
3108
+ </xsl:variable>
3109
+
3110
+ <xsl:variable name="colwidths2">
3111
+ <xsl:call-template name="calculate-column-widths">
3112
+ <xsl:with-param name="cols-count" select="$cols-count"/>
3113
+ </xsl:call-template>
3114
+ </xsl:variable>
3115
+
3116
+ <!-- cols-count=<xsl:copy-of select="$cols-count"/>
3117
+ colwidthsNew=<xsl:copy-of select="$colwidths"/>
3118
+ colwidthsOld=<xsl:copy-of select="$colwidths2"/>z -->
3119
+
3120
+ <xsl:variable name="margin-left">
3121
+ <xsl:choose>
3122
+ <xsl:when test="sum(xalan:nodeset($colwidths)//column) &gt; 75">15</xsl:when>
3123
+ <xsl:otherwise>0</xsl:otherwise>
3124
+ </xsl:choose>
3125
+ </xsl:variable>
3126
+
3127
+ <fo:block-container margin-left="-{$margin-left}mm" margin-right="-{$margin-left}mm">
3128
+
3129
+
3130
+
3131
+
3132
+
3133
+
3134
+ <fo:table id="{@id}" table-layout="fixed" width="100%" margin-left="{$margin-left}mm" margin-right="{$margin-left}mm">
3135
+
3136
+
3137
+
3138
+
3139
+
3140
+
3141
+
3142
+
3143
+
3144
+ <xsl:for-each select="xalan:nodeset($colwidths)//column">
3145
+ <xsl:choose>
3146
+ <xsl:when test=". = 1">
3147
+ <fo:table-column column-width="proportional-column-width(2)"/>
3148
+ </xsl:when>
3149
+ <xsl:otherwise>
3150
+ <fo:table-column column-width="proportional-column-width({.})"/>
3151
+ </xsl:otherwise>
3152
+ </xsl:choose>
3153
+ </xsl:for-each>
3154
+ <xsl:apply-templates/>
3155
+ </fo:table>
3156
+ </fo:block-container>
3157
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='table']/*[local-name()='name']"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='table']/*[local-name()='name']" mode="process">
3158
+ <xsl:apply-templates/>
3159
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="calculate-columns-numbers">
3160
+ <xsl:param name="table-row"/>
3161
+ <xsl:variable name="columns-count" select="count($table-row/*)"/>
3162
+ <xsl:variable name="sum-colspans" select="sum($table-row/*/@colspan)"/>
3163
+ <xsl:variable name="columns-with-colspan" select="count($table-row/*[@colspan])"/>
3164
+ <xsl:value-of select="$columns-count + $sum-colspans - $columns-with-colspan"/>
3165
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="calculate-column-widths">
3166
+ <xsl:param name="table"/>
3167
+ <xsl:param name="cols-count"/>
3168
+ <xsl:param name="curr-col" select="1"/>
3169
+ <xsl:param name="width" select="0"/>
3170
+
3171
+ <xsl:if test="$curr-col &lt;= $cols-count">
3172
+ <xsl:variable name="widths">
3173
+ <xsl:choose>
3174
+ <xsl:when test="not($table)">
3175
+ <xsl:for-each select="*[local-name()='thead']//*[local-name()='tr']">
3176
+ <xsl:variable name="words">
3177
+ <xsl:call-template name="tokenize">
3178
+ <xsl:with-param name="text" select="translate(*[local-name()='th'][$curr-col],'- —:', ' ')"/>
3179
+ </xsl:call-template>
3180
+ </xsl:variable>
3181
+ <xsl:variable name="max_length">
3182
+ <xsl:call-template name="max_length">
3183
+ <xsl:with-param name="words" select="xalan:nodeset($words)"/>
3184
+ </xsl:call-template>
3185
+ </xsl:variable>
3186
+ <width>
3187
+ <xsl:value-of select="$max_length"/>
3188
+ </width>
3189
+ </xsl:for-each>
3190
+ <xsl:for-each select="*[local-name()='tbody']//*[local-name()='tr']">
3191
+ <xsl:variable name="words">
3192
+ <xsl:call-template name="tokenize">
3193
+ <xsl:with-param name="text" select="translate(*[local-name()='td'][$curr-col],'- —:', ' ')"/>
3194
+ </xsl:call-template>
3195
+ </xsl:variable>
3196
+ <xsl:variable name="max_length">
3197
+ <xsl:call-template name="max_length">
3198
+ <xsl:with-param name="words" select="xalan:nodeset($words)"/>
3199
+ </xsl:call-template>
3200
+ </xsl:variable>
3201
+ <width>
3202
+ <xsl:value-of select="$max_length"/>
3203
+ </width>
3204
+
3205
+ </xsl:for-each>
3206
+ </xsl:when>
3207
+ <xsl:otherwise>
3208
+ <xsl:for-each select="xalan:nodeset($table)//tr">
3209
+ <xsl:variable name="words">
3210
+ <xsl:call-template name="tokenize">
3211
+ <xsl:with-param name="text" select="translate(td[$curr-col],'- —:', ' ')"/>
3212
+ </xsl:call-template>
3213
+ </xsl:variable>
3214
+ <xsl:variable name="max_length">
3215
+ <xsl:call-template name="max_length">
3216
+ <xsl:with-param name="words" select="xalan:nodeset($words)"/>
3217
+ </xsl:call-template>
3218
+ </xsl:variable>
3219
+ <width>
3220
+ <xsl:variable name="divider">
3221
+ <xsl:choose>
3222
+ <xsl:when test="td[$curr-col]/@divide">
3223
+ <xsl:value-of select="td[$curr-col]/@divide"/>
3224
+ </xsl:when>
3225
+ <xsl:otherwise>1</xsl:otherwise>
3226
+ </xsl:choose>
3227
+ </xsl:variable>
3228
+ <xsl:value-of select="$max_length div $divider"/>
3229
+ </width>
3230
+
3231
+ </xsl:for-each>
3232
+
3233
+ </xsl:otherwise>
3234
+ </xsl:choose>
3235
+ </xsl:variable>
3236
+
3237
+
3238
+ <column>
3239
+ <xsl:for-each select="xalan:nodeset($widths)//width">
3240
+ <xsl:sort select="." data-type="number" order="descending"/>
3241
+ <xsl:if test="position()=1">
3242
+ <xsl:value-of select="."/>
3243
+ </xsl:if>
3244
+ </xsl:for-each>
3245
+ </column>
3246
+ <xsl:call-template name="calculate-column-widths">
3247
+ <xsl:with-param name="cols-count" select="$cols-count"/>
3248
+ <xsl:with-param name="curr-col" select="$curr-col +1"/>
3249
+ <xsl:with-param name="table" select="$table"/>
3250
+ </xsl:call-template>
3251
+ </xsl:if>
3252
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='table2']"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='thead']"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='thead']" mode="process">
3253
+ <!-- <fo:table-header font-weight="bold">
3254
+ <xsl:apply-templates />
3255
+ </fo:table-header> -->
3256
+ <xsl:apply-templates/>
3257
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='tfoot']"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='tfoot']" mode="process">
3258
+ <xsl:apply-templates/>
3259
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='tbody']">
3260
+ <xsl:variable name="cols-count">
3261
+ <xsl:choose>
3262
+ <xsl:when test="../*[local-name()='thead']">
3263
+ <!-- <xsl:value-of select="count(../*[local-name()='thead']/*[local-name()='tr']/*[local-name()='th'])"/> -->
3264
+ <xsl:call-template name="calculate-columns-numbers">
3265
+ <xsl:with-param name="table-row" select="../*[local-name()='thead']/*[local-name()='tr'][1]"/>
3266
+ </xsl:call-template>
3267
+ </xsl:when>
3268
+ <xsl:otherwise>
3269
+ <!-- <xsl:value-of select="count(./*[local-name()='tr'][1]/*[local-name()='td'])"/> -->
3270
+ <xsl:call-template name="calculate-columns-numbers">
3271
+ <xsl:with-param name="table-row" select="./*[local-name()='tr'][1]"/>
3272
+ </xsl:call-template>
3273
+ </xsl:otherwise>
3274
+ </xsl:choose>
3275
+ </xsl:variable>
3276
+
3277
+ <fo:table-body>
3278
+ <xsl:apply-templates select="../*[local-name()='thead']" mode="process"/>
3279
+ <xsl:apply-templates/>
3280
+ <xsl:apply-templates select="../*[local-name()='tfoot']" mode="process"/>
3281
+ <!-- if there are note(s) or fn(s) then create footer row -->
3282
+ <xsl:if test="../*[local-name()='note'] or ..//*[local-name()='fn'][local-name(..) != 'name']">
3283
+ <fo:table-row>
3284
+ <fo:table-cell border="solid black 1pt" padding-left="1mm" padding-right="1mm" padding-top="1mm" number-columns-spanned="{$cols-count}">
3285
+
3286
+
3287
+
3288
+ <!-- fn will be processed inside 'note' processing -->
3289
+
3290
+
3291
+ <xsl:apply-templates select="../*[local-name()='note']" mode="process"/>
3292
+
3293
+ <!-- horizontal row separator -->
3294
+
3295
+
3296
+ <!-- fn processing -->
3297
+ <xsl:call-template name="fn_display"/>
3298
+
3299
+ </fo:table-cell>
3300
+ </fo:table-row>
3301
+
3302
+ </xsl:if>
3303
+ </fo:table-body>
3304
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='tr']">
3305
+ <xsl:variable name="parent-name" select="local-name(..)"/>
3306
+ <!-- <xsl:variable name="namespace" select="substring-before(name(/*), '-')"/> -->
3307
+ <fo:table-row min-height="4mm">
3308
+ <xsl:if test="$parent-name = 'thead'">
3309
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
3310
+
3311
+
3312
+
3313
+
3314
+
3315
+ </xsl:if>
3316
+ <xsl:if test="$parent-name = 'tfoot'">
3317
+
3318
+
3319
+ </xsl:if>
3320
+
3321
+ <xsl:apply-templates/>
3322
+ </fo:table-row>
3323
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='th']">
3324
+ <fo:table-cell text-align="{@align}" font-weight="bold" border="solid black 1pt" padding-left="1mm" display-align="center">
3325
+
3326
+
3327
+
3328
+
3329
+
3330
+
3331
+
3332
+ <xsl:if test="@colspan">
3333
+ <xsl:attribute name="number-columns-spanned">
3334
+ <xsl:value-of select="@colspan"/>
3335
+ </xsl:attribute>
3336
+ </xsl:if>
3337
+ <xsl:if test="@rowspan">
3338
+ <xsl:attribute name="number-rows-spanned">
3339
+ <xsl:value-of select="@rowspan"/>
3340
+ </xsl:attribute>
3341
+ </xsl:if>
3342
+ <fo:block>
3343
+ <xsl:apply-templates/>
3344
+ </fo:block>
3345
+ </fo:table-cell>
3346
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='td']">
3347
+ <fo:table-cell text-align="{@align}" display-align="center" border="solid black 1pt" padding-left="1mm">
3348
+
3349
+
3350
+
3351
+
3352
+
3353
+
3354
+
3355
+ <xsl:if test="@colspan">
3356
+ <xsl:attribute name="number-columns-spanned">
3357
+ <xsl:value-of select="@colspan"/>
3358
+ </xsl:attribute>
3359
+ </xsl:if>
3360
+ <xsl:if test="@rowspan">
3361
+ <xsl:attribute name="number-rows-spanned">
3362
+ <xsl:value-of select="@rowspan"/>
3363
+ </xsl:attribute>
3364
+ </xsl:if>
3365
+ <fo:block>
3366
+ <xsl:apply-templates/>
3367
+ </fo:block>
3368
+ <!-- <xsl:choose>
3369
+ <xsl:when test="count(*) = 1 and *[local-name() = 'p']">
3370
+ <xsl:apply-templates />
3371
+ </xsl:when>
3372
+ <xsl:otherwise>
3373
+ <fo:block>
3374
+ <xsl:apply-templates />
3375
+ </fo:block>
3376
+ </xsl:otherwise>
3377
+ </xsl:choose> -->
3378
+
3379
+
3380
+ </fo:table-cell>
3381
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='table']/*[local-name()='note']"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='table']/*[local-name()='note']" mode="process">
3382
+
3383
+
3384
+ <fo:block font-size="10pt" margin-bottom="12pt">
3385
+
3386
+
3387
+ <fo:inline padding-right="2mm">
3388
+ <xsl:text>NOTE </xsl:text>
3389
+
3390
+
3391
+ </fo:inline>
3392
+ <xsl:apply-templates mode="process"/>
3393
+ </fo:block>
3394
+
3395
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='table']/*[local-name()='note']/*[local-name()='p']" mode="process">
3396
+ <xsl:apply-templates/>
3397
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="fn_display">
3398
+ <xsl:variable name="references">
3399
+ <xsl:for-each select="..//*[local-name()='fn'][local-name(..) != 'name']">
3400
+ <fn reference="{@reference}" id="{@reference}_{ancestor::*[@id][1]/@id}">
3401
+
3402
+
3403
+ <xsl:apply-templates/>
3404
+ </fn>
3405
+ </xsl:for-each>
3406
+ </xsl:variable>
3407
+ <xsl:for-each select="xalan:nodeset($references)//fn">
3408
+ <xsl:variable name="reference" select="@reference"/>
3409
+ <xsl:if test="not(preceding-sibling::*[@reference = $reference])"> <!-- only unique reference puts in note-->
3410
+ <fo:block margin-bottom="12pt">
3411
+
3412
+
3413
+ <fo:inline font-size="80%" padding-right="5mm" id="{@id}">
3414
+
3415
+
3416
+
3417
+
3418
+
3419
+ <xsl:value-of select="@reference"/>
3420
+
3421
+ </fo:inline>
3422
+ <fo:inline>
3423
+
3424
+ <xsl:apply-templates/>
3425
+ </fo:inline>
3426
+ </fo:block>
3427
+ </xsl:if>
3428
+ </xsl:for-each>
3429
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="fn_name_display">
3430
+ <!-- <xsl:variable name="references">
3431
+ <xsl:for-each select="*[local-name()='name']//*[local-name()='fn']">
3432
+ <fn reference="{@reference}" id="{@reference}_{ancestor::*[@id][1]/@id}">
3433
+ <xsl:apply-templates />
3434
+ </fn>
3435
+ </xsl:for-each>
3436
+ </xsl:variable>
3437
+ $references=<xsl:copy-of select="$references"/> -->
3438
+ <xsl:for-each select="*[local-name()='name']//*[local-name()='fn']">
3439
+ <xsl:variable name="reference" select="@reference"/>
3440
+ <fo:block id="{@reference}_{ancestor::*[@id][1]/@id}"><xsl:value-of select="@reference"/></fo:block>
3441
+ <fo:block margin-bottom="12pt">
3442
+ <xsl:apply-templates/>
3443
+ </fo:block>
3444
+ </xsl:for-each>
3445
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="fn_display_figure">
3446
+ <xsl:variable name="key_iso">
3447
+ <!-- and (not(@class) or @class !='pseudocode') -->
3448
+ </xsl:variable>
3449
+ <xsl:variable name="references">
3450
+ <xsl:for-each select=".//*[local-name()='fn']">
3451
+ <fn reference="{@reference}" id="{@reference}_{ancestor::*[@id][1]/@id}">
3452
+ <xsl:apply-templates/>
3453
+ </fn>
3454
+ </xsl:for-each>
3455
+ </xsl:variable>
3456
+ <xsl:if test="xalan:nodeset($references)//fn">
3457
+ <fo:block>
3458
+ <fo:table width="95%" table-layout="fixed">
3459
+ <xsl:if test="normalize-space($key_iso) = 'true'">
3460
+ <xsl:attribute name="font-size">10pt</xsl:attribute>
3461
+
3462
+ </xsl:if>
3463
+ <fo:table-column column-width="15%"/>
3464
+ <fo:table-column column-width="85%"/>
3465
+ <fo:table-body>
3466
+ <xsl:for-each select="xalan:nodeset($references)//fn">
3467
+ <xsl:variable name="reference" select="@reference"/>
3468
+ <xsl:if test="not(preceding-sibling::*[@reference = $reference])"> <!-- only unique reference puts in note-->
3469
+ <fo:table-row>
3470
+ <fo:table-cell>
3471
+ <fo:block>
3472
+ <fo:inline font-size="80%" padding-right="5mm" vertical-align="super" id="{@id}">
3473
+
3474
+ <xsl:value-of select="@reference"/>
3475
+ </fo:inline>
3476
+ </fo:block>
3477
+ </fo:table-cell>
3478
+ <fo:table-cell>
3479
+ <fo:block text-align="justify" margin-bottom="12pt">
3480
+
3481
+ <xsl:if test="normalize-space($key_iso) = 'true'">
3482
+ <xsl:attribute name="margin-bottom">0</xsl:attribute>
3483
+ </xsl:if>
3484
+
3485
+ <xsl:apply-templates/>
3486
+ </fo:block>
3487
+ </fo:table-cell>
3488
+ </fo:table-row>
3489
+ </xsl:if>
3490
+ </xsl:for-each>
3491
+ </fo:table-body>
3492
+ </fo:table>
3493
+ </fo:block>
3494
+ </xsl:if>
3495
+
3496
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='fn']">
3497
+ <!-- <xsl:variable name="namespace" select="substring-before(name(/*), '-')"/> -->
3498
+ <fo:inline font-size="80%" keep-with-previous.within-line="always">
3499
+
3500
+
3501
+
3502
+ <fo:basic-link internal-destination="{@reference}_{ancestor::*[@id][1]/@id}" fox:alt-text="{@reference}"> <!-- @reference | ancestor::*[local-name()='clause'][1]/@id-->
3503
+
3504
+ <xsl:value-of select="@reference"/>
3505
+ </fo:basic-link>
3506
+ </fo:inline>
3507
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='fn']/*[local-name()='p']">
3508
+ <fo:inline>
3509
+ <xsl:apply-templates/>
3510
+ </fo:inline>
3511
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='dl']">
3512
+ <xsl:variable name="parent" select="local-name(..)"/>
3513
+
3514
+ <xsl:variable name="key_iso">
3515
+ <!-- and (not(../@class) or ../@class !='pseudocode') -->
3516
+ </xsl:variable>
3517
+
3518
+ <xsl:choose>
3519
+ <xsl:when test="$parent = 'formula' and count(*[local-name()='dt']) = 1"> <!-- only one component -->
3520
+
3521
+
3522
+ </xsl:when>
3523
+ <xsl:when test="$parent = 'formula'"> <!-- a few components -->
3524
+ <fo:block margin-bottom="12pt" text-align="left">
3525
+
3526
+
3527
+
3528
+ <xsl:text>where</xsl:text>
3529
+ </fo:block>
3530
+ </xsl:when>
3531
+ <xsl:when test="$parent = 'figure' and (not(../@class) or ../@class !='pseudocode')">
3532
+ <fo:block font-weight="bold" text-align="left" margin-bottom="12pt">
3533
+
3534
+
3535
+ <xsl:text>Key</xsl:text>
3536
+ </fo:block>
3537
+ </xsl:when>
3538
+ </xsl:choose>
3539
+
3540
+ <!-- a few components -->
3541
+ <xsl:if test="not($parent = 'formula' and count(*[local-name()='dt']) = 1)">
3542
+ <fo:block>
3543
+
3544
+
3545
+
3546
+
3547
+ <fo:block>
3548
+
3549
+ <!-- create virtual html table for dl/[dt and dd] -->
3550
+ <xsl:variable name="html-table">
3551
+ <xsl:variable name="ns" select="substring-before(name(/*), '-')"/>
3552
+ <xsl:element name="{$ns}:table">
3553
+ <tbody>
3554
+ <xsl:apply-templates mode="dl"/>
3555
+ </tbody>
3556
+ </xsl:element>
3557
+ </xsl:variable>
3558
+ <!-- html-table<xsl:copy-of select="$html-table"/> -->
3559
+ <xsl:variable name="colwidths">
3560
+ <xsl:call-template name="calculate-column-widths">
3561
+ <xsl:with-param name="cols-count" select="2"/>
3562
+ <xsl:with-param name="table" select="$html-table"/>
3563
+ </xsl:call-template>
3564
+ </xsl:variable>
3565
+ <!-- colwidths=<xsl:value-of select="$colwidths"/> -->
3566
+
3567
+ <fo:table width="95%" table-layout="fixed">
3568
+ <xsl:choose>
3569
+ <xsl:when test="normalize-space($key_iso) = 'true' and $parent = 'formula'">
3570
+ <!-- <xsl:attribute name="font-size">11pt</xsl:attribute> -->
3571
+ </xsl:when>
3572
+ <xsl:when test="normalize-space($key_iso) = 'true'">
3573
+ <xsl:attribute name="font-size">10pt</xsl:attribute>
3574
+
3575
+ </xsl:when>
3576
+ </xsl:choose>
3577
+ <xsl:choose>
3578
+ <xsl:when test="ancestor::*[local-name()='dl']"><!-- second level, i.e. inlined table -->
3579
+ <fo:table-column column-width="50%"/>
3580
+ <fo:table-column column-width="50%"/>
3581
+ </xsl:when>
3582
+ <xsl:otherwise>
3583
+ <xsl:choose>
3584
+ <!-- <xsl:when test="xalan:nodeset($colwidths)/column[1] div xalan:nodeset($colwidths)/column[2] &gt; 1.7">
3585
+ <fo:table-column column-width="60%"/>
3586
+ <fo:table-column column-width="40%"/>
3587
+ </xsl:when> -->
3588
+ <xsl:when test="xalan:nodeset($colwidths)/column[1] div xalan:nodeset($colwidths)/column[2] &gt; 1.3">
3589
+ <fo:table-column column-width="50%"/>
3590
+ <fo:table-column column-width="50%"/>
3591
+ </xsl:when>
3592
+ <xsl:when test="xalan:nodeset($colwidths)/column[1] div xalan:nodeset($colwidths)/column[2] &gt; 0.5">
3593
+ <fo:table-column column-width="40%"/>
3594
+ <fo:table-column column-width="60%"/>
3595
+ </xsl:when>
3596
+ <xsl:otherwise>
3597
+ <xsl:for-each select="xalan:nodeset($colwidths)//column">
3598
+ <xsl:choose>
3599
+ <xsl:when test=". = 1">
3600
+ <fo:table-column column-width="proportional-column-width(2)"/>
3601
+ </xsl:when>
3602
+ <xsl:otherwise>
3603
+ <fo:table-column column-width="proportional-column-width({.})"/>
3604
+ </xsl:otherwise>
3605
+ </xsl:choose>
3606
+ </xsl:for-each>
3607
+ </xsl:otherwise>
3608
+ </xsl:choose>
3609
+ <!-- <fo:table-column column-width="15%"/>
3610
+ <fo:table-column column-width="85%"/> -->
3611
+ </xsl:otherwise>
3612
+ </xsl:choose>
3613
+ <fo:table-body>
3614
+ <xsl:apply-templates>
3615
+ <xsl:with-param name="key_iso" select="normalize-space($key_iso)"/>
3616
+ </xsl:apply-templates>
3617
+ </fo:table-body>
3618
+ </fo:table>
3619
+ </fo:block>
3620
+ </fo:block>
3621
+ </xsl:if>
3622
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='dl']/*[local-name()='note']">
3623
+ <xsl:param name="key_iso"/>
3624
+
3625
+ <!-- <tr>
3626
+ <td>NOTE</td>
3627
+ <td>
3628
+ <xsl:apply-templates />
3629
+ </td>
3630
+ </tr>
3631
+ -->
3632
+ <fo:table-row>
3633
+ <fo:table-cell>
3634
+ <fo:block margin-top="6pt">
3635
+ <xsl:if test="normalize-space($key_iso) = 'true'">
3636
+ <xsl:attribute name="margin-top">0</xsl:attribute>
3637
+ </xsl:if>
3638
+ NOTE
3639
+ </fo:block>
3640
+ </fo:table-cell>
3641
+ <fo:table-cell>
3642
+ <fo:block>
3643
+ <xsl:apply-templates/>
3644
+ </fo:block>
3645
+ </fo:table-cell>
3646
+ </fo:table-row>
3647
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='dt']" mode="dl">
3648
+ <tr>
3649
+ <td>
3650
+ <xsl:apply-templates/>
3651
+ </td>
3652
+ <td>
3653
+
3654
+
3655
+ </td>
3656
+ </tr>
3657
+
3658
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='dt']">
3659
+ <xsl:param name="key_iso"/>
3660
+
3661
+ <fo:table-row>
3662
+ <fo:table-cell>
3663
+ <fo:block margin-top="6pt">
3664
+
3665
+ <xsl:if test="normalize-space($key_iso) = 'true'">
3666
+ <xsl:attribute name="margin-top">0</xsl:attribute>
3667
+
3668
+ </xsl:if>
3669
+
3670
+
3671
+ <xsl:apply-templates/>
3672
+ </fo:block>
3673
+ </fo:table-cell>
3674
+ <fo:table-cell>
3675
+ <fo:block>
3676
+
3677
+
3678
+
3679
+ </fo:block>
3680
+ </fo:table-cell>
3681
+ </fo:table-row>
3682
+
3683
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='dd']" mode="dl"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='dd']" mode="dl_process">
3684
+ <xsl:apply-templates/>
3685
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='dd']"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='dd']" mode="process">
3686
+ <xsl:apply-templates/>
3687
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='dd']/*[local-name()='p']" mode="inline">
3688
+ <fo:inline><xsl:apply-templates/></fo:inline>
3689
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='em']">
3690
+ <fo:inline font-style="italic">
3691
+ <xsl:apply-templates/>
3692
+ </fo:inline>
3693
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='strong']">
3694
+ <fo:inline font-weight="bold">
3695
+ <xsl:apply-templates/>
3696
+ </fo:inline>
3697
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='sup']">
3698
+ <fo:inline font-size="80%" vertical-align="super">
3699
+ <xsl:apply-templates/>
3700
+ </fo:inline>
3701
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='sub']">
3702
+ <fo:inline font-size="80%" vertical-align="sub">
3703
+ <xsl:apply-templates/>
3704
+ </fo:inline>
3705
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='tt']">
3706
+ <fo:inline font-family="Courier" font-size="10pt">
3707
+ <xsl:apply-templates/>
3708
+ </fo:inline>
3709
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='del']">
3710
+ <fo:inline font-size="10pt" color="red" text-decoration="line-through">
3711
+ <xsl:apply-templates/>
3712
+ </fo:inline>
3713
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="text()[ancestor::*[local-name()='smallcap']]">
3714
+ <xsl:variable name="text" select="normalize-space(.)"/>
3715
+ <fo:inline font-size="75%">
3716
+ <xsl:if test="string-length($text) &gt; 0">
3717
+ <xsl:call-template name="recursiveSmallCaps">
3718
+ <xsl:with-param name="text" select="$text"/>
3719
+ </xsl:call-template>
3720
+ </xsl:if>
3721
+ </fo:inline>
3722
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="recursiveSmallCaps">
3723
+ <xsl:param name="text"/>
3724
+ <xsl:variable name="char" select="substring($text,1,1)"/>
3725
+ <xsl:variable name="upperCase" select="translate($char, $lower, $upper)"/>
3726
+ <xsl:choose>
3727
+ <xsl:when test="$char=$upperCase">
3728
+ <fo:inline font-size="{100 div 0.75}%">
3729
+ <xsl:value-of select="$upperCase"/>
3730
+ </fo:inline>
3731
+ </xsl:when>
3732
+ <xsl:otherwise>
3733
+ <xsl:value-of select="$upperCase"/>
3734
+ </xsl:otherwise>
3735
+ </xsl:choose>
3736
+ <xsl:if test="string-length($text) &gt; 1">
3737
+ <xsl:call-template name="recursiveSmallCaps">
3738
+ <xsl:with-param name="text" select="substring($text,2)"/>
3739
+ </xsl:call-template>
3740
+ </xsl:if>
3741
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="tokenize">
3742
+ <xsl:param name="text"/>
3743
+ <xsl:param name="separator" select="' '"/>
3744
+ <xsl:choose>
3745
+ <xsl:when test="not(contains($text, $separator))">
3746
+ <word>
3747
+ <xsl:variable name="str_no_en_chars" select="normalize-space(translate($text, $en_chars, ''))"/>
3748
+ <xsl:variable name="len_str_no_en_chars" select="string-length($str_no_en_chars)"/>
3749
+ <xsl:variable name="len_str_tmp" select="string-length(normalize-space($text))"/>
3750
+ <xsl:variable name="len_str">
3751
+ <xsl:choose>
3752
+ <xsl:when test="normalize-space(translate($text, $upper, '')) = ''"> <!-- english word in CAPITAL letters -->
3753
+ <xsl:value-of select="$len_str_tmp * 1.5"/>
3754
+ </xsl:when>
3755
+ <xsl:otherwise>
3756
+ <xsl:value-of select="$len_str_tmp"/>
3757
+ </xsl:otherwise>
3758
+ </xsl:choose>
3759
+ </xsl:variable>
3760
+
3761
+ <!-- <xsl:if test="$len_str_no_en_chars div $len_str &gt; 0.8">
3762
+ <xsl:message>
3763
+ div=<xsl:value-of select="$len_str_no_en_chars div $len_str"/>
3764
+ len_str=<xsl:value-of select="$len_str"/>
3765
+ len_str_no_en_chars=<xsl:value-of select="$len_str_no_en_chars"/>
3766
+ </xsl:message>
3767
+ </xsl:if> -->
3768
+ <!-- <len_str_no_en_chars><xsl:value-of select="$len_str_no_en_chars"/></len_str_no_en_chars>
3769
+ <len_str><xsl:value-of select="$len_str"/></len_str> -->
3770
+ <xsl:choose>
3771
+ <xsl:when test="$len_str_no_en_chars div $len_str &gt; 0.8"> <!-- means non-english string -->
3772
+ <xsl:value-of select="$len_str - $len_str_no_en_chars"/>
3773
+ </xsl:when>
3774
+ <xsl:otherwise>
3775
+ <xsl:value-of select="$len_str"/>
3776
+ </xsl:otherwise>
3777
+ </xsl:choose>
3778
+ </word>
3779
+ </xsl:when>
3780
+ <xsl:otherwise>
3781
+ <word>
3782
+ <xsl:value-of select="string-length(normalize-space(substring-before($text, $separator)))"/>
3783
+ </word>
3784
+ <xsl:call-template name="tokenize">
3785
+ <xsl:with-param name="text" select="substring-after($text, $separator)"/>
3786
+ </xsl:call-template>
3787
+ </xsl:otherwise>
3788
+ </xsl:choose>
3789
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="max_length">
3790
+ <xsl:param name="words"/>
3791
+ <xsl:for-each select="$words//word">
3792
+ <xsl:sort select="." data-type="number" order="descending"/>
3793
+ <xsl:if test="position()=1">
3794
+ <xsl:value-of select="."/>
3795
+ </xsl:if>
3796
+ </xsl:for-each>
3797
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="add-zero-spaces">
3798
+ <xsl:param name="text" select="."/>
3799
+ <xsl:variable name="zero-space-after-chars">-</xsl:variable>
3800
+ <xsl:variable name="zero-space-after-dot">.</xsl:variable>
3801
+ <xsl:variable name="zero-space-after-colon">:</xsl:variable>
3802
+ <xsl:variable name="zero-space-after-equal">=</xsl:variable>
3803
+ <xsl:variable name="zero-space">​</xsl:variable>
3804
+ <xsl:choose>
3805
+ <xsl:when test="contains($text, $zero-space-after-chars)">
3806
+ <xsl:value-of select="substring-before($text, $zero-space-after-chars)"/>
3807
+ <xsl:value-of select="$zero-space-after-chars"/>
3808
+ <xsl:value-of select="$zero-space"/>
3809
+ <xsl:call-template name="add-zero-spaces">
3810
+ <xsl:with-param name="text" select="substring-after($text, $zero-space-after-chars)"/>
3811
+ </xsl:call-template>
3812
+ </xsl:when>
3813
+ <xsl:when test="contains($text, $zero-space-after-dot)">
3814
+ <xsl:value-of select="substring-before($text, $zero-space-after-dot)"/>
3815
+ <xsl:value-of select="$zero-space-after-dot"/>
3816
+ <xsl:value-of select="$zero-space"/>
3817
+ <xsl:call-template name="add-zero-spaces">
3818
+ <xsl:with-param name="text" select="substring-after($text, $zero-space-after-dot)"/>
3819
+ </xsl:call-template>
3820
+ </xsl:when>
3821
+ <xsl:when test="contains($text, $zero-space-after-colon)">
3822
+ <xsl:value-of select="substring-before($text, $zero-space-after-colon)"/>
3823
+ <xsl:value-of select="$zero-space-after-colon"/>
3824
+ <xsl:value-of select="$zero-space"/>
3825
+ <xsl:call-template name="add-zero-spaces">
3826
+ <xsl:with-param name="text" select="substring-after($text, $zero-space-after-colon)"/>
3827
+ </xsl:call-template>
3828
+ </xsl:when>
3829
+ <xsl:when test="contains($text, $zero-space-after-equal)">
3830
+ <xsl:value-of select="substring-before($text, $zero-space-after-equal)"/>
3831
+ <xsl:value-of select="$zero-space-after-equal"/>
3832
+ <xsl:value-of select="$zero-space"/>
3833
+ <xsl:call-template name="add-zero-spaces">
3834
+ <xsl:with-param name="text" select="substring-after($text, $zero-space-after-equal)"/>
3835
+ </xsl:call-template>
3836
+ </xsl:when>
3837
+ <xsl:otherwise>
3838
+ <xsl:value-of select="$text"/>
3839
+ </xsl:otherwise>
3840
+ </xsl:choose>
3841
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="add-zero-spaces-equal">
3842
+ <xsl:param name="text" select="."/>
3843
+ <xsl:variable name="zero-space-after-equals">==========</xsl:variable>
3844
+ <xsl:variable name="zero-space-after-equal">=</xsl:variable>
3845
+ <xsl:variable name="zero-space">​</xsl:variable>
3846
+ <xsl:choose>
3847
+ <xsl:when test="contains($text, $zero-space-after-equals)">
3848
+ <xsl:value-of select="substring-before($text, $zero-space-after-equals)"/>
3849
+ <xsl:value-of select="$zero-space-after-equals"/>
3850
+ <xsl:value-of select="$zero-space"/>
3851
+ <xsl:call-template name="add-zero-spaces-equal">
3852
+ <xsl:with-param name="text" select="substring-after($text, $zero-space-after-equals)"/>
3853
+ </xsl:call-template>
3854
+ </xsl:when>
3855
+ <xsl:when test="contains($text, $zero-space-after-equal)">
3856
+ <xsl:value-of select="substring-before($text, $zero-space-after-equal)"/>
3857
+ <xsl:value-of select="$zero-space-after-equal"/>
3858
+ <xsl:value-of select="$zero-space"/>
3859
+ <xsl:call-template name="add-zero-spaces-equal">
3860
+ <xsl:with-param name="text" select="substring-after($text, $zero-space-after-equal)"/>
3861
+ </xsl:call-template>
3862
+ </xsl:when>
3863
+ <xsl:otherwise>
3864
+ <xsl:value-of select="$text"/>
3865
+ </xsl:otherwise>
3866
+ </xsl:choose>
3867
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="getSimpleTable">
3868
+ <xsl:variable name="simple-table">
3869
+
3870
+ <!-- Step 1. colspan processing -->
3871
+ <xsl:variable name="simple-table-colspan">
3872
+ <tbody>
3873
+ <xsl:apply-templates mode="simple-table-colspan"/>
3874
+ </tbody>
3875
+ </xsl:variable>
3876
+
3877
+ <!-- Step 2. rowspan processing -->
3878
+ <xsl:variable name="simple-table-rowspan">
3879
+ <xsl:apply-templates select="xalan:nodeset($simple-table-colspan)" mode="simple-table-rowspan"/>
3880
+ </xsl:variable>
3881
+
3882
+ <xsl:copy-of select="xalan:nodeset($simple-table-rowspan)"/>
3883
+
3884
+ <!-- <xsl:choose>
3885
+ <xsl:when test="current()//*[local-name()='th'][@colspan] or current()//*[local-name()='td'][@colspan] ">
3886
+
3887
+ </xsl:when>
3888
+ <xsl:otherwise>
3889
+ <xsl:copy-of select="current()"/>
3890
+ </xsl:otherwise>
3891
+ </xsl:choose> -->
3892
+ </xsl:variable>
3893
+ <xsl:copy-of select="$simple-table"/>
3894
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='thead'] | *[local-name()='tbody']" mode="simple-table-colspan">
3895
+ <xsl:apply-templates mode="simple-table-colspan"/>
3896
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='fn']" mode="simple-table-colspan"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='th'] | *[local-name()='td']" mode="simple-table-colspan">
3897
+ <xsl:choose>
3898
+ <xsl:when test="@colspan">
3899
+ <xsl:variable name="td">
3900
+ <xsl:element name="td">
3901
+ <xsl:attribute name="divide"><xsl:value-of select="@colspan"/></xsl:attribute>
3902
+ <xsl:apply-templates select="@*" mode="simple-table-colspan"/>
3903
+ <xsl:apply-templates mode="simple-table-colspan"/>
3904
+ </xsl:element>
3905
+ </xsl:variable>
3906
+ <xsl:call-template name="repeatNode">
3907
+ <xsl:with-param name="count" select="@colspan"/>
3908
+ <xsl:with-param name="node" select="$td"/>
3909
+ </xsl:call-template>
3910
+ </xsl:when>
3911
+ <xsl:otherwise>
3912
+ <xsl:element name="td">
3913
+ <xsl:apply-templates select="@*" mode="simple-table-colspan"/>
3914
+ <xsl:apply-templates mode="simple-table-colspan"/>
3915
+ </xsl:element>
3916
+ </xsl:otherwise>
3917
+ </xsl:choose>
3918
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="@colspan" mode="simple-table-colspan"/><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="*[local-name()='tr']" mode="simple-table-colspan">
3919
+ <xsl:element name="tr">
3920
+ <xsl:apply-templates select="@*" mode="simple-table-colspan"/>
3921
+ <xsl:apply-templates mode="simple-table-colspan"/>
3922
+ </xsl:element>
3923
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="@*|node()" mode="simple-table-colspan">
3924
+ <xsl:copy>
3925
+ <xsl:apply-templates select="@*|node()" mode="simple-table-colspan"/>
3926
+ </xsl:copy>
3927
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="repeatNode">
3928
+ <xsl:param name="count"/>
3929
+ <xsl:param name="node"/>
3930
+
3931
+ <xsl:if test="$count &gt; 0">
3932
+ <xsl:call-template name="repeatNode">
3933
+ <xsl:with-param name="count" select="$count - 1"/>
3934
+ <xsl:with-param name="node" select="$node"/>
3935
+ </xsl:call-template>
3936
+ <xsl:copy-of select="$node"/>
3937
+ </xsl:if>
3938
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="@*|node()" mode="simple-table-rowspan">
3939
+ <xsl:copy>
3940
+ <xsl:apply-templates select="@*|node()" mode="simple-table-rowspan"/>
3941
+ </xsl:copy>
3942
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="tbody" mode="simple-table-rowspan">
3943
+ <xsl:copy>
3944
+ <xsl:copy-of select="tr[1]"/>
3945
+ <xsl:apply-templates select="tr[2]" mode="simple-table-rowspan">
3946
+ <xsl:with-param name="previousRow" select="tr[1]"/>
3947
+ </xsl:apply-templates>
3948
+ </xsl:copy>
3949
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="tr" mode="simple-table-rowspan">
3950
+ <xsl:param name="previousRow"/>
3951
+ <xsl:variable name="currentRow" select="."/>
3952
+
3953
+ <xsl:variable name="normalizedTDs">
3954
+ <xsl:for-each select="xalan:nodeset($previousRow)//td">
3955
+ <xsl:choose>
3956
+ <xsl:when test="@rowspan &gt; 1">
3957
+ <xsl:copy>
3958
+ <xsl:attribute name="rowspan">
3959
+ <xsl:value-of select="@rowspan - 1"/>
3960
+ </xsl:attribute>
3961
+ <xsl:copy-of select="@*[not(name() = 'rowspan')]"/>
3962
+ <xsl:copy-of select="node()"/>
3963
+ </xsl:copy>
3964
+ </xsl:when>
3965
+ <xsl:otherwise>
3966
+ <xsl:copy-of select="$currentRow/td[1 + count(current()/preceding-sibling::td[not(@rowspan) or (@rowspan = 1)])]"/>
3967
+ </xsl:otherwise>
3968
+ </xsl:choose>
3969
+ </xsl:for-each>
3970
+ </xsl:variable>
3971
+
3972
+ <xsl:variable name="newRow">
3973
+ <xsl:copy>
3974
+ <xsl:copy-of select="$currentRow/@*"/>
3975
+ <xsl:copy-of select="xalan:nodeset($normalizedTDs)"/>
3976
+ </xsl:copy>
3977
+ </xsl:variable>
3978
+ <xsl:copy-of select="$newRow"/>
3979
+
3980
+ <xsl:apply-templates select="following-sibling::tr[1]" mode="simple-table-rowspan">
3981
+ <xsl:with-param name="previousRow" select="$newRow"/>
3982
+ </xsl:apply-templates>
3983
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="getLang">
3984
+ <xsl:variable name="language" select="//*[local-name()='bibdata']//*[local-name()='language']"/>
3985
+ <xsl:choose>
3986
+ <xsl:when test="$language = 'English'">en</xsl:when>
3987
+ <xsl:otherwise><xsl:value-of select="$language"/></xsl:otherwise>
3988
+ </xsl:choose>
3989
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" name="capitalizeWords">
3990
+ <xsl:param name="str"/>
3991
+ <xsl:variable name="str2" select="translate($str, '-', ' ')"/>
3992
+ <xsl:choose>
3993
+ <xsl:when test="contains($str2, ' ')">
3994
+ <xsl:variable name="substr" select="substring-before($str2, ' ')"/>
3995
+ <xsl:value-of select="translate(substring($substr, 1, 1), $lower, $upper)"/>
3996
+ <xsl:value-of select="substring($substr, 2)"/>
3997
+ <xsl:text> </xsl:text>
3998
+ <xsl:call-template name="capitalizeWords">
3999
+ <xsl:with-param name="str" select="substring-after($str2, ' ')"/>
4000
+ </xsl:call-template>
4001
+ </xsl:when>
4002
+ <xsl:otherwise>
4003
+ <xsl:value-of select="translate(substring($str2, 1, 1), $lower, $upper)"/>
4004
+ <xsl:value-of select="substring($str2, 2)"/>
4005
+ </xsl:otherwise>
4006
+ </xsl:choose>
4007
+ </xsl:template><xsl:template xmlns:iso="https://www.metanorma.org/ns/iso" xmlns:iec="https://www.metanorma.org/ns/iec" xmlns:itu="https://www.metanorma.org/ns/itu" xmlns:nist="https://www.metanorma.org/ns/nist" xmlns:un="https://www.metanorma.org/ns/un" xmlns:csd="https://www.metanorma.org/ns/csd" xmlns:ogc="https://www.metanorma.org/ns/ogc" match="mathml:math">
4008
+ <fo:inline font-family="STIX2Math">
4009
+ <fo:instream-foreign-object fox:alt-text="Math">
4010
+ <xsl:copy-of select="."/>
4011
+ </fo:instream-foreign-object>
4012
+ </fo:inline>
4013
+ </xsl:template></xsl:stylesheet>