metanorma-ogc 2.0.0 → 2.0.1

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.
@@ -125,7 +125,7 @@
125
125
 
126
126
  <xsl:template match="/">
127
127
  <xsl:call-template name="namespaceCheck"/>
128
- <fo:root font-family="Arial, STIX Two Math, Source Han Sans" font-size="11pt" xml:lang="{$lang}">
128
+ <fo:root xsl:use-attribute-sets="root-style" xml:lang="{$lang}">
129
129
  <fo:layout-master-set>
130
130
 
131
131
  <!-- Document pages -->
@@ -374,9 +374,6 @@
374
374
  <!-- ============================= -->
375
375
  <!-- CONTENTS -->
376
376
  <!-- ============================= -->
377
- <xsl:template match="node()" mode="contents">
378
- <xsl:apply-templates mode="contents"/>
379
- </xsl:template>
380
377
 
381
378
  <!-- element with title -->
382
379
  <xsl:template match="*[ogc:title]" mode="contents">
@@ -654,46 +651,6 @@
654
651
  </xsl:template>
655
652
 
656
653
 
657
- <xsl:template match="ogc:bibitem">
658
- <fo:block id="{@id}" margin-bottom="12pt" start-indent="12mm" text-indent="-12mm" line-height="115%">
659
- <xsl:if test=".//ogc:fn">
660
- <xsl:attribute name="line-height-shift-adjustment">disregard-shifts</xsl:attribute>
661
- </xsl:if>
662
- <xsl:call-template name="processBibitem"/>
663
- </fo:block>
664
- </xsl:template>
665
-
666
-
667
- <xsl:template match="ogc:bibitem/ogc:note" priority="2">
668
- <fo:footnote>
669
- <xsl:variable name="number">
670
- <xsl:choose>
671
- <xsl:when test="ancestor::ogc:references[preceding-sibling::ogc:references]">
672
- <xsl:number level="any" count="ogc:references[preceding-sibling::ogc:references]//ogc:bibitem/ogc:note"/>
673
- </xsl:when>
674
- <xsl:otherwise>
675
- <xsl:number level="any" count="ogc:bibitem/ogc:note"/>
676
- </xsl:otherwise>
677
- </xsl:choose>
678
- </xsl:variable>
679
- <fo:inline font-size="65%" keep-with-previous.within-line="always" vertical-align="super"> <!-- 60% baseline-shift="35%" -->
680
- <fo:basic-link internal-destination="{generate-id()}" fox:alt-text="footnote {$number}">
681
- <xsl:value-of select="$number"/><!-- <xsl:text>)</xsl:text> -->
682
- </fo:basic-link>
683
- </fo:inline>
684
- <fo:footnote-body>
685
- <fo:block font-size="10pt" margin-bottom="12pt" start-indent="0pt">
686
- <fo:inline id="{generate-id()}" keep-with-next.within-line="always" font-size="60%" vertical-align="super"><!-- baseline-shift="30%" padding-right="9mm" alignment-baseline="hanging" -->
687
- <xsl:value-of select="$number"/><!-- <xsl:text>)</xsl:text> -->
688
- </fo:inline>
689
- <xsl:apply-templates/>
690
- </fo:block>
691
- </fo:footnote-body>
692
- </fo:footnote>
693
- </xsl:template>
694
-
695
-
696
-
697
654
  <xsl:template match="ogc:ul | ogc:ol" mode="ul_ol">
698
655
  <fo:list-block provisional-distance-between-starts="6.5mm" margin-bottom="12pt" line-height="115%">
699
656
  <xsl:if test="ancestor::ogc:ul | ancestor::ogc:ol">
@@ -753,8 +710,8 @@
753
710
  <fo:list-item-label><fo:block/></fo:list-item-label>
754
711
  <fo:list-item-body>
755
712
  <fo:block>
756
- <xsl:apply-templates select="ogc:name" mode="presentation"/>
757
- <xsl:apply-templates/>
713
+ <xsl:apply-templates select="ogc:name"/>
714
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
758
715
  </fo:block>
759
716
  </fo:list-item-body>
760
717
  </fo:list-item>
@@ -777,7 +734,7 @@
777
734
  </xsl:variable>
778
735
  <fo:block font-size="{$font-size}" role="H{$levelTerm}">
779
736
  <fo:block font-weight="bold" keep-with-next="always">
780
- <xsl:apply-templates select="ancestor::ogc:term[1]/ogc:name" mode="presentation"/>
737
+ <xsl:apply-templates select="ancestor::ogc:term[1]/ogc:name"/>
781
738
  </fo:block>
782
739
  <fo:block font-weight="bold" keep-with-next="always" line-height="1">
783
740
  <xsl:call-template name="setStyle_preferred"/>
@@ -787,64 +744,6 @@
787
744
  </xsl:template>
788
745
 
789
746
 
790
-
791
- <!-- [position() &gt; 1] -->
792
- <xsl:template match="ogc:references[not(@normative='true')]">
793
- <fo:block break-after="page"/>
794
- <fo:block id="{@id}" line-height="120%">
795
- <xsl:apply-templates/>
796
- </fo:block>
797
- </xsl:template>
798
-
799
- <xsl:template match="ogc:annex//ogc:references">
800
- <fo:block id="{@id}">
801
- <xsl:apply-templates/>
802
- </fo:block>
803
- </xsl:template>
804
-
805
- <!-- Example: [1] ISO 9:1995, Information and documentation – Transliteration of Cyrillic characters into Latin characters – Slavic and non-Slavic languages -->
806
- <xsl:template match="ogc:references[not(@normative='true')]/ogc:bibitem">
807
- <fo:list-block id="{@id}" margin-bottom="12pt" provisional-distance-between-starts="12mm">
808
- <fo:list-item>
809
- <fo:list-item-label end-indent="label-end()">
810
- <fo:block>
811
- <fo:inline>
812
- <xsl:number format="[1]"/>
813
- </fo:inline>
814
- </fo:block>
815
- </fo:list-item-label>
816
- <fo:list-item-body start-indent="body-start()">
817
- <fo:block>
818
- <xsl:call-template name="processBibitem"/>
819
- </fo:block>
820
- </fo:list-item-body>
821
- </fo:list-item>
822
- </fo:list-block>
823
- </xsl:template>
824
-
825
-
826
- <xsl:template match="ogc:bibitem/ogc:title">
827
- <fo:inline font-style="italic">
828
- <xsl:apply-templates/>
829
- </fo:inline>
830
- </xsl:template>
831
-
832
-
833
-
834
- <xsl:template match="ogc:admonition">
835
- <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">
836
- <fo:block-container margin-left="0mm" margin-right="0mm" padding="2mm" padding-top="3mm">
837
- <fo:block font-size="11pt" margin-bottom="6pt" font-weight="bold" font-style="italic" text-align="center">
838
- <xsl:value-of select="java:toUpperCase(java:java.lang.String.new(@type))"/>
839
- </fo:block>
840
- <fo:block font-style="italic">
841
- <xsl:apply-templates/>
842
- </fo:block>
843
- </fo:block-container>
844
- </fo:block-container>
845
- </xsl:template>
846
-
847
-
848
747
  <xsl:template match="ogc:formula/ogc:stem">
849
748
  <fo:block margin-top="6pt" margin-bottom="12pt">
850
749
  <fo:table table-layout="fixed" width="100%">
@@ -859,7 +758,7 @@
859
758
  </fo:table-cell>
860
759
  <fo:table-cell display-align="center">
861
760
  <fo:block text-align="right">
862
- <xsl:apply-templates select="../ogc:name" mode="presentation"/>
761
+ <xsl:apply-templates select="../ogc:name" mode="formula_number"/>
863
762
  </fo:block>
864
763
  </fo:table-cell>
865
764
  </fo:table-row>
@@ -949,22 +848,18 @@
949
848
  </xsl:choose>
950
849
  </xsl:template>
951
850
 
952
- <xsl:variable name="titles" select="xalan:nodeset($titles_)"/><xsl:variable name="titles_">
851
+ <xsl:variable name="titles_">
953
852
 
954
853
  <title-edition lang="en">
955
854
 
956
-
957
- <xsl:text>Version</xsl:text>
958
-
855
+ <xsl:text>Version</xsl:text>
856
+
959
857
  </title-edition>
960
858
 
961
859
  <title-edition lang="fr">
962
-
963
- <xsl:text>Édition </xsl:text>
964
-
860
+ <xsl:text>Édition </xsl:text>
965
861
  </title-edition>
966
862
 
967
-
968
863
  <!-- These titles of Table of contents renders different than determined in localized-strings -->
969
864
  <title-toc lang="en">
970
865
 
@@ -974,14 +869,13 @@
974
869
 
975
870
  </title-toc>
976
871
  <title-toc lang="fr">
872
+ <xsl:text>Sommaire</xsl:text>
873
+ </title-toc>
874
+ <title-toc lang="zh">
977
875
 
978
- <xsl:text>Sommaire</xsl:text>
979
-
876
+ <xsl:text>Contents</xsl:text>
877
+
980
878
  </title-toc>
981
-
982
- <title-toc lang="zh">Contents</title-toc>
983
-
984
-
985
879
 
986
880
  <title-descriptors lang="en">Descriptors</title-descriptors>
987
881
 
@@ -997,12 +891,8 @@
997
891
  </title-part>
998
892
  <title-part lang="zh">第 # 部分:</title-part>
999
893
 
1000
- <title-subpart lang="en">
1001
-
1002
- </title-subpart>
1003
- <title-subpart lang="fr">
1004
-
1005
- </title-subpart>
894
+ <title-subpart lang="en">Sub-part #</title-subpart>
895
+ <title-subpart lang="fr">Partie de sub #</title-subpart>
1006
896
 
1007
897
  <title-list-tables lang="en">List of Tables</title-list-tables>
1008
898
 
@@ -1017,7 +907,7 @@
1017
907
  <title-continued lang="en">(continued)</title-continued>
1018
908
  <title-continued lang="fr">(continué)</title-continued>
1019
909
 
1020
- </xsl:variable><xsl:variable name="bibdata">
910
+ </xsl:variable><xsl:variable name="titles" select="xalan:nodeset($titles_)"/><xsl:variable name="bibdata">
1021
911
  <xsl:copy-of select="//*[contains(local-name(), '-standard')]/*[local-name() = 'bibdata']"/>
1022
912
  <xsl:copy-of select="//*[contains(local-name(), '-standard')]/*[local-name() = 'localized-strings']"/>
1023
913
  </xsl:variable><xsl:variable name="tab_zh"> </xsl:variable><xsl:template name="getTitle">
@@ -1046,6 +936,23 @@
1046
936
  </xsl:template><xsl:variable name="lower">abcdefghijklmnopqrstuvwxyz</xsl:variable><xsl:variable name="upper">ABCDEFGHIJKLMNOPQRSTUVWXYZ</xsl:variable><xsl:variable name="en_chars" select="concat($lower,$upper,',.`1234567890-=~!@#$%^*()_+[]{}\|?/')"/><xsl:variable name="linebreak" select="'&#8232;'"/><xsl:attribute-set name="root-style">
1047
937
 
1048
938
 
939
+
940
+
941
+
942
+
943
+
944
+
945
+
946
+
947
+
948
+
949
+
950
+
951
+ <xsl:attribute name="font-family">Arial, STIX Two Math, Source Han Sans</xsl:attribute>
952
+ <xsl:attribute name="font-size">11pt</xsl:attribute>
953
+
954
+
955
+
1049
956
  </xsl:attribute-set><xsl:attribute-set name="link-style">
1050
957
 
1051
958
 
@@ -1055,6 +962,9 @@
1055
962
 
1056
963
 
1057
964
 
965
+ </xsl:attribute-set><xsl:attribute-set name="sourcecode-container-style">
966
+ <xsl:attribute name="margin-left">0mm</xsl:attribute>
967
+
1058
968
  </xsl:attribute-set><xsl:attribute-set name="sourcecode-style">
1059
969
  <xsl:attribute name="white-space">pre</xsl:attribute>
1060
970
  <xsl:attribute name="wrap-option">wrap</xsl:attribute>
@@ -1064,6 +974,11 @@
1064
974
 
1065
975
 
1066
976
 
977
+
978
+
979
+
980
+
981
+
1067
982
 
1068
983
 
1069
984
 
@@ -1073,6 +988,8 @@
1073
988
  <xsl:attribute name="line-height">113%</xsl:attribute>
1074
989
 
1075
990
 
991
+
992
+
1076
993
  </xsl:attribute-set><xsl:attribute-set name="permission-style">
1077
994
 
1078
995
  <xsl:attribute name="margin-top">6pt</xsl:attribute>
@@ -1226,202 +1143,191 @@
1226
1143
 
1227
1144
  </xsl:attribute-set><xsl:variable name="table-border_">
1228
1145
 
1229
- </xsl:variable><xsl:variable name="table-border" select="normalize-space($table-border_)"/><xsl:attribute-set name="table-name-style">
1230
- <xsl:attribute name="keep-with-next">always</xsl:attribute>
1231
-
1146
+ </xsl:variable><xsl:variable name="table-border" select="normalize-space($table-border_)"/><xsl:attribute-set name="table-container-style">
1147
+ <xsl:attribute name="margin-left">0mm</xsl:attribute>
1148
+ <xsl:attribute name="margin-right">0mm</xsl:attribute>
1232
1149
 
1233
1150
 
1234
1151
 
1235
1152
 
1236
-
1237
1153
 
1238
1154
 
1239
1155
 
1240
- <xsl:attribute name="font-size">11pt</xsl:attribute>
1241
- <xsl:attribute name="text-align">left</xsl:attribute>
1242
- <xsl:attribute name="color">rgb(68, 84, 106)</xsl:attribute>
1243
- <xsl:attribute name="font-weight">normal</xsl:attribute>
1244
- <xsl:attribute name="font-style">italic</xsl:attribute>
1245
- <xsl:attribute name="margin-top">0pt</xsl:attribute>
1246
- <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
1247
- <xsl:attribute name="keep-with-previous">always</xsl:attribute>
1248
1156
 
1249
-
1250
1157
 
1251
1158
 
1252
1159
 
1253
1160
 
1254
- </xsl:attribute-set><xsl:attribute-set name="table-footer-cell-style">
1255
1161
 
1256
- </xsl:attribute-set><xsl:attribute-set name="appendix-style">
1257
-
1258
- <xsl:attribute name="font-size">12pt</xsl:attribute>
1259
- <xsl:attribute name="font-weight">bold</xsl:attribute>
1260
- <xsl:attribute name="margin-top">12pt</xsl:attribute>
1261
- <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
1262
1162
 
1263
1163
 
1264
1164
 
1265
- </xsl:attribute-set><xsl:attribute-set name="appendix-example-style">
1266
1165
 
1267
- <xsl:attribute name="font-size">10pt</xsl:attribute>
1268
- <xsl:attribute name="margin-top">8pt</xsl:attribute>
1269
- <xsl:attribute name="margin-bottom">8pt</xsl:attribute>
1166
+ <xsl:attribute name="font-size">10pt</xsl:attribute>
1167
+ <xsl:attribute name="space-after">12pt</xsl:attribute>
1270
1168
 
1271
1169
 
1170
+
1272
1171
 
1273
- </xsl:attribute-set><xsl:attribute-set name="xref-style">
1274
1172
 
1173
+ </xsl:attribute-set><xsl:attribute-set name="table-style">
1174
+ <xsl:attribute name="table-omit-footer-at-break">true</xsl:attribute>
1175
+ <xsl:attribute name="table-layout">fixed</xsl:attribute>
1176
+ <xsl:attribute name="margin-left">0mm</xsl:attribute>
1177
+ <xsl:attribute name="margin-right">0mm</xsl:attribute>
1275
1178
 
1276
1179
 
1277
- <xsl:attribute name="color">blue</xsl:attribute>
1278
- <xsl:attribute name="text-decoration">underline</xsl:attribute>
1279
1180
 
1280
1181
 
1281
1182
 
1282
- </xsl:attribute-set><xsl:attribute-set name="eref-style">
1283
1183
 
1284
1184
 
1285
1185
 
1286
- <xsl:attribute name="color">blue</xsl:attribute>
1287
- <xsl:attribute name="text-decoration">underline</xsl:attribute>
1288
1186
 
1289
1187
 
1290
1188
 
1291
1189
 
1292
- </xsl:attribute-set><xsl:attribute-set name="note-style">
1293
1190
 
1294
1191
 
1295
1192
 
1296
1193
 
1297
-
1298
1194
 
1195
+
1299
1196
 
1300
1197
 
1301
1198
 
1302
1199
 
1200
+ </xsl:attribute-set><xsl:attribute-set name="table-name-style">
1201
+ <xsl:attribute name="keep-with-next">always</xsl:attribute>
1202
+
1303
1203
 
1304
1204
 
1305
- <xsl:attribute name="font-size">10pt</xsl:attribute>
1306
- <xsl:attribute name="margin-top">12pt</xsl:attribute>
1307
- <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
1308
- <xsl:attribute name="line-height">115%</xsl:attribute>
1309
1205
 
1310
1206
 
1207
+
1311
1208
 
1312
1209
 
1313
1210
 
1314
- </xsl:attribute-set><xsl:variable name="note-body-indent">10mm</xsl:variable><xsl:variable name="note-body-indent-table">5mm</xsl:variable><xsl:attribute-set name="note-name-style">
1211
+ <xsl:attribute name="font-size">11pt</xsl:attribute>
1212
+ <xsl:attribute name="text-align">left</xsl:attribute>
1213
+ <xsl:attribute name="color">rgb(68, 84, 106)</xsl:attribute>
1214
+ <xsl:attribute name="font-weight">normal</xsl:attribute>
1215
+ <xsl:attribute name="font-style">italic</xsl:attribute>
1216
+ <xsl:attribute name="margin-top">0pt</xsl:attribute>
1217
+ <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
1218
+ <xsl:attribute name="keep-with-previous">always</xsl:attribute>
1315
1219
 
1220
+
1316
1221
 
1317
1222
 
1318
1223
 
1319
1224
 
1225
+ </xsl:attribute-set><xsl:attribute-set name="table-row-style">
1226
+ <xsl:attribute name="min-height">4mm</xsl:attribute>
1320
1227
 
1321
1228
 
1322
1229
 
1323
1230
 
1231
+ </xsl:attribute-set><xsl:attribute-set name="table-header-row-style" use-attribute-sets="table-row-style">
1232
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
1324
1233
 
1325
1234
 
1326
- <xsl:attribute name="padding-right">4mm</xsl:attribute>
1327
1235
 
1328
1236
 
1329
1237
 
1330
- </xsl:attribute-set><xsl:attribute-set name="table-note-name-style">
1331
1238
 
1332
1239
 
1240
+
1333
1241
 
1242
+ </xsl:attribute-set><xsl:attribute-set name="table-footer-row-style" use-attribute-sets="table-row-style">
1334
1243
 
1335
- </xsl:attribute-set><xsl:attribute-set name="note-p-style">
1336
1244
 
1337
1245
 
1246
+ </xsl:attribute-set><xsl:attribute-set name="table-body-row-style" use-attribute-sets="table-row-style">
1247
+
1248
+ </xsl:attribute-set><xsl:attribute-set name="table-header-cell-style">
1249
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
1250
+ <xsl:attribute name="border">solid black 1pt</xsl:attribute>
1251
+ <xsl:attribute name="padding-left">1mm</xsl:attribute>
1252
+ <xsl:attribute name="display-align">center</xsl:attribute>
1338
1253
 
1339
-
1340
1254
 
1341
1255
 
1342
1256
 
1343
1257
 
1344
1258
 
1345
- <xsl:attribute name="margin-top">12pt</xsl:attribute>
1346
- <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
1347
1259
 
1348
1260
 
1349
1261
 
1350
1262
 
1263
+ <xsl:attribute name="padding">1mm</xsl:attribute>
1264
+ <xsl:attribute name="background-color">rgb(0, 51, 102)</xsl:attribute>
1265
+ <xsl:attribute name="color">white</xsl:attribute>
1266
+ <xsl:attribute name="border">solid 0.5pt rgb(153, 153, 153)</xsl:attribute>
1267
+ <xsl:attribute name="height">5mm</xsl:attribute>
1351
1268
 
1352
- </xsl:attribute-set><xsl:attribute-set name="termnote-style">
1353
1269
 
1354
1270
 
1355
- <xsl:attribute name="font-size">10pt</xsl:attribute>
1356
- <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
1357
1271
 
1272
+ </xsl:attribute-set><xsl:attribute-set name="table-cell-style">
1273
+ <xsl:attribute name="display-align">center</xsl:attribute>
1274
+ <xsl:attribute name="border">solid black 1pt</xsl:attribute>
1275
+ <xsl:attribute name="padding-left">1mm</xsl:attribute>
1358
1276
 
1359
1277
 
1360
1278
 
1361
1279
 
1362
1280
 
1363
- </xsl:attribute-set><xsl:attribute-set name="termnote-name-style">
1364
1281
 
1365
-
1366
1282
 
1367
1283
 
1368
- </xsl:attribute-set><xsl:attribute-set name="quote-style">
1369
- <xsl:attribute name="role">BlockQuote</xsl:attribute>
1370
1284
 
1371
- <xsl:attribute name="margin-top">12pt</xsl:attribute>
1372
- <xsl:attribute name="margin-left">13mm</xsl:attribute>
1373
- <xsl:attribute name="margin-right">12mm</xsl:attribute>
1374
1285
 
1286
+ <xsl:attribute name="padding-top">1mm</xsl:attribute>
1287
+ <xsl:attribute name="border">solid 0.5pt rgb(153, 153, 153)</xsl:attribute>
1288
+ <xsl:attribute name="height">5mm</xsl:attribute>
1375
1289
 
1376
1290
 
1377
1291
 
1378
1292
 
1293
+ </xsl:attribute-set><xsl:attribute-set name="table-footer-cell-style">
1294
+ <xsl:attribute name="border">solid black 1pt</xsl:attribute>
1295
+ <xsl:attribute name="padding-left">1mm</xsl:attribute>
1296
+ <xsl:attribute name="padding-right">1mm</xsl:attribute>
1297
+ <xsl:attribute name="padding-top">1mm</xsl:attribute>
1379
1298
 
1380
1299
 
1381
- </xsl:attribute-set><xsl:attribute-set name="quote-source-style">
1382
1300
 
1383
- <xsl:attribute name="text-align">right</xsl:attribute>
1384
- <xsl:attribute name="margin-right">25mm</xsl:attribute>
1385
1301
 
1386
-
1387
-
1388
- </xsl:attribute-set><xsl:attribute-set name="termsource-style">
1389
1302
 
1390
1303
 
1391
- <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
1392
- <xsl:attribute name="keep-with-previous">always</xsl:attribute>
1393
1304
 
1305
+
1394
1306
 
1395
1307
 
1396
1308
 
1309
+ </xsl:attribute-set><xsl:attribute-set name="table-note-style">
1310
+ <xsl:attribute name="font-size">10pt</xsl:attribute>
1311
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
1397
1312
 
1398
1313
 
1399
- </xsl:attribute-set><xsl:attribute-set name="origin-style">
1400
1314
 
1401
1315
 
1402
- <xsl:attribute name="color">blue</xsl:attribute>
1403
- <xsl:attribute name="text-decoration">underline</xsl:attribute>
1404
1316
 
1405
1317
 
1406
1318
 
1407
- </xsl:attribute-set><xsl:attribute-set name="term-style">
1408
1319
 
1409
- </xsl:attribute-set><xsl:attribute-set name="figure-name-style">
1320
+ </xsl:attribute-set><xsl:attribute-set name="table-fn-style">
1321
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
1410
1322
 
1411
1323
 
1412
-
1413
1324
 
1414
1325
 
1415
- <xsl:attribute name="font-size">11pt</xsl:attribute>
1416
- <xsl:attribute name="text-align">left</xsl:attribute>
1417
- <xsl:attribute name="color">rgb(68, 84, 106)</xsl:attribute>
1418
- <xsl:attribute name="font-weight">normal</xsl:attribute>
1419
- <xsl:attribute name="font-style">italic</xsl:attribute>
1420
- <xsl:attribute name="margin-top">0pt</xsl:attribute>
1421
- <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
1422
- <xsl:attribute name="keep-with-previous">always</xsl:attribute>
1423
1326
 
1424
1327
 
1328
+ </xsl:attribute-set><xsl:attribute-set name="table-fn-number-style">
1329
+ <xsl:attribute name="font-size">80%</xsl:attribute>
1330
+ <xsl:attribute name="padding-right">5mm</xsl:attribute>
1425
1331
 
1426
1332
 
1427
1333
 
@@ -1431,73 +1337,296 @@
1431
1337
 
1432
1338
 
1433
1339
 
1434
-
1435
1340
 
1436
1341
 
1342
+ <xsl:attribute name="vertical-align">super</xsl:attribute>
1437
1343
 
1438
-
1439
- </xsl:attribute-set><xsl:attribute-set name="formula-style">
1440
1344
 
1441
- </xsl:attribute-set><xsl:attribute-set name="image-style">
1442
- <xsl:attribute name="text-align">center</xsl:attribute>
1345
+ </xsl:attribute-set><xsl:attribute-set name="fn-container-body-style">
1346
+ <xsl:attribute name="text-indent">0</xsl:attribute>
1347
+ <xsl:attribute name="start-indent">0</xsl:attribute>
1443
1348
 
1444
1349
 
1350
+ </xsl:attribute-set><xsl:attribute-set name="table-fn-body-style">
1445
1351
 
1446
- <xsl:attribute name="space-before">12pt</xsl:attribute>
1447
- <xsl:attribute name="space-after">0pt</xsl:attribute>
1352
+ </xsl:attribute-set><xsl:attribute-set name="figure-fn-number-style">
1353
+ <xsl:attribute name="font-size">80%</xsl:attribute>
1354
+ <xsl:attribute name="padding-right">5mm</xsl:attribute>
1355
+ <xsl:attribute name="vertical-align">super</xsl:attribute>
1448
1356
 
1357
+ </xsl:attribute-set><xsl:attribute-set name="figure-fn-body-style">
1358
+ <xsl:attribute name="text-align">justify</xsl:attribute>
1359
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
1449
1360
 
1361
+ </xsl:attribute-set><xsl:attribute-set name="dt-row-style">
1450
1362
 
1451
1363
 
1452
- </xsl:attribute-set><xsl:attribute-set name="figure-pseudocode-p-style">
1364
+ </xsl:attribute-set><xsl:attribute-set name="dt-style">
1365
+ <xsl:attribute name="margin-top">6pt</xsl:attribute>
1453
1366
 
1454
- </xsl:attribute-set><xsl:attribute-set name="image-graphic-style">
1455
1367
 
1456
1368
 
1457
- <xsl:attribute name="width">100%</xsl:attribute>
1458
- <xsl:attribute name="content-height">scale-to-fit</xsl:attribute>
1459
- <xsl:attribute name="scaling">uniform</xsl:attribute>
1460
1369
 
1461
1370
 
1462
1371
 
1463
-
1464
-
1465
- </xsl:attribute-set><xsl:attribute-set name="tt-style">
1466
1372
 
1467
1373
 
1468
- <xsl:attribute name="font-family">Courier New</xsl:attribute>
1469
1374
 
1375
+ <xsl:attribute name="margin-top">0pt</xsl:attribute>
1376
+ <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
1470
1377
 
1471
- </xsl:attribute-set><xsl:attribute-set name="sourcecode-name-style">
1472
- <xsl:attribute name="font-size">11pt</xsl:attribute>
1473
- <xsl:attribute name="font-weight">bold</xsl:attribute>
1474
- <xsl:attribute name="text-align">center</xsl:attribute>
1475
- <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
1476
- <xsl:attribute name="keep-with-previous">always</xsl:attribute>
1477
1378
 
1478
- </xsl:attribute-set><xsl:attribute-set name="domain-style">
1379
+ </xsl:attribute-set><xsl:attribute-set name="appendix-style">
1479
1380
 
1480
- </xsl:attribute-set><xsl:attribute-set name="admitted-style">
1381
+ <xsl:attribute name="font-size">12pt</xsl:attribute>
1382
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
1383
+ <xsl:attribute name="margin-top">12pt</xsl:attribute>
1384
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
1481
1385
 
1482
- <xsl:attribute name="font-size">11pt</xsl:attribute>
1483
1386
 
1484
1387
 
1388
+ </xsl:attribute-set><xsl:attribute-set name="appendix-example-style">
1485
1389
 
1486
- </xsl:attribute-set><xsl:attribute-set name="deprecates-style">
1390
+ <xsl:attribute name="font-size">10pt</xsl:attribute>
1391
+ <xsl:attribute name="margin-top">8pt</xsl:attribute>
1392
+ <xsl:attribute name="margin-bottom">8pt</xsl:attribute>
1487
1393
 
1488
1394
 
1489
- </xsl:attribute-set><xsl:attribute-set name="definition-style">
1490
1395
 
1491
- <xsl:attribute name="space-after">6pt</xsl:attribute>
1396
+ </xsl:attribute-set><xsl:attribute-set name="xref-style">
1492
1397
 
1493
1398
 
1494
1399
 
1495
- </xsl:attribute-set><xsl:variable name="color-added-text">
1496
- <xsl:text>rgb(0, 255, 0)</xsl:text>
1497
- </xsl:variable><xsl:attribute-set name="add-style">
1498
- <xsl:attribute name="color">red</xsl:attribute>
1499
- <xsl:attribute name="text-decoration">underline</xsl:attribute>
1500
- <!-- <xsl:attribute name="color">black</xsl:attribute>
1400
+ <xsl:attribute name="color">blue</xsl:attribute>
1401
+ <xsl:attribute name="text-decoration">underline</xsl:attribute>
1402
+
1403
+
1404
+
1405
+ </xsl:attribute-set><xsl:attribute-set name="eref-style">
1406
+
1407
+
1408
+
1409
+ <xsl:attribute name="color">blue</xsl:attribute>
1410
+ <xsl:attribute name="text-decoration">underline</xsl:attribute>
1411
+
1412
+
1413
+
1414
+
1415
+ </xsl:attribute-set><xsl:attribute-set name="note-style">
1416
+
1417
+
1418
+
1419
+
1420
+
1421
+
1422
+
1423
+
1424
+
1425
+
1426
+
1427
+
1428
+ <xsl:attribute name="font-size">10pt</xsl:attribute>
1429
+ <xsl:attribute name="margin-top">12pt</xsl:attribute>
1430
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
1431
+ <xsl:attribute name="line-height">115%</xsl:attribute>
1432
+
1433
+
1434
+
1435
+
1436
+
1437
+ </xsl:attribute-set><xsl:variable name="note-body-indent">10mm</xsl:variable><xsl:variable name="note-body-indent-table">5mm</xsl:variable><xsl:attribute-set name="note-name-style">
1438
+
1439
+
1440
+
1441
+
1442
+
1443
+
1444
+
1445
+
1446
+
1447
+
1448
+
1449
+ <xsl:attribute name="padding-right">4mm</xsl:attribute>
1450
+
1451
+
1452
+
1453
+ </xsl:attribute-set><xsl:attribute-set name="table-note-name-style">
1454
+ <xsl:attribute name="padding-right">2mm</xsl:attribute>
1455
+
1456
+
1457
+
1458
+
1459
+ </xsl:attribute-set><xsl:attribute-set name="note-p-style">
1460
+
1461
+
1462
+
1463
+
1464
+
1465
+
1466
+
1467
+
1468
+
1469
+ <xsl:attribute name="margin-top">12pt</xsl:attribute>
1470
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
1471
+
1472
+
1473
+
1474
+
1475
+
1476
+ </xsl:attribute-set><xsl:attribute-set name="termnote-style">
1477
+
1478
+
1479
+ <xsl:attribute name="font-size">10pt</xsl:attribute>
1480
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
1481
+
1482
+
1483
+
1484
+
1485
+
1486
+
1487
+ </xsl:attribute-set><xsl:attribute-set name="termnote-name-style">
1488
+
1489
+
1490
+
1491
+
1492
+ </xsl:attribute-set><xsl:attribute-set name="quote-style">
1493
+ <xsl:attribute name="role">BlockQuote</xsl:attribute>
1494
+
1495
+ <xsl:attribute name="margin-top">12pt</xsl:attribute>
1496
+ <xsl:attribute name="margin-left">13mm</xsl:attribute>
1497
+ <xsl:attribute name="margin-right">12mm</xsl:attribute>
1498
+
1499
+
1500
+
1501
+
1502
+
1503
+
1504
+
1505
+ </xsl:attribute-set><xsl:attribute-set name="quote-source-style">
1506
+
1507
+ <xsl:attribute name="text-align">right</xsl:attribute>
1508
+ <xsl:attribute name="margin-right">25mm</xsl:attribute>
1509
+
1510
+
1511
+
1512
+ </xsl:attribute-set><xsl:attribute-set name="termsource-style">
1513
+
1514
+
1515
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
1516
+ <xsl:attribute name="keep-with-previous">always</xsl:attribute>
1517
+
1518
+
1519
+
1520
+
1521
+
1522
+
1523
+ </xsl:attribute-set><xsl:attribute-set name="termsource-text-style">
1524
+
1525
+
1526
+ </xsl:attribute-set><xsl:attribute-set name="origin-style">
1527
+
1528
+
1529
+ <xsl:attribute name="color">blue</xsl:attribute>
1530
+ <xsl:attribute name="text-decoration">underline</xsl:attribute>
1531
+
1532
+
1533
+
1534
+ </xsl:attribute-set><xsl:attribute-set name="term-style">
1535
+
1536
+ </xsl:attribute-set><xsl:attribute-set name="figure-style">
1537
+
1538
+ </xsl:attribute-set><xsl:attribute-set name="figure-name-style">
1539
+
1540
+
1541
+
1542
+
1543
+
1544
+ <xsl:attribute name="font-size">11pt</xsl:attribute>
1545
+ <xsl:attribute name="text-align">left</xsl:attribute>
1546
+ <xsl:attribute name="color">rgb(68, 84, 106)</xsl:attribute>
1547
+ <xsl:attribute name="font-weight">normal</xsl:attribute>
1548
+ <xsl:attribute name="font-style">italic</xsl:attribute>
1549
+ <xsl:attribute name="margin-top">0pt</xsl:attribute>
1550
+ <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
1551
+ <xsl:attribute name="keep-with-previous">always</xsl:attribute>
1552
+
1553
+
1554
+
1555
+
1556
+
1557
+
1558
+
1559
+
1560
+
1561
+
1562
+
1563
+
1564
+
1565
+
1566
+
1567
+
1568
+ </xsl:attribute-set><xsl:attribute-set name="formula-style">
1569
+
1570
+ </xsl:attribute-set><xsl:attribute-set name="image-style">
1571
+ <xsl:attribute name="text-align">center</xsl:attribute>
1572
+
1573
+
1574
+
1575
+ <xsl:attribute name="space-before">12pt</xsl:attribute>
1576
+ <xsl:attribute name="space-after">0pt</xsl:attribute>
1577
+
1578
+
1579
+
1580
+
1581
+ </xsl:attribute-set><xsl:attribute-set name="figure-pseudocode-p-style">
1582
+
1583
+ </xsl:attribute-set><xsl:attribute-set name="image-graphic-style">
1584
+
1585
+
1586
+ <xsl:attribute name="width">100%</xsl:attribute>
1587
+ <xsl:attribute name="content-height">scale-to-fit</xsl:attribute>
1588
+ <xsl:attribute name="scaling">uniform</xsl:attribute>
1589
+
1590
+
1591
+
1592
+
1593
+
1594
+ </xsl:attribute-set><xsl:attribute-set name="tt-style">
1595
+
1596
+
1597
+ <xsl:attribute name="font-family">Courier New</xsl:attribute>
1598
+
1599
+
1600
+ </xsl:attribute-set><xsl:attribute-set name="sourcecode-name-style">
1601
+ <xsl:attribute name="font-size">11pt</xsl:attribute>
1602
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
1603
+ <xsl:attribute name="text-align">center</xsl:attribute>
1604
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
1605
+ <xsl:attribute name="keep-with-previous">always</xsl:attribute>
1606
+
1607
+ </xsl:attribute-set><xsl:attribute-set name="domain-style">
1608
+
1609
+ </xsl:attribute-set><xsl:attribute-set name="admitted-style">
1610
+
1611
+ <xsl:attribute name="font-size">11pt</xsl:attribute>
1612
+
1613
+
1614
+
1615
+ </xsl:attribute-set><xsl:attribute-set name="deprecates-style">
1616
+
1617
+
1618
+ </xsl:attribute-set><xsl:attribute-set name="definition-style">
1619
+
1620
+ <xsl:attribute name="space-after">6pt</xsl:attribute>
1621
+
1622
+
1623
+
1624
+ </xsl:attribute-set><xsl:variable name="color-added-text">
1625
+ <xsl:text>rgb(0, 255, 0)</xsl:text>
1626
+ </xsl:variable><xsl:attribute-set name="add-style">
1627
+ <xsl:attribute name="color">red</xsl:attribute>
1628
+ <xsl:attribute name="text-decoration">underline</xsl:attribute>
1629
+ <!-- <xsl:attribute name="color">black</xsl:attribute>
1501
1630
  <xsl:attribute name="background-color"><xsl:value-of select="$color-added-text"/></xsl:attribute>
1502
1631
  <xsl:attribute name="padding-top">1mm</xsl:attribute>
1503
1632
  <xsl:attribute name="padding-bottom">0.5mm</xsl:attribute> -->
@@ -1514,6 +1643,21 @@
1514
1643
 
1515
1644
  </xsl:attribute-set><xsl:attribute-set name="toc-style">
1516
1645
  <xsl:attribute name="line-height">135%</xsl:attribute>
1646
+ </xsl:attribute-set><xsl:attribute-set name="fn-reference-style">
1647
+ <xsl:attribute name="font-size">80%</xsl:attribute>
1648
+ <xsl:attribute name="keep-with-previous.within-line">always</xsl:attribute>
1649
+
1650
+
1651
+
1652
+
1653
+
1654
+
1655
+ <xsl:attribute name="vertical-align">super</xsl:attribute>
1656
+ <xsl:attribute name="color">blue</xsl:attribute>
1657
+ <xsl:attribute name="text-decoration">underline</xsl:attribute>
1658
+
1659
+
1660
+
1517
1661
  </xsl:attribute-set><xsl:attribute-set name="fn-style">
1518
1662
  <xsl:attribute name="keep-with-previous.within-line">always</xsl:attribute>
1519
1663
  </xsl:attribute-set><xsl:attribute-set name="fn-num-style">
@@ -1587,30 +1731,213 @@
1587
1731
 
1588
1732
 
1589
1733
 
1590
- </xsl:attribute-set><xsl:variable name="border-block-added">2.5pt solid rgb(0, 176, 80)</xsl:variable><xsl:variable name="border-block-deleted">2.5pt solid rgb(255, 0, 0)</xsl:variable><xsl:variable name="ace_tag">ace-tag_</xsl:variable><xsl:template name="OLD_processPrefaceSectionsDefault_Contents">
1591
- <xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='abstract']" mode="contents"/>
1592
- <xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='foreword']" mode="contents"/>
1593
- <xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='introduction']" mode="contents"/>
1594
- <xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name() != 'abstract' and local-name() != 'foreword' and local-name() != 'introduction' and local-name() != 'acknowledgements']" mode="contents"/>
1595
- <xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='acknowledgements']" mode="contents"/>
1596
- </xsl:template><xsl:template name="processPrefaceSectionsDefault_Contents">
1734
+ </xsl:attribute-set><xsl:attribute-set name="admonition-style">
1735
+
1736
+
1737
+
1738
+
1739
+
1740
+
1741
+
1742
+
1743
+
1744
+
1745
+
1746
+ <xsl:attribute name="border">0.5pt solid rgb(79, 129, 189)</xsl:attribute>
1747
+ <xsl:attribute name="color">rgb(79, 129, 189)</xsl:attribute>
1748
+ <xsl:attribute name="margin-left">16mm</xsl:attribute>
1749
+ <xsl:attribute name="margin-right">16mm</xsl:attribute>
1750
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
1751
+
1752
+
1753
+
1754
+
1755
+ </xsl:attribute-set><xsl:attribute-set name="admonition-container-style">
1756
+
1757
+
1758
+
1759
+
1760
+
1761
+
1762
+
1763
+ <xsl:attribute name="margin-left">0mm</xsl:attribute>
1764
+ <xsl:attribute name="margin-right">0mm</xsl:attribute>
1765
+ <xsl:attribute name="padding">2mm</xsl:attribute>
1766
+ <xsl:attribute name="padding-top">3mm</xsl:attribute>
1767
+
1768
+
1769
+
1770
+
1771
+ </xsl:attribute-set><xsl:attribute-set name="admonition-name-style">
1772
+ <xsl:attribute name="keep-with-next">always</xsl:attribute>
1773
+
1774
+
1775
+
1776
+
1777
+
1778
+
1779
+
1780
+
1781
+
1782
+
1783
+ <xsl:attribute name="font-size">11pt</xsl:attribute>
1784
+ <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
1785
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
1786
+ <xsl:attribute name="font-style">italic</xsl:attribute>
1787
+ <xsl:attribute name="text-align">center</xsl:attribute>
1788
+
1789
+
1790
+
1791
+
1792
+ </xsl:attribute-set><xsl:attribute-set name="admonition-p-style">
1793
+
1794
+
1795
+
1796
+
1797
+
1798
+
1799
+
1800
+
1801
+ <xsl:attribute name="font-style">italic</xsl:attribute>
1802
+
1803
+
1804
+
1805
+
1806
+ </xsl:attribute-set><xsl:attribute-set name="bibitem-normative-style">
1807
+
1808
+
1809
+
1810
+
1811
+
1812
+
1813
+
1814
+
1815
+
1816
+
1817
+
1818
+
1819
+
1820
+
1821
+
1822
+
1823
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
1824
+ <xsl:attribute name="start-indent">12mm</xsl:attribute>
1825
+ <xsl:attribute name="text-indent">-12mm</xsl:attribute>
1826
+ <xsl:attribute name="line-height">115%</xsl:attribute>
1827
+
1828
+
1829
+
1830
+ </xsl:attribute-set><xsl:attribute-set name="bibitem-normative-list-style">
1831
+ <xsl:attribute name="provisional-distance-between-starts">12mm</xsl:attribute>
1832
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
1833
+
1834
+
1835
+
1836
+
1837
+
1838
+
1839
+
1840
+
1841
+
1842
+
1843
+
1844
+
1845
+
1846
+ </xsl:attribute-set><xsl:attribute-set name="bibitem-non-normative-style">
1847
+
1848
+
1849
+
1850
+
1851
+ </xsl:attribute-set><xsl:attribute-set name="bibitem-non-normative-list-style">
1852
+ <xsl:attribute name="provisional-distance-between-starts">12mm</xsl:attribute>
1853
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
1854
+
1855
+
1856
+
1857
+
1858
+
1859
+
1860
+
1861
+
1862
+
1863
+
1864
+
1865
+
1866
+
1867
+ </xsl:attribute-set><xsl:attribute-set name="bibitem-normative-list-body-style">
1868
+
1869
+
1870
+ </xsl:attribute-set><xsl:attribute-set name="bibitem-non-normative-list-body-style">
1871
+
1872
+
1873
+ </xsl:attribute-set><xsl:attribute-set name="bibitem-note-fn-style">
1874
+ <xsl:attribute name="keep-with-previous.within-line">always</xsl:attribute>
1875
+ <xsl:attribute name="font-size">65%</xsl:attribute>
1876
+
1877
+
1878
+
1879
+
1880
+
1881
+
1882
+
1883
+
1884
+
1885
+
1886
+
1887
+
1888
+
1889
+
1890
+ <xsl:attribute name="vertical-align">super</xsl:attribute>
1891
+
1892
+
1893
+
1894
+ </xsl:attribute-set><xsl:attribute-set name="bibitem-note-fn-number-style">
1895
+ <xsl:attribute name="keep-with-next.within-line">always</xsl:attribute>
1896
+
1897
+
1898
+
1899
+
1900
+
1901
+
1902
+
1903
+
1904
+
1905
+
1906
+
1907
+
1908
+
1909
+
1910
+ <xsl:attribute name="font-size">60%</xsl:attribute>
1911
+ <xsl:attribute name="vertical-align">super</xsl:attribute>
1912
+
1913
+
1914
+
1915
+ </xsl:attribute-set><xsl:attribute-set name="bibitem-note-fn-body-style">
1916
+ <xsl:attribute name="font-size">10pt</xsl:attribute>
1917
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
1918
+ <xsl:attribute name="start-indent">0pt</xsl:attribute>
1919
+
1920
+
1921
+
1922
+
1923
+
1924
+
1925
+
1926
+
1927
+
1928
+
1929
+
1930
+ </xsl:attribute-set><xsl:attribute-set name="references-non-normative-style">
1931
+
1932
+
1933
+
1934
+ <xsl:attribute name="line-height">120%</xsl:attribute>
1935
+
1936
+ </xsl:attribute-set><xsl:variable name="border-block-added">2.5pt solid rgb(0, 176, 80)</xsl:variable><xsl:variable name="border-block-deleted">2.5pt solid rgb(255, 0, 0)</xsl:variable><xsl:variable name="ace_tag">ace-tag_</xsl:variable><xsl:template name="processPrefaceSectionsDefault_Contents">
1597
1937
  <xsl:for-each select="/*/*[local-name()='preface']/*">
1598
1938
  <xsl:sort select="@displayorder" data-type="number"/>
1599
1939
  <xsl:apply-templates select="." mode="contents"/>
1600
1940
  </xsl:for-each>
1601
- </xsl:template><xsl:template name="OLD_processMainSectionsDefault_Contents">
1602
- <xsl:apply-templates select="/*/*[local-name()='sections']/*[local-name()='clause'][@type='scope']" mode="contents"/>
1603
-
1604
- <!-- Normative references -->
1605
- <xsl:apply-templates select="/*/*[local-name()='bibliography']/*[local-name()='references'][@normative='true'] | /*/*[local-name()='bibliography']/*[local-name()='clause'][*[local-name()='references'][@normative='true']]" mode="contents"/>
1606
- <!-- Terms and definitions -->
1607
- <xsl:apply-templates select="/*/*[local-name()='sections']/*[local-name()='terms'] | /*/*[local-name()='sections']/*[local-name()='clause'][.//*[local-name()='terms']] | /*/*[local-name()='sections']/*[local-name()='definitions'] | /*/*[local-name()='sections']/*[local-name()='clause'][.//*[local-name()='definitions']]" mode="contents"/>
1608
- <!-- Another main sections -->
1609
- <xsl:apply-templates select="/*/*[local-name()='sections']/*[local-name() != 'terms' and local-name() != 'definitions' and not(@type='scope') and not(local-name() = 'clause' and .//*[local-name()='terms']) and not(local-name() = 'clause' and .//*[local-name()='definitions'])]" mode="contents"/>
1610
- <xsl:apply-templates select="/*/*[local-name()='annex']" mode="contents"/>
1611
- <!-- Bibliography -->
1612
- <xsl:apply-templates select="/*/*[local-name()='bibliography']/*[local-name()='references'][not(@normative='true')] | /*/*[local-name()='bibliography']/*[local-name()='clause'][*[local-name()='references'][not(@normative='true')]]" mode="contents"/>
1613
-
1614
1941
  </xsl:template><xsl:template name="processMainSectionsDefault_Contents">
1615
1942
 
1616
1943
  <xsl:for-each select="/*/*[local-name()='sections']/* | /*/*[local-name()='bibliography']/*[local-name()='references'][@normative='true'] | /*/*[local-name()='bibliography']/*[local-name()='clause'][*[local-name()='references'][@normative='true']]">
@@ -1627,29 +1954,11 @@
1627
1954
  <xsl:sort select="@displayorder" data-type="number"/>
1628
1955
  <xsl:apply-templates select="." mode="contents"/>
1629
1956
  </xsl:for-each>
1630
- </xsl:template><xsl:template name="OLD_processPrefaceSectionsDefault">
1631
- <xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='abstract']"/>
1632
- <xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='foreword']"/>
1633
- <xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='introduction']"/>
1634
- <xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name() != 'abstract' and local-name() != 'foreword' and local-name() != 'introduction' and local-name() != 'acknowledgements']"/>
1635
- <xsl:apply-templates select="/*/*[local-name()='preface']/*[local-name()='acknowledgements']"/>
1636
1957
  </xsl:template><xsl:template name="processPrefaceSectionsDefault">
1637
1958
  <xsl:for-each select="/*/*[local-name()='preface']/*">
1638
1959
  <xsl:sort select="@displayorder" data-type="number"/>
1639
1960
  <xsl:apply-templates select="."/>
1640
1961
  </xsl:for-each>
1641
- </xsl:template><xsl:template name="OLD_processMainSectionsDefault">
1642
- <xsl:apply-templates select="/*/*[local-name()='sections']/*[local-name()='clause'][@type='scope']"/>
1643
-
1644
- <!-- Normative references -->
1645
- <xsl:apply-templates select="/*/*[local-name()='bibliography']/*[local-name()='references'][@normative='true']"/>
1646
- <!-- Terms and definitions -->
1647
- <xsl:apply-templates select="/*/*[local-name()='sections']/*[local-name()='terms'] | /*/*[local-name()='sections']/*[local-name()='clause'][.//*[local-name()='terms']] | /*/*[local-name()='sections']/*[local-name()='definitions'] | /*/*[local-name()='sections']/*[local-name()='clause'][.//*[local-name()='definitions']]"/>
1648
- <!-- Another main sections -->
1649
- <xsl:apply-templates select="/*/*[local-name()='sections']/*[local-name() != 'terms' and local-name() != 'definitions' and not(@type='scope') and not(local-name() = 'clause' and .//*[local-name()='terms']) and not(local-name() = 'clause' and .//*[local-name()='definitions'])]"/>
1650
- <xsl:apply-templates select="/*/*[local-name()='annex']"/>
1651
- <!-- Bibliography -->
1652
- <xsl:apply-templates select="/*/*[local-name()='bibliography']/*[local-name()='references'][not(@normative='true')]"/>
1653
1962
  </xsl:template><xsl:template name="processMainSectionsDefault">
1654
1963
  <xsl:for-each select="/*/*[local-name()='sections']/* | /*/*[local-name()='bibliography']/*[local-name()='references'][@normative='true']">
1655
1964
  <xsl:sort select="@displayorder" data-type="number"/>
@@ -1686,41 +1995,17 @@
1686
1995
  <xsl:call-template name="getSimpleTable"/>
1687
1996
  </xsl:variable>
1688
1997
 
1689
- <!-- <xsl:if test="$namespace = 'bipm'">
1690
- <fo:block>&#xA0;</fo:block>
1691
- </xsl:if> -->
1692
-
1693
1998
 
1694
1999
  <!-- Display table's name before table as standalone block -->
1695
2000
  <!-- $namespace = 'iso' or -->
1696
2001
 
1697
2002
 
1698
2003
 
1699
-
1700
-
1701
- <xsl:call-template name="fn_name_display"/>
1702
-
2004
+ <xsl:call-template name="table_name_fn_display"/>
1703
2005
 
1704
2006
 
1705
2007
  <xsl:variable name="cols-count" select="count(xalan:nodeset($simple-table)/*/tr[1]/td)"/>
1706
2008
 
1707
- <!-- <xsl:variable name="cols-count">
1708
- <xsl:choose>
1709
- <xsl:when test="*[local-name()='thead']">
1710
- <xsl:call-template name="calculate-columns-numbers">
1711
- <xsl:with-param name="table-row" select="*[local-name()='thead']/*[local-name()='tr'][1]"/>
1712
- </xsl:call-template>
1713
- </xsl:when>
1714
- <xsl:otherwise>
1715
- <xsl:call-template name="calculate-columns-numbers">
1716
- <xsl:with-param name="table-row" select="*[local-name()='tbody']/*[local-name()='tr'][1]"/>
1717
- </xsl:call-template>
1718
- </xsl:otherwise>
1719
- </xsl:choose>
1720
- </xsl:variable> -->
1721
- <!-- cols-count=<xsl:copy-of select="$cols-count"/> -->
1722
- <!-- cols-count2=<xsl:copy-of select="$cols-count2"/> -->
1723
-
1724
2009
  <xsl:variable name="colwidths">
1725
2010
  <xsl:if test="not(*[local-name()='colgroup']/*[local-name()='col'])">
1726
2011
  <xsl:call-template name="calculate-column-widths">
@@ -1731,17 +2016,8 @@
1731
2016
  </xsl:variable>
1732
2017
  <!-- colwidths=<xsl:copy-of select="$colwidths"/> -->
1733
2018
 
1734
- <!-- <xsl:variable name="colwidths2">
1735
- <xsl:call-template name="calculate-column-widths">
1736
- <xsl:with-param name="cols-count" select="$cols-count"/>
1737
- </xsl:call-template>
1738
- </xsl:variable> -->
1739
-
1740
- <!-- cols-count=<xsl:copy-of select="$cols-count"/>
1741
- colwidthsNew=<xsl:copy-of select="$colwidths"/>
1742
- colwidthsOld=<xsl:copy-of select="$colwidths2"/>z -->
1743
2019
 
1744
- <xsl:variable name="margin-left">
2020
+ <xsl:variable name="margin-side">
1745
2021
  <xsl:choose>
1746
2022
  <xsl:when test="sum(xalan:nodeset($colwidths)//column) &gt; 75">15</xsl:when>
1747
2023
  <xsl:otherwise>0</xsl:otherwise>
@@ -1749,77 +2025,66 @@
1749
2025
  </xsl:variable>
1750
2026
 
1751
2027
 
1752
- <fo:block-container margin-left="-{$margin-left}mm" margin-right="-{$margin-left}mm">
1753
-
1754
-
1755
- <xsl:attribute name="font-size">10pt</xsl:attribute>
1756
-
1757
-
1758
-
1759
-
1760
-
1761
-
1762
-
2028
+ <fo:block-container xsl:use-attribute-sets="table-container-style">
2029
+
1763
2030
 
1764
- <xsl:attribute name="margin-left">0mm</xsl:attribute>
1765
- <xsl:attribute name="margin-right">0mm</xsl:attribute>
1766
- <xsl:attribute name="space-after">12pt</xsl:attribute>
1767
-
2031
+
1768
2032
 
2033
+
1769
2034
 
2035
+
1770
2036
 
1771
2037
 
1772
2038
 
2039
+
1773
2040
 
1774
2041
 
1775
2042
 
1776
2043
 
1777
2044
 
2045
+ <!-- end table block-container attributes -->
1778
2046
 
1779
2047
  <!-- display table's name before table for PAS inside block-container (2-columnn layout) -->
1780
2048
 
1781
2049
 
1782
- <xsl:variable name="table_width">
1783
- <!-- for centered table always 100% (@width will be set for middle/second cell of outer table) -->
1784
-
1785
-
1786
-
1787
- <xsl:choose>
1788
- <xsl:when test="@width"><xsl:value-of select="@width"/></xsl:when>
1789
- <xsl:otherwise>100%</xsl:otherwise>
1790
- </xsl:choose>
1791
-
1792
- </xsl:variable>
1793
-
1794
- <xsl:variable name="table_attributes">
1795
- <attribute name="table-layout">fixed</attribute>
1796
- <attribute name="width"><xsl:value-of select="normalize-space($table_width)"/></attribute>
1797
- <attribute name="margin-left"><xsl:value-of select="$margin-left"/>mm</attribute>
1798
- <attribute name="margin-right"><xsl:value-of select="$margin-left"/>mm</attribute>
1799
-
1800
-
1801
-
1802
-
1803
-
1804
-
1805
-
1806
-
1807
- <attribute name="margin-left">0mm</attribute>
1808
- <attribute name="margin-right">0mm</attribute>
1809
-
1810
-
1811
-
1812
-
1813
-
1814
-
2050
+ <xsl:variable name="table_width_default">100%</xsl:variable>
2051
+ <xsl:variable name="table_width">
2052
+ <!-- for centered table always 100% (@width will be set for middle/second cell of outer table) -->
1815
2053
 
2054
+ <xsl:choose>
2055
+ <xsl:when test="@width"><xsl:value-of select="@width"/></xsl:when>
2056
+ <xsl:otherwise><xsl:value-of select="$table_width_default"/></xsl:otherwise>
2057
+ </xsl:choose>
2058
+
2059
+ </xsl:variable>
2060
+
2061
+
2062
+ <xsl:variable name="table_attributes">
2063
+
2064
+ <xsl:element name="table_attributes" use-attribute-sets="table-style">
2065
+ <xsl:attribute name="width"><xsl:value-of select="normalize-space($table_width)"/></xsl:attribute>
2066
+
2067
+
2068
+
2069
+
2070
+
2071
+
2072
+
2073
+
2074
+
2075
+
2076
+
2077
+
2078
+
2079
+
2080
+ </xsl:element>
1816
2081
  </xsl:variable>
1817
2082
 
1818
2083
 
1819
- <fo:table id="{@id}" table-omit-footer-at-break="true">
2084
+ <fo:table id="{@id}">
1820
2085
 
1821
- <xsl:for-each select="xalan:nodeset($table_attributes)/attribute">
1822
- <xsl:attribute name="{@name}">
2086
+ <xsl:for-each select="xalan:nodeset($table_attributes)/table_attributes/@*">
2087
+ <xsl:attribute name="{local-name()}">
1823
2088
  <xsl:value-of select="."/>
1824
2089
  </xsl:attribute>
1825
2090
  </xsl:for-each>
@@ -1830,7 +2095,6 @@
1830
2095
  </xsl:if>
1831
2096
 
1832
2097
 
1833
-
1834
2098
  <xsl:choose>
1835
2099
  <xsl:when test="*[local-name()='colgroup']/*[local-name()='col']">
1836
2100
  <xsl:for-each select="*[local-name()='colgroup']/*[local-name()='col']">
@@ -1856,7 +2120,7 @@
1856
2120
  <xsl:apply-templates select="*[local-name()='thead']" mode="process_tbody"/>
1857
2121
  </xsl:when>
1858
2122
  <xsl:otherwise>
1859
- <xsl:apply-templates/>
2123
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
1860
2124
  </xsl:otherwise>
1861
2125
  </xsl:choose>
1862
2126
 
@@ -1871,30 +2135,11 @@
1871
2135
  </xsl:call-template>
1872
2136
  </xsl:for-each>
1873
2137
 
1874
- <!-- insert footer as table -->
1875
- <!-- <fo:table>
1876
- <xsl:for-each select="xalan::nodeset($table_attributes)/attribute">
1877
- <xsl:attribute name="{@name}">
1878
- <xsl:value-of select="."/>
1879
- </xsl:attribute>
1880
- </xsl:for-each>
1881
-
1882
- <xsl:for-each select="xalan:nodeset($colwidths)//column">
1883
- <xsl:choose>
1884
- <xsl:when test=". = 1 or . = 0">
1885
- <fo:table-column column-width="proportional-column-width(2)"/>
1886
- </xsl:when>
1887
- <xsl:otherwise>
1888
- <fo:table-column column-width="proportional-column-width({.})"/>
1889
- </xsl:otherwise>
1890
- </xsl:choose>
1891
- </xsl:for-each>
1892
- </fo:table>-->
1893
2138
 
1894
2139
 
1895
2140
 
1896
2141
 
1897
- <xsl:apply-templates select="*[local-name()='name']" mode="presentation"/>
2142
+ <xsl:apply-templates select="*[local-name()='name']"/>
1898
2143
 
1899
2144
 
1900
2145
  </fo:block-container>
@@ -1949,18 +2194,17 @@
1949
2194
  </xsl:otherwise>
1950
2195
  </xsl:choose>
1951
2196
 
1952
- </xsl:template><xsl:template match="*[local-name()='table']/*[local-name() = 'name']"/><xsl:template match="*[local-name()='table']/*[local-name() = 'name']" mode="presentation">
2197
+ </xsl:template><xsl:template match="*[local-name()='table']/*[local-name() = 'name']">
1953
2198
  <xsl:param name="continued"/>
1954
2199
  <xsl:if test="normalize-space() != ''">
1955
2200
  <fo:block xsl:use-attribute-sets="table-name-style">
1956
-
2201
+
1957
2202
 
1958
2203
 
1959
2204
 
1960
2205
 
1961
2206
  <xsl:choose>
1962
2207
  <xsl:when test="$continued = 'true'">
1963
- <!-- <xsl:if test="$namespace = 'bsi'"></xsl:if> -->
1964
2208
 
1965
2209
  </xsl:when>
1966
2210
  <xsl:otherwise>
@@ -2023,13 +2267,6 @@
2023
2267
  <xsl:for-each select="xalan:nodeset($table)/*/tr">
2024
2268
  <xsl:variable name="td_text">
2025
2269
  <xsl:apply-templates select="td[$curr-col]" mode="td_text"/>
2026
-
2027
- <!-- <xsl:if test="$namespace = 'bipm'">
2028
- <xsl:for-each select="*[local-name()='td'][$curr-col]//*[local-name()='math']">
2029
- <word><xsl:value-of select="normalize-space(.)"/></word>
2030
- </xsl:for-each>
2031
- </xsl:if> -->
2032
-
2033
2270
  </xsl:variable>
2034
2271
  <xsl:variable name="words">
2035
2272
  <xsl:variable name="string_with_added_zerospaces">
@@ -2066,7 +2303,6 @@
2066
2303
  </xsl:otherwise>
2067
2304
  </xsl:choose>
2068
2305
  </xsl:variable>
2069
-
2070
2306
 
2071
2307
  <column>
2072
2308
  <xsl:for-each select="xalan:nodeset($widths)//width">
@@ -2102,7 +2338,6 @@
2102
2338
  <xsl:value-of select="translate($math_text, ' ', '#')"/><!-- mathml images as one 'word' without spaces -->
2103
2339
  </xsl:template><xsl:template match="*[local-name()='table2']"/><xsl:template match="*[local-name()='thead']"/><xsl:template match="*[local-name()='thead']" mode="process">
2104
2340
  <xsl:param name="cols-count"/>
2105
- <!-- font-weight="bold" -->
2106
2341
  <fo:table-header>
2107
2342
 
2108
2343
 
@@ -2114,13 +2349,12 @@
2114
2349
  <fo:table-row>
2115
2350
  <fo:table-cell number-columns-spanned="{$cols-count}" border-left="1.5pt solid white" border-right="1.5pt solid white" border-top="1.5pt solid white" border-bottom="1.5pt solid black">
2116
2351
 
2117
- <xsl:apply-templates select="ancestor::*[local-name()='table']/*[local-name()='name']" mode="presentation">
2352
+ <xsl:apply-templates select="ancestor::*[local-name()='table']/*[local-name()='name']">
2118
2353
  <xsl:with-param name="continued">true</xsl:with-param>
2119
2354
  </xsl:apply-templates>
2120
2355
 
2121
2356
 
2122
2357
 
2123
-
2124
2358
  </fo:table-cell>
2125
2359
  </fo:table-row>
2126
2360
  </xsl:template><xsl:template match="*[local-name()='thead']" mode="process_tbody">
@@ -2136,64 +2370,6 @@
2136
2370
  <xsl:apply-templates select="../*[local-name()='tfoot']" mode="process"/>
2137
2371
  </fo:table-footer>
2138
2372
  </xsl:if>
2139
- </xsl:template><xsl:template name="insertTableFooter2">
2140
- <xsl:param name="cols-count"/>
2141
- <xsl:variable name="isNoteOrFnExist" select="../*[local-name()='note'] or ..//*[local-name()='fn'][local-name(..) != 'name']"/>
2142
- <xsl:if test="../*[local-name()='tfoot'] or $isNoteOrFnExist = 'true'">
2143
-
2144
- <fo:table-footer>
2145
-
2146
- <xsl:apply-templates select="../*[local-name()='tfoot']" mode="process"/>
2147
-
2148
- <!-- if there are note(s) or fn(s) then create footer row -->
2149
- <xsl:if test="$isNoteOrFnExist = 'true'">
2150
-
2151
-
2152
-
2153
- <fo:table-row>
2154
- <fo:table-cell border="solid black 1pt" padding-left="1mm" padding-right="1mm" padding-top="1mm" number-columns-spanned="{$cols-count}">
2155
-
2156
-
2157
-
2158
- <!-- fn will be processed inside 'note' processing -->
2159
-
2160
-
2161
-
2162
-
2163
-
2164
-
2165
- <!-- except gb -->
2166
-
2167
- <xsl:apply-templates select="../*[local-name()='note']" mode="process"/>
2168
-
2169
-
2170
- <!-- show Note under table in preface (ex. abstract) sections -->
2171
- <!-- empty, because notes show at page side in main sections -->
2172
- <!-- <xsl:if test="$namespace = 'bipm'">
2173
- <xsl:choose>
2174
- <xsl:when test="ancestor::*[local-name()='preface']">
2175
- <xsl:apply-templates select="../*[local-name()='note']" mode="process"/>
2176
- </xsl:when>
2177
- <xsl:otherwise>
2178
- <fo:block/>
2179
- </xsl:otherwise>
2180
- </xsl:choose>
2181
- </xsl:if> -->
2182
-
2183
-
2184
- <!-- horizontal row separator -->
2185
-
2186
-
2187
- <!-- fn processing -->
2188
- <xsl:call-template name="fn_display"/>
2189
-
2190
- </fo:table-cell>
2191
- </fo:table-row>
2192
-
2193
- </xsl:if>
2194
- </fo:table-footer>
2195
-
2196
- </xsl:if>
2197
2373
  </xsl:template><xsl:template name="insertTableFooterInSeparateTable">
2198
2374
  <xsl:param name="table_attributes"/>
2199
2375
  <xsl:param name="colwidths"/>
@@ -2219,17 +2395,18 @@
2219
2395
  </xsl:variable>
2220
2396
 
2221
2397
  <fo:table keep-with-previous="always">
2222
- <xsl:for-each select="xalan:nodeset($table_attributes)/attribute">
2398
+ <xsl:for-each select="xalan:nodeset($table_attributes)/table_attributes/@*">
2399
+ <xsl:variable name="name" select="local-name()"/>
2223
2400
  <xsl:choose>
2224
- <xsl:when test="@name = 'border-top'">
2225
- <xsl:attribute name="{@name}">0pt solid black</xsl:attribute>
2401
+ <xsl:when test="$name = 'border-top'">
2402
+ <xsl:attribute name="{$name}">0pt solid black</xsl:attribute>
2226
2403
  </xsl:when>
2227
- <xsl:when test="@name = 'border'">
2228
- <xsl:attribute name="{@name}"><xsl:value-of select="."/></xsl:attribute>
2404
+ <xsl:when test="$name = 'border'">
2405
+ <xsl:attribute name="{$name}"><xsl:value-of select="."/></xsl:attribute>
2229
2406
  <xsl:attribute name="border-top">0pt solid black</xsl:attribute>
2230
2407
  </xsl:when>
2231
2408
  <xsl:otherwise>
2232
- <xsl:attribute name="{@name}"><xsl:value-of select="."/></xsl:attribute>
2409
+ <xsl:attribute name="{$name}"><xsl:value-of select="."/></xsl:attribute>
2233
2410
  </xsl:otherwise>
2234
2411
  </xsl:choose>
2235
2412
  </xsl:for-each>
@@ -2258,9 +2435,10 @@
2258
2435
 
2259
2436
  <fo:table-body>
2260
2437
  <fo:table-row>
2261
- <fo:table-cell border="solid black 1pt" padding-left="1mm" padding-right="1mm" padding-top="1mm" number-columns-spanned="{$cols-count}">
2438
+ <fo:table-cell xsl:use-attribute-sets="table-footer-cell-style" number-columns-spanned="{$cols-count}">
2262
2439
 
2263
2440
 
2441
+
2264
2442
 
2265
2443
 
2266
2444
  <!-- fn will be processed inside 'note' processing -->
@@ -2270,37 +2448,20 @@
2270
2448
 
2271
2449
 
2272
2450
 
2273
-
2274
-
2275
-
2276
2451
  <!-- for BSI (not PAS) display Notes before footnotes -->
2277
2452
 
2278
2453
 
2279
- <!-- except gb -->
2280
-
2281
- <xsl:apply-templates select="../*[local-name()='note']" mode="process"/>
2454
+ <!-- except gb and bsi -->
2282
2455
 
2283
-
2284
- <!-- <xsl:if test="$namespace = 'bipm'">
2285
- <xsl:choose>
2286
- <xsl:when test="ancestor::*[local-name()='preface']">
2287
- show Note under table in preface (ex. abstract) sections
2288
- <xsl:apply-templates select="../*[local-name()='note']" mode="process"/>
2289
- </xsl:when>
2290
- <xsl:otherwise>
2291
- empty, because notes show at page side in main sections
2292
- <fo:block/>
2293
- </xsl:otherwise>
2294
- </xsl:choose>
2295
- </xsl:if> -->
2456
+ <xsl:apply-templates select="../*[local-name()='note']" mode="process"/>
2457
+
2296
2458
 
2297
2459
 
2298
2460
  <!-- horizontal row separator -->
2299
2461
 
2300
2462
 
2301
2463
  <!-- fn processing -->
2302
- <xsl:call-template name="fn_display"/>
2303
-
2464
+ <xsl:call-template name="table_fn_display"/>
2304
2465
 
2305
2466
  <!-- for PAS display Notes after footnotes -->
2306
2467
 
@@ -2342,84 +2503,57 @@
2342
2503
 
2343
2504
 
2344
2505
  <xsl:apply-templates/>
2345
- <!-- <xsl:apply-templates select="../*[local-name()='tfoot']" mode="process"/> -->
2346
-
2506
+
2347
2507
  </fo:table-body>
2348
2508
 
2349
- </xsl:template><xsl:template match="*[local-name()='table']/*[local-name()='name']/text()[1]" priority="2" mode="presentation_name">
2350
- <xsl:choose>
2351
- <xsl:when test="substring-after(., '—') != ''">
2352
- <xsl:text>—</xsl:text><xsl:value-of select="substring-after(., '—')"/>
2353
- </xsl:when>
2354
- <xsl:otherwise>
2355
- <xsl:value-of select="."/>
2356
- </xsl:otherwise>
2357
- </xsl:choose>
2358
- </xsl:template><xsl:template match="*[local-name()='table']/*[local-name()='name']" mode="presentation_name">
2359
- <xsl:apply-templates mode="presentation_name"/>
2360
- </xsl:template><xsl:template match="*[local-name()='table']/*[local-name()='name']/node()" mode="presentation_name">
2361
- <xsl:apply-templates select="."/>
2362
- </xsl:template><xsl:template match="*[local-name()='tr']">
2363
- <xsl:variable name="parent-name" select="local-name(..)"/>
2364
- <!-- <xsl:variable name="namespace" select="substring-before(name(/*), '-')"/> -->
2365
- <fo:table-row min-height="4mm">
2366
- <xsl:if test="$parent-name = 'thead'">
2367
- <xsl:attribute name="font-weight">bold</xsl:attribute>
2368
-
2369
-
2370
-
2371
-
2372
-
2373
-
2374
-
2375
-
2376
- </xsl:if>
2377
- <xsl:if test="$parent-name = 'tfoot'">
2378
-
2379
-
2380
-
2381
- </xsl:if>
2382
-
2383
-
2384
-
2385
-
2386
-
2387
-
2388
-
2389
-
2390
-
2391
-
2392
- <!-- <xsl:if test="$namespace = 'bipm'">
2393
- <xsl:attribute name="height">8mm</xsl:attribute>
2394
- </xsl:if> -->
2395
-
2396
- <xsl:apply-templates/>
2397
- </fo:table-row>
2398
- </xsl:template><xsl:template match="*[local-name()='th']">
2399
- <fo:table-cell text-align="{@align}" font-weight="bold" border="solid black 1pt" padding-left="1mm" display-align="center">
2400
- <xsl:attribute name="text-align">
2401
- <xsl:choose>
2402
- <xsl:when test="@align">
2403
- <xsl:call-template name="setAlignment"/>
2404
- <!-- <xsl:value-of select="@align"/> -->
2405
- </xsl:when>
2406
- <xsl:otherwise>center</xsl:otherwise>
2407
- </xsl:choose>
2408
- </xsl:attribute>
2509
+ </xsl:template><xsl:template match="*[local-name()='thead']/*[local-name()='tr']" priority="2">
2510
+ <fo:table-row xsl:use-attribute-sets="table-header-row-style">
2511
+
2512
+
2513
+
2409
2514
 
2515
+
2410
2516
 
2411
2517
 
2518
+ <xsl:call-template name="setTableRowAttributes"/>
2412
2519
 
2520
+ <xsl:apply-templates/>
2521
+ </fo:table-row>
2522
+ </xsl:template><xsl:template match="*[local-name()='tfoot']/*[local-name()='tr']" priority="2">
2523
+ <fo:table-row xsl:use-attribute-sets="table-footer-row-style">
2413
2524
 
2525
+ <xsl:call-template name="setTableRowAttributes"/>
2526
+ <xsl:apply-templates/>
2527
+ </fo:table-row>
2528
+ </xsl:template><xsl:template match="*[local-name()='tr']">
2529
+ <fo:table-row xsl:use-attribute-sets="table-body-row-style">
2530
+
2531
+
2532
+
2533
+
2534
+
2535
+ <xsl:call-template name="setTableRowAttributes"/>
2536
+ <xsl:apply-templates/>
2537
+ </fo:table-row>
2538
+ </xsl:template><xsl:template name="setTableRowAttributes">
2539
+
2540
+
2541
+
2542
+
2543
+
2544
+
2545
+
2546
+
2547
+ </xsl:template><xsl:template match="*[local-name()='th']">
2548
+ <fo:table-cell xsl:use-attribute-sets="table-header-cell-style"> <!-- text-align="{@align}" -->
2549
+ <xsl:call-template name="setTextAlignment">
2550
+ <xsl:with-param name="default">center</xsl:with-param>
2551
+ </xsl:call-template>
2414
2552
 
2415
2553
 
2416
- <xsl:attribute name="padding">1mm</xsl:attribute>
2417
- <xsl:attribute name="background-color">rgb(0, 51, 102)</xsl:attribute>
2418
- <xsl:attribute name="color">white</xsl:attribute>
2419
- <xsl:attribute name="border">solid 0.5pt rgb(153, 153, 153)</xsl:attribute>
2420
- <xsl:attribute name="height">5mm</xsl:attribute>
2421
2554
 
2422
2555
 
2556
+
2423
2557
 
2424
2558
 
2425
2559
 
@@ -2428,21 +2562,25 @@
2428
2562
  <xsl:if test="$lang = 'ar'">
2429
2563
  <xsl:attribute name="padding-right">1mm</xsl:attribute>
2430
2564
  </xsl:if>
2431
- <xsl:if test="@colspan">
2432
- <xsl:attribute name="number-columns-spanned">
2433
- <xsl:value-of select="@colspan"/>
2434
- </xsl:attribute>
2435
- </xsl:if>
2436
- <xsl:if test="@rowspan">
2437
- <xsl:attribute name="number-rows-spanned">
2438
- <xsl:value-of select="@rowspan"/>
2439
- </xsl:attribute>
2440
- </xsl:if>
2441
- <xsl:call-template name="display-align"/>
2565
+
2566
+ <xsl:call-template name="setTableCellAttributes"/>
2567
+
2442
2568
  <fo:block>
2443
2569
  <xsl:apply-templates/>
2444
2570
  </fo:block>
2445
2571
  </fo:table-cell>
2572
+ </xsl:template><xsl:template name="setTableCellAttributes">
2573
+ <xsl:if test="@colspan">
2574
+ <xsl:attribute name="number-columns-spanned">
2575
+ <xsl:value-of select="@colspan"/>
2576
+ </xsl:attribute>
2577
+ </xsl:if>
2578
+ <xsl:if test="@rowspan">
2579
+ <xsl:attribute name="number-rows-spanned">
2580
+ <xsl:value-of select="@rowspan"/>
2581
+ </xsl:attribute>
2582
+ </xsl:if>
2583
+ <xsl:call-template name="display-align"/>
2446
2584
  </xsl:template><xsl:template name="display-align">
2447
2585
  <xsl:if test="@valign">
2448
2586
  <xsl:attribute name="display-align">
@@ -2455,63 +2593,56 @@
2455
2593
  </xsl:attribute>
2456
2594
  </xsl:if>
2457
2595
  </xsl:template><xsl:template match="*[local-name()='td']">
2458
- <fo:table-cell text-align="{@align}" display-align="center" border="solid black 1pt" padding-left="1mm">
2459
- <xsl:attribute name="text-align">
2460
- <xsl:choose>
2461
- <xsl:when test="@align">
2462
- <xsl:call-template name="setAlignment"/>
2463
- <!-- <xsl:value-of select="@align"/> -->
2464
- </xsl:when>
2465
- <xsl:otherwise>left</xsl:otherwise>
2466
- </xsl:choose>
2467
- </xsl:attribute>
2596
+ <fo:table-cell xsl:use-attribute-sets="table-cell-style"> <!-- text-align="{@align}" -->
2597
+ <xsl:call-template name="setTextAlignment">
2598
+ <xsl:with-param name="default">left</xsl:with-param>
2599
+ </xsl:call-template>
2600
+
2468
2601
  <xsl:if test="$lang = 'ar'">
2469
2602
  <xsl:attribute name="padding-right">1mm</xsl:attribute>
2470
2603
  </xsl:if>
2471
2604
 
2472
2605
 
2473
2606
 
2607
+ <!-- bsi -->
2474
2608
 
2475
2609
 
2476
2610
 
2477
2611
 
2478
2612
 
2479
2613
 
2480
- <xsl:attribute name="padding-top">1mm</xsl:attribute>
2481
- <xsl:attribute name="border">solid 0.5pt rgb(153, 153, 153)</xsl:attribute>
2482
- <xsl:attribute name="height">5mm</xsl:attribute>
2483
2614
 
2484
2615
 
2616
+
2485
2617
 
2486
2618
 
2487
2619
 
2488
2620
 
2489
2621
 
2490
2622
 
2491
- <xsl:if test=".//*[local-name() = 'table']">
2623
+ <xsl:if test=".//*[local-name() = 'table']"> <!-- if there is nested table -->
2492
2624
  <xsl:attribute name="padding-right">1mm</xsl:attribute>
2493
2625
  </xsl:if>
2494
- <xsl:if test="@colspan">
2495
- <xsl:attribute name="number-columns-spanned">
2496
- <xsl:value-of select="@colspan"/>
2497
- </xsl:attribute>
2498
- </xsl:if>
2499
- <xsl:if test="@rowspan">
2500
- <xsl:attribute name="number-rows-spanned">
2501
- <xsl:value-of select="@rowspan"/>
2502
- </xsl:attribute>
2503
- </xsl:if>
2504
- <xsl:call-template name="display-align"/>
2626
+
2627
+ <xsl:call-template name="setTableCellAttributes"/>
2628
+
2505
2629
  <fo:block>
2506
-
2630
+
2631
+
2632
+
2507
2633
  <xsl:apply-templates/>
2508
2634
  </fo:block>
2509
2635
  </fo:table-cell>
2510
2636
  </xsl:template><xsl:template match="*[local-name()='table']/*[local-name()='note']" priority="2"/><xsl:template match="*[local-name()='table']/*[local-name()='note']" mode="process">
2637
+
2638
+ <fo:block xsl:use-attribute-sets="table-note-style">
2639
+
2640
+
2641
+
2642
+
2511
2643
 
2512
-
2513
- <fo:block font-size="10pt" margin-bottom="12pt">
2514
-
2644
+ <!-- Table's note name (NOTE, for example) -->
2645
+ <fo:inline xsl:use-attribute-sets="table-note-name-style">
2515
2646
 
2516
2647
 
2517
2648
 
@@ -2519,22 +2650,14 @@
2519
2650
 
2520
2651
 
2521
2652
 
2522
- <!-- Table's note name (NOTE, for example) -->
2523
-
2524
- <fo:inline padding-right="2mm" xsl:use-attribute-sets="table-note-name-style">
2525
-
2653
+ <xsl:apply-templates select="*[local-name() = 'name']"/>
2526
2654
 
2527
-
2528
-
2529
-
2530
- <xsl:apply-templates select="*[local-name() = 'name']" mode="presentation"/>
2531
-
2532
- </fo:inline>
2533
-
2534
-
2535
-
2536
- <xsl:apply-templates mode="process"/>
2537
- </fo:block>
2655
+ </fo:inline>
2656
+
2657
+
2658
+
2659
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]" mode="process"/>
2660
+ </fo:block>
2538
2661
 
2539
2662
  </xsl:template><xsl:template match="*[local-name()='table']/*[local-name()='note']/*[local-name()='name']" mode="process"/><xsl:template match="*[local-name()='table']/*[local-name()='note']/*[local-name()='p']" mode="process">
2540
2663
  <xsl:apply-templates/>
@@ -2614,8 +2737,7 @@
2614
2737
  <xsl:copy-of select="$footnote_inline"/>
2615
2738
  <fo:footnote-body>
2616
2739
 
2617
- <fo:block-container text-indent="0" start-indent="0">
2618
-
2740
+ <fo:block-container xsl:use-attribute-sets="fn-container-body-style">
2619
2741
 
2620
2742
  <fo:block xsl:use-attribute-sets="fn-body-style">
2621
2743
 
@@ -2634,7 +2756,7 @@
2634
2756
  <xsl:copy-of select="$footnote_inline"/>
2635
2757
  </xsl:otherwise>
2636
2758
  </xsl:choose>
2637
- </xsl:template><xsl:template name="fn_display">
2759
+ </xsl:template><xsl:template name="table_fn_display">
2638
2760
  <xsl:variable name="references">
2639
2761
 
2640
2762
  <xsl:for-each select="..//*[local-name()='fn'][local-name(..) != 'name']">
@@ -2645,33 +2767,26 @@
2645
2767
  <xsl:for-each select="xalan:nodeset($references)//fn">
2646
2768
  <xsl:variable name="reference" select="@reference"/>
2647
2769
  <xsl:if test="not(preceding-sibling::*[@reference = $reference])"> <!-- only unique reference puts in note-->
2648
- <fo:block margin-bottom="12pt">
2770
+ <fo:block xsl:use-attribute-sets="table-fn-style">
2649
2771
 
2650
2772
 
2651
2773
 
2652
-
2653
-
2654
-
2655
-
2656
- <fo:inline font-size="80%" padding-right="5mm" id="{@id}">
2774
+ <fo:inline id="{@id}" xsl:use-attribute-sets="table-fn-number-style">
2657
2775
 
2658
- <xsl:attribute name="vertical-align">super</xsl:attribute>
2659
2776
 
2660
2777
 
2661
2778
 
2662
2779
 
2780
+ <xsl:value-of select="@reference"/>
2663
2781
 
2664
2782
 
2665
2783
 
2666
2784
 
2667
- <xsl:value-of select="@reference"/>
2668
2785
 
2669
2786
 
2670
2787
 
2671
2788
  </fo:inline>
2672
- <fo:inline>
2673
-
2674
- <!-- <xsl:apply-templates /> -->
2789
+ <fo:inline xsl:use-attribute-sets="table-fn-body-style">
2675
2790
  <xsl:copy-of select="./node()"/>
2676
2791
  </fo:inline>
2677
2792
  </fo:block>
@@ -2689,15 +2804,7 @@
2689
2804
 
2690
2805
  <xsl:apply-templates/>
2691
2806
  </fn>
2692
- </xsl:template><xsl:template name="fn_name_display">
2693
- <!-- <xsl:variable name="references">
2694
- <xsl:for-each select="*[local-name()='name']//*[local-name()='fn']">
2695
- <fn reference="{@reference}" id="{@reference}_{ancestor::*[@id][1]/@id}">
2696
- <xsl:apply-templates />
2697
- </fn>
2698
- </xsl:for-each>
2699
- </xsl:variable>
2700
- $references=<xsl:copy-of select="$references"/> -->
2807
+ </xsl:template><xsl:template name="table_name_fn_display">
2701
2808
  <xsl:for-each select="*[local-name()='name']//*[local-name()='fn']">
2702
2809
  <xsl:variable name="reference" select="@reference"/>
2703
2810
  <fo:block id="{@reference}_{ancestor::*[@id][1]/@id}"><xsl:value-of select="@reference"/></fo:block>
@@ -2706,9 +2813,7 @@
2706
2813
  </fo:block>
2707
2814
  </xsl:for-each>
2708
2815
  </xsl:template><xsl:template name="fn_display_figure">
2709
- <xsl:variable name="key_iso">
2710
- <!-- and (not(@class) or @class !='pseudocode') -->
2711
- </xsl:variable>
2816
+
2712
2817
  <xsl:variable name="references">
2713
2818
  <xsl:for-each select=".//*[local-name()='fn'][not(parent::*[local-name()='name'])]">
2714
2819
  <fn reference="{@reference}" id="{@reference}_{ancestor::*[@id][1]/@id}">
@@ -2716,50 +2821,52 @@
2716
2821
  </fn>
2717
2822
  </xsl:for-each>
2718
2823
  </xsl:variable>
2824
+
2825
+ <xsl:if test="xalan:nodeset($references)//fn">
2719
2826
 
2720
- <!-- current hierarchy is 'figure' element -->
2721
- <xsl:variable name="following_dl_colwidths">
2722
- <xsl:if test="*[local-name() = 'dl']"><!-- if there is a 'dl', then set the same columns width as for 'dl' -->
2723
- <xsl:variable name="html-table">
2724
- <xsl:variable name="doc_ns">
2725
-
2726
- </xsl:variable>
2727
- <xsl:variable name="ns">
2728
- <xsl:choose>
2729
- <xsl:when test="normalize-space($doc_ns) != ''">
2730
- <xsl:value-of select="normalize-space($doc_ns)"/>
2731
- </xsl:when>
2732
- <xsl:otherwise>
2733
- <xsl:value-of select="substring-before(name(/*), '-')"/>
2734
- </xsl:otherwise>
2735
- </xsl:choose>
2736
- </xsl:variable>
2737
- <!-- <xsl:variable name="ns" select="substring-before(name(/*), '-')"/> -->
2738
- <!-- <xsl:element name="{$ns}:table"> -->
2827
+ <xsl:variable name="key_iso">
2828
+
2829
+ </xsl:variable>
2830
+
2831
+ <!-- current hierarchy is 'figure' element -->
2832
+ <xsl:variable name="following_dl_colwidths">
2833
+ <xsl:if test="*[local-name() = 'dl']"><!-- if there is a 'dl', then set the same columns width as for 'dl' -->
2834
+ <xsl:variable name="html-table">
2835
+ <xsl:variable name="doc_ns">
2836
+
2837
+ </xsl:variable>
2838
+ <xsl:variable name="ns">
2839
+ <xsl:choose>
2840
+ <xsl:when test="normalize-space($doc_ns) != ''">
2841
+ <xsl:value-of select="normalize-space($doc_ns)"/>
2842
+ </xsl:when>
2843
+ <xsl:otherwise>
2844
+ <xsl:value-of select="substring-before(name(/*), '-')"/>
2845
+ </xsl:otherwise>
2846
+ </xsl:choose>
2847
+ </xsl:variable>
2848
+
2739
2849
  <xsl:for-each select="*[local-name() = 'dl'][1]">
2740
2850
  <tbody>
2741
2851
  <xsl:apply-templates mode="dl"/>
2742
2852
  </tbody>
2743
2853
  </xsl:for-each>
2744
- <!-- </xsl:element> -->
2745
- </xsl:variable>
2746
-
2747
- <xsl:call-template name="calculate-column-widths">
2748
- <xsl:with-param name="cols-count" select="2"/>
2749
- <xsl:with-param name="table" select="$html-table"/>
2750
- </xsl:call-template>
2751
-
2752
- </xsl:if>
2753
- </xsl:variable>
2754
-
2755
-
2756
- <xsl:variable name="maxlength_dt">
2757
- <xsl:for-each select="*[local-name() = 'dl'][1]">
2758
- <xsl:call-template name="getMaxLength_dt"/>
2759
- </xsl:for-each>
2760
- </xsl:variable>
2761
-
2762
- <xsl:if test="xalan:nodeset($references)//fn">
2854
+ </xsl:variable>
2855
+
2856
+ <xsl:call-template name="calculate-column-widths">
2857
+ <xsl:with-param name="cols-count" select="2"/>
2858
+ <xsl:with-param name="table" select="$html-table"/>
2859
+ </xsl:call-template>
2860
+
2861
+ </xsl:if>
2862
+ </xsl:variable>
2863
+
2864
+ <xsl:variable name="maxlength_dt">
2865
+ <xsl:for-each select="*[local-name() = 'dl'][1]">
2866
+ <xsl:call-template name="getMaxLength_dt"/>
2867
+ </xsl:for-each>
2868
+ </xsl:variable>
2869
+
2763
2870
  <fo:block>
2764
2871
  <fo:table width="95%" table-layout="fixed">
2765
2872
  <xsl:if test="normalize-space($key_iso) = 'true'">
@@ -2786,20 +2893,18 @@
2786
2893
  <fo:table-row>
2787
2894
  <fo:table-cell>
2788
2895
  <fo:block>
2789
- <fo:inline font-size="80%" padding-right="5mm" vertical-align="super" id="{@id}">
2790
-
2896
+ <fo:inline id="{@id}" xsl:use-attribute-sets="figure-fn-number-style">
2791
2897
  <xsl:value-of select="@reference"/>
2792
2898
  </fo:inline>
2793
2899
  </fo:block>
2794
2900
  </fo:table-cell>
2795
2901
  <fo:table-cell>
2796
- <fo:block text-align="justify" margin-bottom="12pt">
2797
-
2902
+ <fo:block xsl:use-attribute-sets="figure-fn-body-style">
2798
2903
  <xsl:if test="normalize-space($key_iso) = 'true'">
2799
- <xsl:attribute name="margin-bottom">0</xsl:attribute>
2904
+
2905
+ <xsl:attribute name="margin-bottom">0</xsl:attribute>
2906
+
2800
2907
  </xsl:if>
2801
-
2802
- <!-- <xsl:apply-templates /> -->
2803
2908
  <xsl:copy-of select="./node()"/>
2804
2909
  </fo:block>
2805
2910
  </fo:table-cell>
@@ -2812,20 +2917,9 @@
2812
2917
  </xsl:if>
2813
2918
 
2814
2919
  </xsl:template><xsl:template match="*[local-name()='fn']">
2815
- <!-- <xsl:variable name="namespace" select="substring-before(name(/*), '-')"/> -->
2816
- <fo:inline font-size="80%" keep-with-previous.within-line="always">
2817
-
2818
-
2819
-
2820
-
2821
-
2822
-
2823
-
2824
- <xsl:attribute name="vertical-align">super</xsl:attribute>
2825
- <xsl:attribute name="color">blue</xsl:attribute>
2826
-
2920
+ <fo:inline xsl:use-attribute-sets="fn-reference-style">
2921
+
2827
2922
 
2828
- <xsl:attribute name="text-decoration">underline</xsl:attribute>
2829
2923
 
2830
2924
 
2831
2925
 
@@ -2853,10 +2947,10 @@
2853
2947
  <xsl:variable name="isDeleted" select="@deleted"/>
2854
2948
  <fo:block-container>
2855
2949
 
2856
- <xsl:if test="not(ancestor::*[local-name() = 'quote'])">
2857
- <xsl:attribute name="margin-left">0mm</xsl:attribute>
2858
- </xsl:if>
2859
-
2950
+ <xsl:if test="not(ancestor::*[local-name() = 'quote'])">
2951
+ <xsl:attribute name="margin-left">0mm</xsl:attribute>
2952
+ </xsl:if>
2953
+
2860
2954
 
2861
2955
  <xsl:if test="parent::*[local-name() = 'note']">
2862
2956
  <xsl:attribute name="margin-left">
@@ -2873,11 +2967,11 @@
2873
2967
  <xsl:with-param name="isDeleted" select="$isDeleted"/>
2874
2968
  </xsl:call-template>
2875
2969
 
2876
- <fo:block-container>
2877
-
2878
- <xsl:attribute name="margin-left">0mm</xsl:attribute>
2879
- <xsl:attribute name="margin-right">0mm</xsl:attribute>
2970
+ <fo:block-container margin-left="0mm">
2971
+
2880
2972
 
2973
+ <xsl:attribute name="margin-right">0mm</xsl:attribute>
2974
+
2881
2975
 
2882
2976
  <xsl:variable name="parent" select="local-name(..)"/>
2883
2977
 
@@ -2888,20 +2982,19 @@
2888
2982
  <xsl:choose>
2889
2983
  <xsl:when test="$parent = 'formula' and count(*[local-name()='dt']) = 1"> <!-- only one component -->
2890
2984
 
2891
-
2892
- <fo:block margin-bottom="12pt" text-align="left">
2893
-
2894
- <xsl:variable name="title-where">
2895
- <xsl:call-template name="getLocalizedString">
2896
- <xsl:with-param name="key">where</xsl:with-param>
2897
- </xsl:call-template>
2898
- </xsl:variable>
2899
- <xsl:value-of select="$title-where"/><xsl:text> </xsl:text>
2900
- <xsl:apply-templates select="*[local-name()='dt']/*"/>
2901
- <xsl:text/>
2902
- <xsl:apply-templates select="*[local-name()='dd']/*" mode="inline"/>
2903
- </fo:block>
2904
-
2985
+ <fo:block margin-bottom="12pt" text-align="left">
2986
+
2987
+ <xsl:variable name="title-where">
2988
+ <xsl:call-template name="getLocalizedString">
2989
+ <xsl:with-param name="key">where</xsl:with-param>
2990
+ </xsl:call-template>
2991
+ </xsl:variable>
2992
+ <xsl:value-of select="$title-where"/><xsl:text> </xsl:text>
2993
+ <xsl:apply-templates select="*[local-name()='dt']/*"/>
2994
+ <xsl:text/>
2995
+ <xsl:apply-templates select="*[local-name()='dd']/*" mode="inline"/>
2996
+ </fo:block>
2997
+
2905
2998
  </xsl:when>
2906
2999
  <xsl:when test="$parent = 'formula'"> <!-- a few components -->
2907
3000
  <fo:block margin-bottom="12pt" text-align="left">
@@ -2948,9 +3041,7 @@
2948
3041
  <fo:table width="95%" table-layout="fixed">
2949
3042
 
2950
3043
  <xsl:choose>
2951
- <xsl:when test="normalize-space($key_iso) = 'true' and $parent = 'formula'">
2952
- <!-- <xsl:attribute name="font-size">11pt</xsl:attribute> -->
2953
- </xsl:when>
3044
+ <xsl:when test="normalize-space($key_iso) = 'true' and $parent = 'formula'"/>
2954
3045
  <xsl:when test="normalize-space($key_iso) = 'true'">
2955
3046
  <xsl:attribute name="font-size">10pt</xsl:attribute>
2956
3047
 
@@ -2971,12 +3062,9 @@
2971
3062
  </xsl:otherwise>
2972
3063
  </xsl:choose>
2973
3064
  </xsl:variable>
2974
- <!-- <xsl:variable name="ns" select="substring-before(name(/*), '-')"/> -->
2975
- <!-- <xsl:element name="{$ns}:table"> -->
2976
- <tbody>
2977
- <xsl:apply-templates mode="dl"/>
2978
- </tbody>
2979
- <!-- </xsl:element> -->
3065
+ <tbody>
3066
+ <xsl:apply-templates mode="dl"/>
3067
+ </tbody>
2980
3068
  </xsl:variable>
2981
3069
  <!-- html-table<xsl:copy-of select="$html-table"/> -->
2982
3070
  <xsl:variable name="colwidths">
@@ -3056,8 +3144,6 @@
3056
3144
  </xsl:for-each>
3057
3145
  </xsl:otherwise>
3058
3146
  </xsl:choose>
3059
- <!-- <fo:table-column column-width="15%"/>
3060
- <fo:table-column column-width="85%"/> -->
3061
3147
  </xsl:otherwise>
3062
3148
  </xsl:choose>
3063
3149
  </xsl:template><xsl:template name="getMaxLength_dt">
@@ -3072,12 +3158,6 @@
3072
3158
  </xsl:for-each>
3073
3159
  </xsl:variable>
3074
3160
  <xsl:variable name="maxLength">
3075
- <!-- <xsl:for-each select="*[local-name()='dt']">
3076
- <xsl:sort select="string-length(normalize-space(.))" data-type="number" order="descending"/>
3077
- <xsl:if test="position() = 1">
3078
- <xsl:value-of select="string-length(normalize-space(.))"/>
3079
- </xsl:if>
3080
- </xsl:for-each> -->
3081
3161
  <xsl:for-each select="xalan:nodeset($lengths)/length">
3082
3162
  <xsl:sort select="." data-type="number" order="descending"/>
3083
3163
  <xsl:if test="position() = 1">
@@ -3103,12 +3183,12 @@
3103
3183
  <xsl:if test="normalize-space($key_iso) = 'true'">
3104
3184
  <xsl:attribute name="margin-top">0</xsl:attribute>
3105
3185
  </xsl:if>
3106
- <xsl:apply-templates select="*[local-name() = 'name']" mode="presentation"/>
3186
+ <xsl:apply-templates select="*[local-name() = 'name']"/>
3107
3187
  </fo:block>
3108
3188
  </fo:table-cell>
3109
3189
  <fo:table-cell>
3110
3190
  <fo:block>
3111
- <xsl:apply-templates/>
3191
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
3112
3192
  </fo:block>
3113
3193
  </fo:table-cell>
3114
3194
  </fo:table-row>
@@ -3119,79 +3199,37 @@
3119
3199
  </td>
3120
3200
  <td>
3121
3201
 
3122
-
3123
- <xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]" mode="process"/>
3124
-
3202
+ <xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]" mode="process"/>
3203
+
3125
3204
  </td>
3126
3205
  </tr>
3127
3206
 
3128
3207
  </xsl:template><xsl:template match="*[local-name()='dt']">
3129
3208
  <xsl:param name="key_iso"/>
3130
3209
 
3131
- <fo:table-row>
3132
-
3133
-
3210
+ <fo:table-row xsl:use-attribute-sets="dt-row-style">
3134
3211
  <fo:table-cell>
3135
3212
 
3136
- <fo:block margin-top="6pt">
3213
+ <fo:block xsl:use-attribute-sets="dt-style">
3137
3214
  <xsl:copy-of select="@id"/>
3138
3215
 
3139
-
3140
3216
  <xsl:if test="normalize-space($key_iso) = 'true'">
3141
3217
  <xsl:attribute name="margin-top">0</xsl:attribute>
3142
-
3143
3218
  </xsl:if>
3144
3219
 
3145
3220
 
3146
3221
 
3147
-
3148
-
3149
- <xsl:attribute name="margin-top">0pt</xsl:attribute>
3150
- <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
3151
-
3152
-
3153
-
3154
3222
  <xsl:apply-templates/>
3155
- <!-- <xsl:if test="$namespace = 'gb'">
3156
- <xsl:if test="ancestor::*[local-name()='formula']">
3157
- <xsl:text>—</xsl:text>
3158
- </xsl:if>
3159
- </xsl:if> -->
3160
3223
  </fo:block>
3161
3224
  </fo:table-cell>
3162
3225
  <fo:table-cell>
3163
3226
  <fo:block>
3164
3227
 
3165
- <!-- <xsl:if test="$namespace = 'nist-cswp' or $namespace = 'nist-sp'">
3166
- <xsl:if test="local-name(*[1]) != 'stem'">
3167
- <xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]" mode="process"/>
3168
- </xsl:if>
3169
- </xsl:if> -->
3170
-
3171
- <xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]" mode="process"/>
3172
-
3228
+
3229
+ <xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]" mode="process"/>
3173
3230
  </fo:block>
3174
3231
  </fo:table-cell>
3175
3232
  </fo:table-row>
3176
- <!-- <xsl:if test="$namespace = 'nist-cswp' or $namespace = 'nist-sp'">
3177
- <xsl:if test="local-name(*[1]) = 'stem'">
3178
- <fo:table-row>
3179
- <fo:table-cell>
3180
- <fo:block margin-top="6pt">
3181
- <xsl:if test="normalize-space($key_iso) = 'true'">
3182
- <xsl:attribute name="margin-top">0</xsl:attribute>
3183
- </xsl:if>
3184
- <xsl:text>&#xA0;</xsl:text>
3185
- </fo:block>
3186
- </fo:table-cell>
3187
- <fo:table-cell>
3188
- <fo:block>
3189
- <xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]" mode="process"/>
3190
- </fo:block>
3191
- </fo:table-cell>
3192
- </fo:table-row>
3193
- </xsl:if>
3194
- </xsl:if> -->
3195
3233
  </xsl:template><xsl:template match="*[local-name()='dd']" mode="dl"/><xsl:template match="*[local-name()='dd']" mode="dl_process">
3196
3234
  <xsl:apply-templates/>
3197
3235
  </xsl:template><xsl:template match="*[local-name()='dd']"/><xsl:template match="*[local-name()='dd']" mode="process">
@@ -3220,6 +3258,7 @@
3220
3258
  </fo:inline>
3221
3259
  </xsl:template><xsl:template match="*[local-name()='tt']">
3222
3260
  <fo:inline xsl:use-attribute-sets="tt-style">
3261
+
3223
3262
  <xsl:variable name="_font-size">
3224
3263
 
3225
3264
 
@@ -3256,15 +3295,21 @@
3256
3295
  <xsl:apply-templates/>
3257
3296
  </fo:inline>
3258
3297
  </xsl:template><xsl:template match="*[local-name()='add']">
3298
+ <xsl:param name="skip">true</xsl:param>
3259
3299
  <xsl:choose>
3260
3300
  <xsl:when test="starts-with(., $ace_tag)"> <!-- examples: ace-tag_A1_start, ace-tag_A2_end, C1_start, AC_start -->
3261
- <fo:inline>
3262
- <xsl:call-template name="insertTag">
3263
- <xsl:with-param name="type" select="substring-after(substring-after(., $ace_tag), '_')"/> <!-- start or end -->
3264
- <xsl:with-param name="kind" select="substring(substring-before(substring-after(., $ace_tag), '_'), 1, 1)"/> <!-- A or C -->
3265
- <xsl:with-param name="value" select="substring(substring-before(substring-after(., $ace_tag), '_'), 2)"/> <!-- 1, 2, C -->
3266
- </xsl:call-template>
3267
- </fo:inline>
3301
+ <xsl:choose>
3302
+ <xsl:when test="$skip = 'true' and ((local-name(../..) = 'note' and not(preceding-sibling::node())) or (local-name(..) = 'title' and preceding-sibling::node()[1][local-name() = 'tab'])) and ../node()[last()][local-name() = 'add'][starts-with(text(), $ace_tag)]"><!-- start tag displayed in template name="note" and title --></xsl:when>
3303
+ <xsl:otherwise>
3304
+ <fo:inline>
3305
+ <xsl:call-template name="insertTag">
3306
+ <xsl:with-param name="type" select="substring-after(substring-after(., $ace_tag), '_')"/> <!-- start or end -->
3307
+ <xsl:with-param name="kind" select="substring(substring-before(substring-after(., $ace_tag), '_'), 1, 1)"/> <!-- A or C -->
3308
+ <xsl:with-param name="value" select="substring(substring-before(substring-after(., $ace_tag), '_'), 2)"/> <!-- 1, 2, C -->
3309
+ </xsl:call-template>
3310
+ </fo:inline>
3311
+ </xsl:otherwise>
3312
+ </xsl:choose>
3268
3313
  </xsl:when>
3269
3314
  <xsl:when test="@amendment">
3270
3315
  <fo:inline>
@@ -3307,8 +3352,6 @@
3307
3352
  <xsl:variable name="add_width" select="string-length($value) * 20"/>
3308
3353
  <xsl:variable name="maxwidth" select="60 + $add_width"/>
3309
3354
  <fo:instream-foreign-object fox:alt-text="OpeningTag" baseline-shift="-20%"><!-- alignment-baseline="middle" -->
3310
- <!-- <xsl:attribute name="width">7mm</xsl:attribute>
3311
- <xsl:attribute name="content-height">100%</xsl:attribute> -->
3312
3355
  <xsl:attribute name="height">5mm</xsl:attribute>
3313
3356
  <xsl:attribute name="content-width">100%</xsl:attribute>
3314
3357
  <xsl:attribute name="content-width">scale-down-to-fit</xsl:attribute>
@@ -3526,14 +3569,6 @@
3526
3569
 
3527
3570
  <xsl:copy-of select="xalan:nodeset($simple-table-rowspan)"/>
3528
3571
 
3529
- <!-- <xsl:choose>
3530
- <xsl:when test="current()//*[local-name()='th'][@colspan] or current()//*[local-name()='td'][@colspan] ">
3531
-
3532
- </xsl:when>
3533
- <xsl:otherwise>
3534
- <xsl:copy-of select="current()"/>
3535
- </xsl:otherwise>
3536
- </xsl:choose> -->
3537
3572
  </xsl:variable>
3538
3573
  <xsl:copy-of select="$simple-table"/>
3539
3574
  </xsl:template><xsl:template match="*[local-name()='thead'] | *[local-name()='tbody']" mode="simple-table-colspan">
@@ -3652,8 +3687,6 @@
3652
3687
  <xsl:choose>
3653
3688
  <xsl:when test="contains($str2, ' ')">
3654
3689
  <xsl:variable name="substr" select="substring-before($str2, ' ')"/>
3655
- <!-- <xsl:value-of select="translate(substring($substr, 1, 1), $lower, $upper)"/>
3656
- <xsl:value-of select="substring($substr, 2)"/> -->
3657
3690
  <xsl:call-template name="capitalize">
3658
3691
  <xsl:with-param name="str" select="$substr"/>
3659
3692
  </xsl:call-template>
@@ -3663,8 +3696,6 @@
3663
3696
  </xsl:call-template>
3664
3697
  </xsl:when>
3665
3698
  <xsl:otherwise>
3666
- <!-- <xsl:value-of select="translate(substring($str2, 1, 1), $lower, $upper)"/>
3667
- <xsl:value-of select="substring($str2, 2)"/> -->
3668
3699
  <xsl:call-template name="capitalize">
3669
3700
  <xsl:with-param name="str" select="$str2"/>
3670
3701
  </xsl:call-template>
@@ -3692,6 +3723,7 @@
3692
3723
  <xsl:apply-templates select="." mode="mathml"/>
3693
3724
  </xsl:variable>
3694
3725
  <fo:instream-foreign-object fox:alt-text="Math">
3726
+
3695
3727
 
3696
3728
 
3697
3729
  <xsl:variable name="comment_text_following" select="following-sibling::node()[1][self::comment()]"/>
@@ -3723,7 +3755,7 @@
3723
3755
  </xsl:attribute>
3724
3756
 
3725
3757
 
3726
- <!-- <xsl:copy-of select="."/> -->
3758
+
3727
3759
  <xsl:copy-of select="xalan:nodeset($mathml)"/>
3728
3760
  </fo:instream-foreign-object>
3729
3761
  </fo:inline>
@@ -3782,6 +3814,10 @@
3782
3814
 
3783
3815
 
3784
3816
 
3817
+
3818
+
3819
+
3820
+
3785
3821
  <xsl:choose>
3786
3822
  <xsl:when test="$target_text = ''">
3787
3823
  <xsl:apply-templates/>
@@ -3839,7 +3875,6 @@
3839
3875
  </fo:inline>
3840
3876
  </xsl:template><xsl:template match="*[local-name() = 'xref']">
3841
3877
  <fo:basic-link internal-destination="{@target}" fox:alt-text="{@target}" xsl:use-attribute-sets="xref-style">
3842
-
3843
3878
  <xsl:apply-templates/>
3844
3879
  </fo:basic-link>
3845
3880
  </xsl:template><xsl:template match="*[local-name() = 'formula']" name="formula">
@@ -3867,13 +3902,17 @@
3867
3902
  <fo:inline>
3868
3903
  <xsl:apply-templates/>
3869
3904
  </fo:inline>
3870
- </xsl:template><xsl:template match="*[local-name() = 'formula']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'formula']/*[local-name() = 'name']" mode="presentation">
3905
+ </xsl:template><xsl:template match="*[local-name() = 'formula']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'formula']/*[local-name() = 'name']" mode="formula_number"> <!-- show by demand -->
3871
3906
  <xsl:if test="normalize-space() != ''">
3872
3907
  <xsl:text>(</xsl:text><xsl:apply-templates/><xsl:text>)</xsl:text>
3873
3908
  </xsl:if>
3874
3909
  </xsl:template><xsl:template match="*[local-name() = 'note']" name="note">
3875
3910
 
3876
3911
  <fo:block-container id="{@id}" xsl:use-attribute-sets="note-style">
3912
+
3913
+
3914
+
3915
+
3877
3916
 
3878
3917
 
3879
3918
  <xsl:if test="ancestor::ogc:ul or ancestor::ogc:ol and not(ancestor::ogc:note[1]/following-sibling::*)">
@@ -3882,38 +3921,49 @@
3882
3921
 
3883
3922
 
3884
3923
 
3924
+
3925
+
3885
3926
 
3886
3927
  <fo:block-container margin-left="0mm">
3928
+
3887
3929
 
3888
3930
 
3889
3931
 
3932
+
3890
3933
 
3891
-
3892
-
3893
-
3894
-
3895
- <fo:block>
3896
-
3897
-
3898
-
3899
-
3900
-
3934
+ <fo:block>
3935
+
3936
+
3901
3937
 
3902
- <fo:inline xsl:use-attribute-sets="note-name-style">
3903
3938
 
3904
- <xsl:apply-templates select="*[local-name() = 'name']" mode="presentation"/>
3905
- </fo:inline>
3906
- <xsl:apply-templates/>
3907
- </fo:block>
3908
-
3909
-
3939
+
3940
+
3941
+
3942
+ <fo:inline xsl:use-attribute-sets="note-name-style">
3943
+
3944
+
3945
+
3946
+ <!-- if note contains only one element and first and last childs are `add` ace-tag, then move start ace-tag before NOTE's name-->
3947
+ <xsl:if test="count(*[not(local-name() = 'name')]) = 1 and *[not(local-name() = 'name')]/node()[last()][local-name() = 'add'][starts-with(text(), $ace_tag)]">
3948
+ <xsl:apply-templates select="*[not(local-name() = 'name')]/node()[1][local-name() = 'add'][starts-with(text(), $ace_tag)]">
3949
+ <xsl:with-param name="skip">false</xsl:with-param>
3950
+ </xsl:apply-templates>
3951
+ </xsl:if>
3952
+
3953
+ <xsl:apply-templates select="*[local-name() = 'name']"/>
3954
+
3955
+ </fo:inline>
3956
+
3957
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
3958
+ </fo:block>
3959
+
3910
3960
  </fo:block-container>
3911
3961
  </fo:block-container>
3912
3962
 
3913
3963
  </xsl:template><xsl:template match="*[local-name() = 'note']/*[local-name() = 'p']">
3914
3964
  <xsl:variable name="num"><xsl:number/></xsl:variable>
3915
3965
  <xsl:choose>
3916
- <xsl:when test="$num = 1">
3966
+ <xsl:when test="$num = 1"> <!-- display first NOTE's paragraph in the same line with label NOTE -->
3917
3967
  <fo:inline xsl:use-attribute-sets="note-p-style">
3918
3968
  <xsl:apply-templates/>
3919
3969
  </fo:inline>
@@ -3928,12 +3978,16 @@
3928
3978
  <fo:block id="{@id}" xsl:use-attribute-sets="termnote-style">
3929
3979
 
3930
3980
  <fo:inline xsl:use-attribute-sets="termnote-name-style">
3981
+
3982
+
3983
+
3984
+ <xsl:apply-templates select="*[local-name() = 'name']"/>
3931
3985
 
3932
- <xsl:apply-templates select="*[local-name() = 'name']" mode="presentation"/>
3933
3986
  </fo:inline>
3934
- <xsl:apply-templates/>
3987
+
3988
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
3935
3989
  </fo:block>
3936
- </xsl:template><xsl:template match="*[local-name() = 'note']/*[local-name() = 'name'] | *[local-name() = 'termnote']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'note']/*[local-name() = 'name']" mode="presentation">
3990
+ </xsl:template><xsl:template match="*[local-name() = 'note']/*[local-name() = 'name']">
3937
3991
  <xsl:param name="sfx"/>
3938
3992
  <xsl:variable name="suffix">
3939
3993
  <xsl:choose>
@@ -3950,7 +4004,7 @@
3950
4004
  <xsl:apply-templates/>
3951
4005
  <xsl:value-of select="$suffix"/>
3952
4006
  </xsl:if>
3953
- </xsl:template><xsl:template match="*[local-name() = 'termnote']/*[local-name() = 'name']" mode="presentation">
4007
+ </xsl:template><xsl:template match="*[local-name() = 'termnote']/*[local-name() = 'name']">
3954
4008
  <xsl:param name="sfx"/>
3955
4009
  <xsl:variable name="suffix">
3956
4010
  <xsl:choose>
@@ -3977,25 +4031,23 @@
3977
4031
  <xsl:apply-templates/>
3978
4032
  </fo:block>
3979
4033
  </xsl:template><xsl:template match="*[local-name() = 'term']">
3980
- <!-- <xsl:message>'term' <xsl:number/> processing, name=<xsl:value-of select="iso:name"/>, preferred=<xsl:value-of select="iso:preferred"/>...</xsl:message> -->
3981
4034
  <fo:block id="{@id}" xsl:use-attribute-sets="term-style">
3982
4035
 
3983
4036
 
4037
+
4038
+
3984
4039
  <xsl:if test="parent::*[local-name() = 'term'] and not(preceding-sibling::*[local-name() = 'term'])">
3985
4040
 
3986
4041
  </xsl:if>
3987
- <xsl:apply-templates/>
4042
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
3988
4043
  </fo:block>
3989
- </xsl:template><xsl:template match="*[local-name() = 'term']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'term']/*[local-name() = 'name']" mode="presentation">
4044
+ </xsl:template><xsl:template match="*[local-name() = 'term']/*[local-name() = 'name']">
3990
4045
  <xsl:if test="normalize-space() != ''">
3991
4046
  <xsl:variable name="level">
3992
4047
  <xsl:call-template name="getLevelTermName"/>
3993
4048
  </xsl:variable>
3994
4049
  <fo:inline role="H{$level}">
3995
4050
  <xsl:apply-templates/>
3996
- <!-- <xsl:if test="$namespace = 'gb' or $namespace = 'ogc'">
3997
- <xsl:text>.</xsl:text>
3998
- </xsl:if> -->
3999
4051
  </fo:inline>
4000
4052
  </xsl:if>
4001
4053
  </xsl:template><xsl:template match="*[local-name() = 'figure']" name="figure">
@@ -4008,9 +4060,10 @@
4008
4060
  <xsl:with-param name="isDeleted" select="$isDeleted"/>
4009
4061
  </xsl:call-template>
4010
4062
 
4011
- <fo:block>
4012
-
4013
- <xsl:apply-templates/>
4063
+
4064
+
4065
+ <fo:block xsl:use-attribute-sets="figure-style">
4066
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
4014
4067
  </fo:block>
4015
4068
  <xsl:call-template name="fn_display_figure"/>
4016
4069
  <xsl:for-each select="*[local-name() = 'note']">
@@ -4018,14 +4071,15 @@
4018
4071
  </xsl:for-each>
4019
4072
 
4020
4073
 
4021
- <xsl:apply-templates select="*[local-name() = 'name']" mode="presentation"/>
4074
+ <xsl:apply-templates select="*[local-name() = 'name']"/> <!-- show figure's name AFTER image -->
4075
+
4022
4076
 
4023
4077
  </fo:block-container>
4024
4078
  </xsl:template><xsl:template match="*[local-name() = 'figure'][@class = 'pseudocode']">
4025
4079
  <fo:block id="{@id}">
4026
- <xsl:apply-templates/>
4080
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
4027
4081
  </fo:block>
4028
- <xsl:apply-templates select="*[local-name() = 'name']" mode="presentation"/>
4082
+ <xsl:apply-templates select="*[local-name() = 'name']"/>
4029
4083
  </xsl:template><xsl:template match="*[local-name() = 'figure'][@class = 'pseudocode']//*[local-name() = 'p']">
4030
4084
  <fo:block xsl:use-attribute-sets="figure-pseudocode-p-style">
4031
4085
  <xsl:apply-templates/>
@@ -4132,9 +4186,7 @@
4132
4186
  <xsl:variable name="bis" select="java:java.io.ByteArrayInputStream.new($fileContent)"/>
4133
4187
  <xsl:variable name="bufferedImage" select="java:javax.imageio.ImageIO.read($bis)"/>
4134
4188
  <xsl:variable name="width" select="java:getWidth($bufferedImage)"/>
4135
- <!-- width=<xsl:value-of select="$width"/> -->
4136
4189
  <xsl:variable name="height" select="java:getHeight($bufferedImage)"/>
4137
- <!-- height=<xsl:value-of select="$height"/> -->
4138
4190
  <svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" style="enable-background:new 0 0 595.28 841.89;" height="{$height}" width="{$width}" viewBox="0 0 {$width} {$height}" y="0px" x="0px" id="Layer_1" version="1.1">
4139
4191
  <image xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="{@src}" height="{$height}" width="{$width}" style="overflow:visible;"/>
4140
4192
  <xsl:call-template name="svg_cross">
@@ -4404,7 +4456,7 @@
4404
4456
  </fo:basic-link>
4405
4457
  </fo:block>
4406
4458
  </fo:block-container>
4407
- </xsl:template><xsl:template match="*[local-name() = 'emf']"/><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name'] | *[local-name() = 'table']/*[local-name() = 'name'] | *[local-name() = 'permission']/*[local-name() = 'name'] | *[local-name() = 'recommendation']/*[local-name() = 'name'] | *[local-name() = 'requirement']/*[local-name() = 'name']" mode="contents">
4459
+ </xsl:template><xsl:template match="*[local-name() = 'emf']"/><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name'] | *[local-name() = 'table']/*[local-name() = 'name'] | *[local-name() = 'permission']/*[local-name() = 'name'] | *[local-name() = 'recommendation']/*[local-name() = 'name'] | *[local-name() = 'requirement']/*[local-name() = 'name']" mode="contents">
4408
4460
  <xsl:apply-templates mode="contents"/>
4409
4461
  <xsl:text> </xsl:text>
4410
4462
  </xsl:template><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name'] | *[local-name() = 'table']/*[local-name() = 'name'] | *[local-name() = 'permission']/*[local-name() = 'name'] | *[local-name() = 'recommendation']/*[local-name() = 'name'] | *[local-name() = 'requirement']/*[local-name() = 'name'] | *[local-name() = 'sourcecode']/*[local-name() = 'name']" mode="bookmarks">
@@ -4556,8 +4608,6 @@
4556
4608
 
4557
4609
 
4558
4610
 
4559
-
4560
-
4561
4611
  <xsl:variable name="list_of_tables_figures_">
4562
4612
  <xsl:for-each select="//*[local-name() = 'table'][@id and *[local-name() = 'name']] | //*[local-name() = 'figure'][@id and *[local-name() = 'name']]">
4563
4613
  <table_figure id="{@id}"><xsl:apply-templates select="*[local-name() = 'name']" mode="bookmarks"/></table_figure>
@@ -4575,12 +4625,9 @@
4575
4625
  <xsl:if test="$list_of_tables_figures//table_figure">
4576
4626
  <fo:bookmark internal-destination="empty_bookmark" starting-state="hide"> <!-- {$list_of_figures//figure[1]/@id} -->
4577
4627
  <fo:bookmark-title>
4578
-
4579
-
4580
- <xsl:call-template name="getTitle">
4581
- <xsl:with-param name="name" select="'title-table-figures'"/>
4582
- </xsl:call-template>
4583
-
4628
+ <xsl:call-template name="getTitle">
4629
+ <xsl:with-param name="name" select="'title-table-figures'"/>
4630
+ </xsl:call-template>
4584
4631
  </fo:bookmark-title>
4585
4632
  <xsl:for-each select="$list_of_tables_figures//table_figure">
4586
4633
  <fo:bookmark internal-destination="{@id}">
@@ -4662,7 +4709,7 @@
4662
4709
  <xsl:apply-templates mode="bookmark"/>
4663
4710
  </xsl:otherwise>
4664
4711
  </xsl:choose>
4665
- </xsl:template><xsl:template match="title" mode="bookmark"/><xsl:template match="text()" mode="bookmark"/><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name'] | *[local-name() = 'image']/*[local-name() = 'name']" mode="presentation">
4712
+ </xsl:template><xsl:template match="title" mode="bookmark"/><xsl:template match="text()" mode="bookmark"/><xsl:template match="*[local-name() = 'figure']/*[local-name() = 'name'] | *[local-name() = 'image']/*[local-name() = 'name']">
4666
4713
  <xsl:if test="normalize-space() != ''">
4667
4714
  <fo:block xsl:use-attribute-sets="figure-name-style">
4668
4715
 
@@ -4678,12 +4725,6 @@
4678
4725
  <!-- <xsl:text> </xsl:text> -->
4679
4726
  </xsl:template><xsl:template name="getSection">
4680
4727
  <xsl:value-of select="*[local-name() = 'title']/*[local-name() = 'tab'][1]/preceding-sibling::node()"/>
4681
- <!--
4682
- <xsl:for-each select="*[local-name() = 'title']/*[local-name() = 'tab'][1]/preceding-sibling::node()">
4683
- <xsl:value-of select="."/>
4684
- </xsl:for-each>
4685
- -->
4686
-
4687
4728
  </xsl:template><xsl:template name="getName">
4688
4729
  <xsl:choose>
4689
4730
  <xsl:when test="*[local-name() = 'title']/*[local-name() = 'tab']">
@@ -4752,16 +4793,21 @@
4752
4793
  <xsl:apply-templates mode="contents_item">
4753
4794
  <xsl:with-param name="mode" select="$mode"/>
4754
4795
  </xsl:apply-templates>
4755
- </xsl:template><xsl:template match="*[local-name() = 'add'][starts-with(text(), $ace_tag)]" mode="contents_item">
4796
+ </xsl:template><xsl:template match="*[local-name() = 'add']" mode="contents_item">
4756
4797
  <xsl:param name="mode">bookmarks</xsl:param>
4757
- <xsl:if test="$mode = 'contents'">
4758
- <xsl:copy>
4759
- <xsl:apply-templates mode="contents_item"/>
4760
- </xsl:copy>
4761
- </xsl:if>
4798
+ <xsl:choose>
4799
+ <xsl:when test="starts-with(text(), $ace_tag)">
4800
+ <xsl:if test="$mode = 'contents'">
4801
+ <xsl:copy>
4802
+ <xsl:apply-templates mode="contents_item"/>
4803
+ </xsl:copy>
4804
+ </xsl:if>
4805
+ </xsl:when>
4806
+ <xsl:otherwise><xsl:apply-templates mode="contents_item"/></xsl:otherwise>
4807
+ </xsl:choose>
4762
4808
  </xsl:template><xsl:template match="*[local-name()='sourcecode']" name="sourcecode">
4763
4809
 
4764
- <fo:block-container margin-left="0mm">
4810
+ <fo:block-container xsl:use-attribute-sets="sourcecode-container-style">
4765
4811
  <xsl:copy-of select="@id"/>
4766
4812
 
4767
4813
  <xsl:if test="parent::*[local-name() = 'note']">
@@ -4798,6 +4844,7 @@
4798
4844
 
4799
4845
 
4800
4846
  </xsl:variable>
4847
+
4801
4848
  <xsl:variable name="font-size" select="normalize-space($_font-size)"/>
4802
4849
  <xsl:if test="$font-size != ''">
4803
4850
  <xsl:attribute name="font-size">
@@ -4814,11 +4861,11 @@
4814
4861
 
4815
4862
 
4816
4863
 
4817
- <xsl:apply-templates/>
4864
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
4818
4865
  </fo:block>
4819
4866
 
4820
4867
 
4821
- <xsl:apply-templates select="*[local-name()='name']" mode="presentation"/>
4868
+ <xsl:apply-templates select="*[local-name()='name']"/> <!-- show sourcecode's name AFTER content -->
4822
4869
 
4823
4870
 
4824
4871
 
@@ -4832,7 +4879,7 @@
4832
4879
  <xsl:call-template name="add-zero-spaces-java">
4833
4880
  <xsl:with-param name="text" select="$text"/>
4834
4881
  </xsl:call-template>
4835
- </xsl:template><xsl:template match="*[local-name() = 'sourcecode']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'sourcecode']/*[local-name() = 'name']" mode="presentation">
4882
+ </xsl:template><xsl:template match="*[local-name() = 'sourcecode']/*[local-name() = 'name']">
4836
4883
  <xsl:if test="normalize-space() != ''">
4837
4884
  <fo:block xsl:use-attribute-sets="sourcecode-name-style">
4838
4885
  <xsl:apply-templates/>
@@ -4840,10 +4887,10 @@
4840
4887
  </xsl:if>
4841
4888
  </xsl:template><xsl:template match="*[local-name() = 'permission']">
4842
4889
  <fo:block id="{@id}" xsl:use-attribute-sets="permission-style">
4843
- <xsl:apply-templates select="*[local-name()='name']" mode="presentation"/>
4844
- <xsl:apply-templates/>
4890
+ <xsl:apply-templates select="*[local-name()='name']"/>
4891
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
4845
4892
  </fo:block>
4846
- </xsl:template><xsl:template match="*[local-name() = 'permission']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'permission']/*[local-name() = 'name']" mode="presentation">
4893
+ </xsl:template><xsl:template match="*[local-name() = 'permission']/*[local-name() = 'name']">
4847
4894
  <xsl:if test="normalize-space() != ''">
4848
4895
  <fo:block xsl:use-attribute-sets="permission-name-style">
4849
4896
  <xsl:apply-templates/>
@@ -4858,13 +4905,13 @@
4858
4905
  </fo:block>
4859
4906
  </xsl:template><xsl:template match="*[local-name() = 'requirement']">
4860
4907
  <fo:block id="{@id}" xsl:use-attribute-sets="requirement-style">
4861
- <xsl:apply-templates select="*[local-name()='name']" mode="presentation"/>
4862
- <xsl:apply-templates select="*[local-name()='label']" mode="presentation"/>
4863
- <xsl:apply-templates select="@obligation" mode="presentation"/>
4864
- <xsl:apply-templates select="*[local-name()='subject']" mode="presentation"/>
4865
- <xsl:apply-templates/>
4908
+ <xsl:apply-templates select="*[local-name()='name']"/>
4909
+ <xsl:apply-templates select="*[local-name()='label']"/>
4910
+ <xsl:apply-templates select="@obligation"/>
4911
+ <xsl:apply-templates select="*[local-name()='subject']"/>
4912
+ <xsl:apply-templates select="node()[not(local-name() = 'name') and not(local-name() = 'label') and not(local-name() = 'subject')]"/>
4866
4913
  </fo:block>
4867
- </xsl:template><xsl:template match="*[local-name() = 'requirement']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'requirement']/*[local-name() = 'name']" mode="presentation">
4914
+ </xsl:template><xsl:template match="*[local-name() = 'requirement']/*[local-name() = 'name']">
4868
4915
  <xsl:if test="normalize-space() != ''">
4869
4916
  <fo:block xsl:use-attribute-sets="requirement-name-style">
4870
4917
 
@@ -4878,20 +4925,24 @@
4878
4925
 
4879
4926
  </fo:block>
4880
4927
  </xsl:if>
4881
- </xsl:template><xsl:template match="*[local-name() = 'requirement']/*[local-name() = 'label']"/><xsl:template match="*[local-name() = 'requirement']/*[local-name() = 'label']" mode="presentation">
4928
+ </xsl:template><xsl:template match="*[local-name() = 'requirement']/*[local-name() = 'label']">
4882
4929
  <fo:block xsl:use-attribute-sets="requirement-label-style">
4883
4930
  <xsl:apply-templates/>
4884
4931
  </fo:block>
4885
- </xsl:template><xsl:template match="*[local-name() = 'requirement']/@obligation" mode="presentation">
4932
+ </xsl:template><xsl:template match="*[local-name() = 'requirement']/@obligation">
4886
4933
  <fo:block>
4887
4934
  <fo:inline padding-right="3mm">Obligation</fo:inline><xsl:value-of select="."/>
4888
4935
  </fo:block>
4936
+ </xsl:template><xsl:template match="*[local-name() = 'requirement']/*[local-name() = 'subject']" priority="2">
4937
+ <fo:block xsl:use-attribute-sets="subject-style">
4938
+ <xsl:text>Target Type </xsl:text><xsl:apply-templates/>
4939
+ </fo:block>
4889
4940
  </xsl:template><xsl:template match="*[local-name() = 'recommendation']">
4890
4941
  <fo:block id="{@id}" xsl:use-attribute-sets="recommendation-style">
4891
- <xsl:apply-templates select="*[local-name()='name']" mode="presentation"/>
4892
- <xsl:apply-templates/>
4942
+ <xsl:apply-templates select="*[local-name()='name']"/>
4943
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
4893
4944
  </fo:block>
4894
- </xsl:template><xsl:template match="*[local-name() = 'recommendation']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'recommendation']/*[local-name() = 'name']" mode="presentation">
4945
+ </xsl:template><xsl:template match="*[local-name() = 'recommendation']/*[local-name() = 'name']">
4895
4946
  <xsl:if test="normalize-space() != ''">
4896
4947
  <fo:block xsl:use-attribute-sets="recommendation-name-style">
4897
4948
  <xsl:apply-templates/>
@@ -4902,10 +4953,6 @@
4902
4953
  <fo:block xsl:use-attribute-sets="recommendation-label-style">
4903
4954
  <xsl:apply-templates/>
4904
4955
  </fo:block>
4905
- </xsl:template><xsl:template match="*[local-name() = 'requirement']/*[local-name() = 'subject']" priority="2"/><xsl:template match="*[local-name() = 'requirement']/*[local-name() = 'subject']" mode="presentation">
4906
- <fo:block xsl:use-attribute-sets="subject-style">
4907
- <xsl:text>Target Type </xsl:text><xsl:apply-templates/>
4908
- </fo:block>
4909
4956
  </xsl:template><xsl:template match="*[local-name() = 'subject']">
4910
4957
  <fo:block xsl:use-attribute-sets="subject-style">
4911
4958
  <xsl:text>Target Type </xsl:text><xsl:apply-templates/>
@@ -4949,8 +4996,6 @@
4949
4996
  </xsl:variable>
4950
4997
  <xsl:variable name="cols-count" select="count(xalan:nodeset($simple-table)//tr[1]/td)"/>
4951
4998
  <xsl:if test="$cols-count = 2 and not(ancestor::*[local-name()='table'])">
4952
- <!-- <fo:table-column column-width="35mm"/>
4953
- <fo:table-column column-width="115mm"/> -->
4954
4999
  <fo:table-column column-width="30%"/>
4955
5000
  <fo:table-column column-width="70%"/>
4956
5001
  </xsl:if>
@@ -4960,7 +5005,7 @@
4960
5005
  <xsl:if test=".//*[local-name() = 'fn']">
4961
5006
  <xsl:for-each select="*[local-name() = 'tbody']">
4962
5007
  <fo:block font-size="90%" border-bottom="1pt solid black">
4963
- <xsl:call-template name="fn_display"/>
5008
+ <xsl:call-template name="table_fn_display"/>
4964
5009
  </fo:block>
4965
5010
  </xsl:for-each>
4966
5011
  </xsl:if>
@@ -4977,7 +5022,6 @@
4977
5022
  </xsl:template><xsl:template match="*[local-name()='tr']" mode="requirement">
4978
5023
  <fo:table-row height="7mm" border-bottom="0.5pt solid grey">
4979
5024
  <xsl:if test="parent::*[local-name()='thead']"> <!-- and not(ancestor::*[local-name() = 'table'][@class = 'recommendation' or @class='requirement' or @class='permission']) -->
4980
- <!-- <xsl:attribute name="border">1pt solid black</xsl:attribute> -->
4981
5025
  <xsl:attribute name="background-color">rgb(33, 55, 92)</xsl:attribute>
4982
5026
  </xsl:if>
4983
5027
  <xsl:if test="starts-with(*[local-name()='td'][1], 'Requirement ')">
@@ -4990,34 +5034,11 @@
4990
5034
  </fo:table-row>
4991
5035
  </xsl:template><xsl:template match="*[local-name()='th']" mode="requirement">
4992
5036
  <fo:table-cell text-align="{@align}" display-align="center" padding="1mm" padding-left="2mm"> <!-- border="0.5pt solid black" -->
4993
- <xsl:attribute name="text-align">
4994
- <xsl:choose>
4995
- <xsl:when test="@align">
4996
- <xsl:value-of select="@align"/>
4997
- </xsl:when>
4998
- <xsl:otherwise>left</xsl:otherwise>
4999
- </xsl:choose>
5000
- </xsl:attribute>
5001
- <xsl:if test="@colspan">
5002
- <xsl:attribute name="number-columns-spanned">
5003
- <xsl:value-of select="@colspan"/>
5004
- </xsl:attribute>
5005
- </xsl:if>
5006
- <xsl:if test="@rowspan">
5007
- <xsl:attribute name="number-rows-spanned">
5008
- <xsl:value-of select="@rowspan"/>
5009
- </xsl:attribute>
5010
- </xsl:if>
5011
- <xsl:call-template name="display-align"/>
5037
+ <xsl:call-template name="setTextAlignment">
5038
+ <xsl:with-param name="default">left</xsl:with-param>
5039
+ </xsl:call-template>
5012
5040
 
5013
- <!-- <xsl:if test="ancestor::*[local-name()='table']/@type = 'recommend'">
5014
- <xsl:attribute name="padding-top">0.5mm</xsl:attribute>
5015
- <xsl:attribute name="background-color">rgb(165, 165, 165)</xsl:attribute>
5016
- </xsl:if>
5017
- <xsl:if test="ancestor::*[local-name()='table']/@type = 'recommendtest'">
5018
- <xsl:attribute name="padding-top">0.5mm</xsl:attribute>
5019
- <xsl:attribute name="background-color">rgb(201, 201, 201)</xsl:attribute>
5020
- </xsl:if> -->
5041
+ <xsl:call-template name="setTableCellAttributes"/>
5021
5042
 
5022
5043
  <fo:block>
5023
5044
  <xsl:apply-templates/>
@@ -5029,37 +5050,15 @@
5029
5050
  <xsl:attribute name="padding">0mm</xsl:attribute>
5030
5051
  <xsl:attribute name="padding-left">0mm</xsl:attribute>
5031
5052
  </xsl:if>
5032
- <xsl:attribute name="text-align">
5033
- <xsl:choose>
5034
- <xsl:when test="@align">
5035
- <xsl:value-of select="@align"/>
5036
- </xsl:when>
5037
- <xsl:otherwise>left</xsl:otherwise>
5038
- </xsl:choose>
5039
- </xsl:attribute>
5053
+ <xsl:call-template name="setTextAlignment">
5054
+ <xsl:with-param name="default">left</xsl:with-param>
5055
+ </xsl:call-template>
5056
+
5040
5057
  <xsl:if test="following-sibling::*[local-name()='td'] and not(preceding-sibling::*[local-name()='td'])">
5041
5058
  <xsl:attribute name="font-weight">bold</xsl:attribute>
5042
5059
  </xsl:if>
5043
- <xsl:if test="@colspan">
5044
- <xsl:attribute name="number-columns-spanned">
5045
- <xsl:value-of select="@colspan"/>
5046
- </xsl:attribute>
5047
- </xsl:if>
5048
- <xsl:if test="@rowspan">
5049
- <xsl:attribute name="number-rows-spanned">
5050
- <xsl:value-of select="@rowspan"/>
5051
- </xsl:attribute>
5052
- </xsl:if>
5053
- <xsl:call-template name="display-align"/>
5054
5060
 
5055
- <!-- <xsl:if test="ancestor::*[local-name()='table']/@type = 'recommend'">
5056
- <xsl:attribute name="padding-left">0.5mm</xsl:attribute>
5057
- <xsl:attribute name="padding-top">0.5mm</xsl:attribute>
5058
- <xsl:if test="parent::*[local-name()='tr']/preceding-sibling::*[local-name()='tr'] and not(*[local-name()='table'])">
5059
- <xsl:attribute name="background-color">rgb(201, 201, 201)</xsl:attribute>
5060
- </xsl:if>
5061
- </xsl:if> -->
5062
- <!-- 2nd line and below -->
5061
+ <xsl:call-template name="setTableCellAttributes"/>
5063
5062
 
5064
5063
  <fo:block>
5065
5064
  <xsl:apply-templates/>
@@ -5073,15 +5072,15 @@
5073
5072
  <xsl:apply-templates/>
5074
5073
  </fo:block>
5075
5074
  </xsl:template><xsl:template match="*[local-name() = 'p2'][ancestor::*[local-name() = 'table'][@class = 'recommendation' or @class='requirement' or @class='permission']]">
5076
- <fo:block> <!-- margin-bottom="10pt" -->
5075
+ <fo:block>
5077
5076
  <xsl:apply-templates/>
5078
5077
  </fo:block>
5079
5078
  </xsl:template><xsl:template match="*[local-name() = 'termexample']">
5080
5079
  <fo:block id="{@id}" xsl:use-attribute-sets="termexample-style">
5081
- <xsl:apply-templates select="*[local-name()='name']" mode="presentation"/>
5082
- <xsl:apply-templates/>
5080
+ <xsl:apply-templates select="*[local-name()='name']"/>
5081
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
5083
5082
  </fo:block>
5084
- </xsl:template><xsl:template match="*[local-name() = 'termexample']/*[local-name() = 'name']"/><xsl:template match="*[local-name() = 'termexample']/*[local-name() = 'name']" mode="presentation">
5083
+ </xsl:template><xsl:template match="*[local-name() = 'termexample']/*[local-name() = 'name']">
5085
5084
  <xsl:if test="normalize-space() != ''">
5086
5085
  <fo:inline xsl:use-attribute-sets="termexample-name-style">
5087
5086
  <xsl:apply-templates/>
@@ -5107,9 +5106,7 @@
5107
5106
 
5108
5107
  <xsl:variable name="fo_element">
5109
5108
  <xsl:if test=".//*[local-name() = 'table'] or .//*[local-name() = 'dl']">block</xsl:if>
5110
- block
5111
-
5112
-
5109
+ block
5113
5110
  </xsl:variable>
5114
5111
 
5115
5112
  <!-- display 'EXAMPLE' -->
@@ -5182,6 +5179,8 @@
5182
5179
  </xsl:template><xsl:template match="*[local-name() = 'termsource']" name="termsource">
5183
5180
  <fo:block xsl:use-attribute-sets="termsource-style">
5184
5181
 
5182
+
5183
+
5185
5184
  <!-- Example: [SOURCE: ISO 5127:2017, 3.1.6.02] -->
5186
5185
  <xsl:variable name="termsource_text">
5187
5186
  <xsl:apply-templates/>
@@ -5219,9 +5218,7 @@
5219
5218
  <xsl:value-of select="."/>
5220
5219
  </xsl:if>
5221
5220
  </xsl:template><xsl:template match="*[local-name() = 'termsource']/*[local-name() = 'strong'][1][following-sibling::*[1][local-name() = 'origin']]/text()">
5222
- <fo:inline>
5223
-
5224
-
5221
+ <fo:inline xsl:use-attribute-sets="termsource-text-style">
5225
5222
  <xsl:value-of select="."/>
5226
5223
  </fo:inline>
5227
5224
  </xsl:template><xsl:template match="*[local-name() = 'origin']">
@@ -5264,7 +5261,6 @@
5264
5261
  <fo:block-container margin-left="0mm">
5265
5262
 
5266
5263
  <fo:block xsl:use-attribute-sets="quote-style">
5267
- <!-- <xsl:apply-templates select=".//*[local-name() = 'p']"/> -->
5268
5264
 
5269
5265
  <xsl:apply-templates select="./node()[not(local-name() = 'author') and not(local-name() = 'source')]"/> <!-- process all nested nodes, except author and source -->
5270
5266
  </fo:block>
@@ -5307,15 +5303,13 @@
5307
5303
  </xsl:variable>
5308
5304
 
5309
5305
  <xsl:choose>
5310
- <xsl:when test="normalize-space($bibitemid) != ''">
5306
+ <xsl:when test="normalize-space($bibitemid) != ''"> <!-- if in the bibliography there is the item with @bibitemid (and not hidden), then create link -->
5311
5307
  <fo:inline xsl:use-attribute-sets="eref-style">
5312
5308
  <xsl:if test="@type = 'footnote'">
5313
-
5314
- <xsl:attribute name="keep-together.within-line">always</xsl:attribute>
5315
- <xsl:attribute name="font-size">80%</xsl:attribute>
5316
- <xsl:attribute name="keep-with-previous.within-line">always</xsl:attribute>
5317
- <xsl:attribute name="vertical-align">super</xsl:attribute>
5318
-
5309
+ <xsl:attribute name="keep-together.within-line">always</xsl:attribute>
5310
+ <xsl:attribute name="keep-with-previous.within-line">always</xsl:attribute>
5311
+ <xsl:attribute name="vertical-align">super</xsl:attribute>
5312
+ <xsl:attribute name="font-size">80%</xsl:attribute>
5319
5313
 
5320
5314
  </xsl:if>
5321
5315
 
@@ -5335,7 +5329,6 @@
5335
5329
 
5336
5330
 
5337
5331
 
5338
-
5339
5332
  </xsl:if>
5340
5333
 
5341
5334
 
@@ -5397,8 +5390,6 @@
5397
5390
  </xsl:choose>
5398
5391
  </xsl:variable>
5399
5392
 
5400
- <!-- <xsl:variable name="language" select="//*[local-name()='bibdata']//*[local-name()='language']"/> -->
5401
-
5402
5393
  <xsl:choose>
5403
5394
  <xsl:when test="$lang = 'zh'">
5404
5395
  <fo:inline><xsl:value-of select="$tab_zh"/></fo:inline>
@@ -5454,7 +5445,6 @@
5454
5445
  <xsl:apply-templates/>
5455
5446
  </xsl:template><xsl:template match="*[local-name() = 'definition'][preceding-sibling::*[local-name() = 'domain']]/*[local-name() = 'p'][1]">
5456
5447
  <fo:inline> <xsl:apply-templates/></fo:inline>
5457
- <!-- <fo:block>&#xA0;</fo:block> -->
5458
5448
  <fo:block/>
5459
5449
  </xsl:template><xsl:template match="/*/*[local-name() = 'sections']/*" priority="2">
5460
5450
 
@@ -5495,11 +5485,6 @@
5495
5485
  <xsl:apply-templates/>
5496
5486
  </fo:block>
5497
5487
  </xsl:template><xsl:template match="*[local-name() = 'definitions']">
5498
- <fo:block id="{@id}">
5499
- <xsl:apply-templates/>
5500
- </fo:block>
5501
- </xsl:template><xsl:template match="*[local-name() = 'references'][@hidden='true']" priority="3"/><xsl:template match="*[local-name() = 'bibitem'][@hidden='true']" priority="3"/><xsl:template match="/*/*[local-name() = 'bibliography']/*[local-name() = 'references'][@normative='true']">
5502
-
5503
5488
  <fo:block id="{@id}">
5504
5489
  <xsl:apply-templates/>
5505
5490
  </fo:block>
@@ -5766,173 +5751,217 @@
5766
5751
  </xsl:template><xsl:template match="*[local-name() = 'errata']/*[local-name() = 'row']/*">
5767
5752
  <fo:table-cell border="1pt solid black" padding-left="1mm" padding-top="0.5mm">
5768
5753
  <fo:block><xsl:apply-templates/></fo:block>
5769
- </fo:table-cell>
5770
- </xsl:template><xsl:template name="processBibitem">
5771
-
5772
-
5773
-
5774
-
5754
+ </fo:table-cell>
5755
+ </xsl:template><xsl:template match="*[local-name() = 'references'][@hidden='true']" priority="3"/><xsl:template match="*[local-name() = 'bibitem'][@hidden='true']" priority="3"/><xsl:template match="*[local-name() = 'bibitem'][starts-with(@id, 'hidden_bibitem_')]" priority="3"/><xsl:template match="*[local-name() = 'references'][@normative='true']" priority="2">
5775
5756
 
5776
5757
 
5777
5758
 
5759
+ <fo:block id="{@id}">
5760
+ <xsl:apply-templates/>
5761
+ </fo:block>
5762
+ </xsl:template><xsl:template match="*[local-name() = 'references']">
5763
+ <xsl:if test="not(ancestor::*[local-name() = 'annex'])">
5764
+
5765
+ <fo:block break-after="page"/>
5766
+
5767
+ </xsl:if>
5778
5768
 
5769
+ <!-- <xsl:if test="ancestor::*[local-name() = 'annex']">
5770
+ <xsl:if test="$namespace = 'csa' or $namespace = 'csd' or $namespace = 'gb' or $namespace = 'iec' or $namespace = 'iso' or $namespace = 'itu'">
5771
+ <fo:block break-after="page"/>
5772
+ </xsl:if>
5773
+ </xsl:if> -->
5779
5774
 
5775
+ <fo:block id="{@id}" xsl:use-attribute-sets="references-non-normative-style">
5776
+ <xsl:apply-templates/>
5777
+ </fo:block>
5780
5778
 
5781
5779
 
5782
-
5783
5780
 
5784
5781
 
5785
-
5782
+ </xsl:template><xsl:template match="*[local-name() = 'bibitem']">
5783
+ <xsl:call-template name="bibitem"/>
5784
+ </xsl:template><xsl:template match="*[local-name() = 'references'][@normative='true']/*[local-name() = 'bibitem']" name="bibitem" priority="2">
5786
5785
 
5786
+ <fo:block id="{@id}" xsl:use-attribute-sets="bibitem-normative-style">
5787
+ <xsl:call-template name="processBibitem"/>
5788
+ </fo:block>
5789
+
5787
5790
 
5791
+ </xsl:template><xsl:template match="*[local-name() = 'references'][not(@normative='true')]/*[local-name() = 'bibitem']" priority="2">
5792
+
5793
+ <!-- $namespace = 'csd' or $namespace = 'gb' or $namespace = 'iec' or $namespace = 'iso' or $namespace = 'jcgm' or $namespace = 'm3d' or
5794
+ $namespace = 'mpfd' or $namespace = 'ogc' or $namespace = 'ogc-white-paper' -->
5795
+ <!-- Example: [1] ISO 9:1995, Information and documentation – Transliteration of Cyrillic characters into Latin characters – Slavic and non-Slavic languages -->
5796
+ <fo:list-block id="{@id}" xsl:use-attribute-sets="bibitem-non-normative-list-style">
5797
+ <fo:list-item>
5798
+ <fo:list-item-label end-indent="label-end()">
5799
+ <fo:block>
5800
+ <fo:inline>
5801
+
5802
+ <xsl:value-of select="*[local-name()='docidentifier'][@type = 'metanorma-ordinal']"/>
5803
+ <xsl:if test="not(*[local-name()='docidentifier'][@type = 'metanorma-ordinal'])">
5804
+ <xsl:number format="[1]"/>
5805
+ </xsl:if>
5806
+
5807
+ </fo:inline>
5808
+ </fo:block>
5809
+ </fo:list-item-label>
5810
+ <fo:list-item-body start-indent="body-start()">
5811
+ <fo:block xsl:use-attribute-sets="bibitem-non-normative-list-body-style">
5812
+ <xsl:call-template name="processBibitem"/>
5813
+ </fo:block>
5814
+ </fo:list-item-body>
5815
+ </fo:list-item>
5816
+ </fo:list-block>
5817
+
5788
5818
 
5789
- <!-- end MPFD bibitem processing -->
5790
-
5791
- <!-- start M3D bibitem processing -->
5792
-
5819
+ </xsl:template><xsl:template name="processBibitem">
5793
5820
 
5794
5821
 
5795
- <!-- start OGC bibtem processing -->
5796
- <xsl:choose>
5797
- <xsl:when test="*[local-name() = 'formattedref']">
5798
- <xsl:apply-templates select="*[local-name() = 'formattedref']"/>
5799
- </xsl:when>
5800
- <xsl:otherwise>
5801
- <xsl:variable name="personalAuthors">
5802
- <xsl:for-each select="*[local-name() = 'contributor'][*[local-name() = 'role']/@type='author']/*[local-name() = 'person']">
5803
- <xsl:call-template name="processPersonalAuthor"/>
5804
- </xsl:for-each>
5805
- <xsl:if test="not(*[local-name() = 'contributor'][*[local-name() = 'role']/@type='author']/*[local-name() = 'person'])">
5806
- <xsl:for-each select="*[local-name() = 'contributor'][*[local-name() = 'role']/@type='editor']/*[local-name() = 'person']">
5822
+ <!-- start OGC bibitem processing -->
5823
+ <xsl:if test=".//ogc:fn">
5824
+ <xsl:attribute name="line-height-shift-adjustment">disregard-shifts</xsl:attribute>
5825
+ </xsl:if>
5826
+ <xsl:choose>
5827
+ <xsl:when test="*[local-name() = 'formattedref']">
5828
+ <xsl:apply-templates select="*[local-name() = 'formattedref']"/>
5829
+ </xsl:when>
5830
+ <xsl:otherwise>
5831
+ <xsl:variable name="personalAuthors">
5832
+ <xsl:for-each select="*[local-name() = 'contributor'][*[local-name() = 'role']/@type='author']/*[local-name() = 'person']">
5807
5833
  <xsl:call-template name="processPersonalAuthor"/>
5808
5834
  </xsl:for-each>
5809
- </xsl:if>
5810
- </xsl:variable>
5811
-
5812
- <xsl:variable name="city" select="*[local-name() = 'place']"/>
5813
- <xsl:variable name="year">
5835
+ <xsl:if test="not(*[local-name() = 'contributor'][*[local-name() = 'role']/@type='author']/*[local-name() = 'person'])">
5836
+ <xsl:for-each select="*[local-name() = 'contributor'][*[local-name() = 'role']/@type='editor']/*[local-name() = 'person']">
5837
+ <xsl:call-template name="processPersonalAuthor"/>
5838
+ </xsl:for-each>
5839
+ </xsl:if>
5840
+ </xsl:variable>
5841
+
5842
+ <xsl:variable name="city" select="*[local-name() = 'place']"/>
5843
+ <xsl:variable name="year">
5844
+ <xsl:choose>
5845
+ <xsl:when test="*[local-name() = 'date'][@type = 'published']">
5846
+ <xsl:for-each select="*[local-name() = 'date'][@type = 'published']">
5847
+ <xsl:call-template name="renderDate"/>
5848
+ </xsl:for-each>
5849
+ </xsl:when>
5850
+ <xsl:when test="*[local-name() = 'date'][@type = 'issued']">
5851
+ <xsl:for-each select="*[local-name() = 'date'][@type = 'issued']">
5852
+ <xsl:call-template name="renderDate"/>
5853
+ </xsl:for-each>
5854
+ </xsl:when>
5855
+ <xsl:when test="*[local-name() = 'date'][@type = 'circulated']">
5856
+ <xsl:for-each select="*[local-name() = 'date'][@type = 'circulated']">
5857
+ <xsl:call-template name="renderDate"/>
5858
+ </xsl:for-each>
5859
+ </xsl:when>
5860
+ <xsl:otherwise>
5861
+ <xsl:for-each select="*[local-name() = 'date']">
5862
+ <xsl:call-template name="renderDate"/>
5863
+ </xsl:for-each>
5864
+ </xsl:otherwise>
5865
+ </xsl:choose>
5866
+ </xsl:variable>
5867
+
5868
+ <xsl:variable name="uri" select="*[local-name() = 'uri']"/>
5869
+
5870
+
5871
+ <!-- citation structure:
5872
+ {personal names | organisation}: {document identifier}, {title}. {publisher}, {city} ({year})
5873
+ -->
5874
+
5875
+ <!-- Author(s) -->
5814
5876
  <xsl:choose>
5815
- <xsl:when test="*[local-name() = 'date'][@type = 'published']">
5816
- <xsl:for-each select="*[local-name() = 'date'][@type = 'published']">
5817
- <xsl:call-template name="renderDate"/>
5818
- </xsl:for-each>
5877
+ <xsl:when test="xalan:nodeset($personalAuthors)//author">
5878
+ <xsl:for-each select="xalan:nodeset($personalAuthors)//author">
5879
+ <xsl:apply-templates/>
5880
+ <xsl:if test="position() != last()">, </xsl:if>
5881
+ </xsl:for-each>
5882
+ <xsl:text>: </xsl:text>
5883
+ </xsl:when>
5884
+ <xsl:when test="*[local-name() = 'contributor'][*[local-name() = 'role']/@type = 'publisher']/*[local-name() = 'organization']/*[local-name() = 'abbreviation']">
5885
+ <xsl:for-each select="*[local-name() = 'contributor'][*[local-name() = 'role']/@type = 'publisher']/*[local-name() = 'organization']/*[local-name() = 'abbreviation']">
5886
+ <xsl:value-of select="."/>
5887
+ <xsl:if test="position() != last()">/</xsl:if>
5888
+ </xsl:for-each>
5889
+ <xsl:text>: </xsl:text>
5819
5890
  </xsl:when>
5820
- <xsl:when test="*[local-name() = 'date'][@type = 'issued']">
5821
- <xsl:for-each select="*[local-name() = 'date'][@type = 'issued']">
5822
- <xsl:call-template name="renderDate"/>
5891
+ <xsl:when test="*[local-name() = 'contributor'][*[local-name() = 'role']/@type = 'publisher']/*[local-name() = 'organization']/*[local-name() = 'name']">
5892
+ <xsl:for-each select="*[local-name() = 'contributor'][*[local-name() = 'role']/@type = 'publisher']/*[local-name() = 'organization']/*[local-name() = 'name']">
5893
+ <xsl:value-of select="."/>
5894
+ <xsl:if test="position() != last()">, </xsl:if>
5823
5895
  </xsl:for-each>
5896
+ <xsl:text>: </xsl:text>
5824
5897
  </xsl:when>
5825
- <xsl:when test="*[local-name() = 'date'][@type = 'circulated']">
5826
- <xsl:for-each select="*[local-name() = 'date'][@type = 'circulated']">
5827
- <xsl:call-template name="renderDate"/>
5828
- </xsl:for-each>
5898
+ </xsl:choose>
5899
+
5900
+
5901
+ <xsl:variable name="document_identifier">
5902
+ <xsl:call-template name="processBibitemDocId"/>
5903
+ </xsl:variable>
5904
+
5905
+ <xsl:value-of select="$document_identifier"/>
5906
+
5907
+ <xsl:apply-templates select="*[local-name() = 'note']"/>
5908
+
5909
+ <xsl:variable name="isDraft">
5910
+ <xsl:variable name="stage" select="normalize-space(*[local-name() = 'status']/*[local-name() = 'stage'])"/>
5911
+ <xsl:if test="*[local-name() = 'contributor'][*[local-name() = 'role']/@type = 'publisher']/*[local-name() = 'organization'][*[local-name() = 'name']/text() = 'Open Geospatial Consortium'] and $stage != '' and $stage != 'published' and $stage != 'deprecated' and $stage != 'retired'">true</xsl:if>
5912
+ </xsl:variable>
5913
+
5914
+ <xsl:if test="$isDraft = 'true'">
5915
+ <xsl:text> (Draft)</xsl:text>
5916
+ </xsl:if>
5917
+
5918
+ <xsl:text>, </xsl:text>
5919
+
5920
+ <xsl:choose>
5921
+ <xsl:when test="*[local-name() = 'title'][@type = 'main' and @language = 'en']">
5922
+ <xsl:apply-templates select="*[local-name() = 'title'][@type = 'main' and @language = 'en']"/>
5829
5923
  </xsl:when>
5830
5924
  <xsl:otherwise>
5831
- <xsl:for-each select="*[local-name() = 'date']">
5832
- <xsl:call-template name="renderDate"/>
5833
- </xsl:for-each>
5925
+ <xsl:apply-templates select="*[local-name() = 'title']"/>
5834
5926
  </xsl:otherwise>
5835
5927
  </xsl:choose>
5836
- </xsl:variable>
5837
-
5838
- <xsl:variable name="uri" select="*[local-name() = 'uri']"/>
5839
-
5840
-
5841
- <!-- citation structure:
5842
- {personal names | organisation}: {document identifier}, {title}. {publisher}, {city} ({year})
5843
- -->
5844
-
5845
- <!-- Author(s) -->
5846
- <xsl:choose>
5847
- <xsl:when test="xalan:nodeset($personalAuthors)//author">
5848
- <xsl:for-each select="xalan:nodeset($personalAuthors)//author">
5849
- <xsl:apply-templates/>
5850
- <xsl:if test="position() != last()">, </xsl:if>
5851
- </xsl:for-each>
5852
- <xsl:text>: </xsl:text>
5853
- </xsl:when>
5854
- <xsl:when test="*[local-name() = 'contributor'][*[local-name() = 'role']/@type = 'publisher']/*[local-name() = 'organization']/*[local-name() = 'abbreviation']">
5855
- <xsl:for-each select="*[local-name() = 'contributor'][*[local-name() = 'role']/@type = 'publisher']/*[local-name() = 'organization']/*[local-name() = 'abbreviation']">
5856
- <xsl:value-of select="."/>
5857
- <xsl:if test="position() != last()">/</xsl:if>
5858
- </xsl:for-each>
5859
- <xsl:text>: </xsl:text>
5860
- </xsl:when>
5861
- <xsl:when test="*[local-name() = 'contributor'][*[local-name() = 'role']/@type = 'publisher']/*[local-name() = 'organization']/*[local-name() = 'name']">
5928
+
5929
+ <xsl:text>. </xsl:text>
5930
+
5931
+ <xsl:if test="*[local-name() = 'contributor'][*[local-name() = 'role']/@type = 'publisher']/*[local-name() = 'organization']/*[local-name() = 'name']">
5862
5932
  <xsl:for-each select="*[local-name() = 'contributor'][*[local-name() = 'role']/@type = 'publisher']/*[local-name() = 'organization']/*[local-name() = 'name']">
5863
5933
  <xsl:value-of select="."/>
5864
5934
  <xsl:if test="position() != last()">, </xsl:if>
5865
5935
  </xsl:for-each>
5866
- <xsl:text>: </xsl:text>
5867
- </xsl:when>
5868
- </xsl:choose>
5869
-
5870
-
5871
- <xsl:variable name="document_identifier">
5872
- <xsl:call-template name="processBibitemDocId"/>
5873
- </xsl:variable>
5874
-
5875
- <xsl:value-of select="$document_identifier"/>
5876
-
5877
- <xsl:apply-templates select="*[local-name() = 'note']"/>
5878
-
5879
- <xsl:variable name="isDraft">
5880
- <xsl:variable name="stage" select="normalize-space(*[local-name() = 'status']/*[local-name() = 'stage'])"/>
5881
- <xsl:if test="*[local-name() = 'contributor'][*[local-name() = 'role']/@type = 'publisher']/*[local-name() = 'organization'][*[local-name() = 'name']/text() = 'Open Geospatial Consortium'] and $stage != '' and $stage != 'published' and $stage != 'deprecated' and $stage != 'retired'">true</xsl:if>
5882
- </xsl:variable>
5883
-
5884
- <xsl:if test="$isDraft = 'true'">
5885
- <xsl:text> (Draft)</xsl:text>
5886
- </xsl:if>
5887
-
5888
- <xsl:text>, </xsl:text>
5889
-
5890
- <xsl:choose>
5891
- <xsl:when test="*[local-name() = 'title'][@type = 'main' and @language = 'en']">
5892
- <xsl:apply-templates select="*[local-name() = 'title'][@type = 'main' and @language = 'en']"/>
5893
- </xsl:when>
5894
- <xsl:otherwise>
5895
- <xsl:apply-templates select="*[local-name() = 'title']"/>
5896
- </xsl:otherwise>
5897
- </xsl:choose>
5898
-
5899
- <xsl:text>. </xsl:text>
5900
-
5901
- <xsl:if test="*[local-name() = 'contributor'][*[local-name() = 'role']/@type = 'publisher']/*[local-name() = 'organization']/*[local-name() = 'name']">
5902
- <xsl:for-each select="*[local-name() = 'contributor'][*[local-name() = 'role']/@type = 'publisher']/*[local-name() = 'organization']/*[local-name() = 'name']">
5903
- <xsl:value-of select="."/>
5904
- <xsl:if test="position() != last()">, </xsl:if>
5905
- </xsl:for-each>
5906
- <xsl:if test="normalize-space($city) != ''">, </xsl:if>
5907
- </xsl:if>
5908
-
5909
- <xsl:value-of select="$city"/>
5910
-
5911
- <xsl:if test="(*[local-name() = 'contributor'][*[local-name() = 'role']/@type = 'publisher']/*[local-name() = 'organization']/*[local-name() = 'name'] or normalize-space($city) != '') and normalize-space($year) != ''">
5912
- <xsl:text> </xsl:text>
5913
- </xsl:if>
5914
-
5915
- <xsl:if test="normalize-space($year) != ''">
5916
- <xsl:text>(</xsl:text>
5917
- <xsl:value-of select="$year"/>
5918
- <xsl:text>). </xsl:text>
5919
- </xsl:if>
5920
-
5921
- <xsl:if test="normalize-space($uri) != ''">
5922
- <fo:inline>
5923
-
5936
+ <xsl:if test="normalize-space($city) != ''">, </xsl:if>
5937
+ </xsl:if>
5938
+
5939
+ <xsl:value-of select="$city"/>
5940
+
5941
+ <xsl:if test="(*[local-name() = 'contributor'][*[local-name() = 'role']/@type = 'publisher']/*[local-name() = 'organization']/*[local-name() = 'name'] or normalize-space($city) != '') and normalize-space($year) != ''">
5924
5942
  <xsl:text> </xsl:text>
5925
- <fo:basic-link external-destination="{$uri}" fox:alt-text="{$uri}">
5926
- <xsl:value-of select="$uri"/>
5927
- </fo:basic-link>
5928
- </fo:inline>
5929
- </xsl:if>
5930
-
5931
- </xsl:otherwise>
5932
- </xsl:choose>
5933
- <!-- end OGC bibitem processing-->
5934
-
5935
-
5943
+ </xsl:if>
5944
+
5945
+ <xsl:if test="normalize-space($year) != ''">
5946
+ <xsl:text>(</xsl:text>
5947
+ <xsl:value-of select="$year"/>
5948
+ <xsl:text>). </xsl:text>
5949
+ </xsl:if>
5950
+
5951
+ <xsl:if test="normalize-space($uri) != ''">
5952
+ <fo:inline>
5953
+
5954
+ <xsl:text> </xsl:text>
5955
+ <fo:basic-link external-destination="{$uri}" fox:alt-text="{$uri}">
5956
+ <xsl:value-of select="$uri"/>
5957
+ </fo:basic-link>
5958
+ </fo:inline>
5959
+ </xsl:if>
5960
+
5961
+ </xsl:otherwise>
5962
+ </xsl:choose>
5963
+ <!-- end OGC bibitem processing-->
5964
+
5936
5965
  </xsl:template><xsl:template name="processBibitemDocId">
5937
5966
  <xsl:variable name="_doc_ident" select="*[local-name() = 'docidentifier'][not(@type = 'DOI' or @type = 'metanorma' or @type = 'metanorma-ordinal' or @type = 'ISSN' or @type = 'ISBN' or @type = 'rfc-anchor')]"/>
5938
5967
  <xsl:choose>
@@ -5989,6 +6018,55 @@
5989
6018
  <xsl:value-of select="substring(.,1,1)"/>
5990
6019
  </xsl:template><xsl:template match="*[local-name() = 'title']" mode="title">
5991
6020
  <fo:inline><xsl:apply-templates/></fo:inline>
6021
+ </xsl:template><xsl:template match="*[local-name() = 'bibitem']/*[local-name() = 'title']" priority="2">
6022
+ <!-- <fo:inline><xsl:apply-templates /></fo:inline> -->
6023
+ <fo:inline font-style="italic"> <!-- BIPM BSI CSD CSA GB IEC IHO ISO ITU JCGM -->
6024
+ <xsl:apply-templates/>
6025
+ </fo:inline>
6026
+ </xsl:template><xsl:template match="*[local-name() = 'bibitem']/*[local-name() = 'note']" priority="2">
6027
+ <fo:footnote>
6028
+ <xsl:variable name="number">
6029
+
6030
+ <xsl:choose>
6031
+ <xsl:when test="ancestor::*[local-name() = 'references'][preceding-sibling::*[local-name() = 'references']]">
6032
+ <xsl:number level="any" count="*[local-name() = 'references'][preceding-sibling::*[local-name() = 'references']]//*[local-name() = 'bibitem']/*[local-name() = 'note']"/>
6033
+ </xsl:when>
6034
+ <xsl:otherwise>
6035
+ <xsl:number level="any" count="*[local-name() = 'bibitem']/*[local-name() = 'note']"/>
6036
+ </xsl:otherwise>
6037
+ </xsl:choose>
6038
+
6039
+ </xsl:variable>
6040
+ <fo:inline xsl:use-attribute-sets="bibitem-note-fn-style">
6041
+ <fo:basic-link internal-destination="{generate-id()}" fox:alt-text="footnote {$number}">
6042
+ <xsl:value-of select="$number"/>
6043
+
6044
+ </fo:basic-link>
6045
+ </fo:inline>
6046
+ <fo:footnote-body>
6047
+ <fo:block xsl:use-attribute-sets="bibitem-note-fn-body-style">
6048
+ <fo:inline id="{generate-id()}" xsl:use-attribute-sets="bibitem-note-fn-number-style">
6049
+ <xsl:value-of select="$number"/>
6050
+
6051
+ </fo:inline>
6052
+ <xsl:apply-templates/>
6053
+ </fo:block>
6054
+ </fo:footnote-body>
6055
+ </fo:footnote>
6056
+ </xsl:template><xsl:template match="*[local-name() = 'bibitem']/*[local-name() = 'edition']"> <!-- for iho -->
6057
+ <xsl:text> edition </xsl:text>
6058
+ <xsl:value-of select="."/>
6059
+ </xsl:template><xsl:template match="*[local-name() = 'bibitem']/*[local-name() = 'uri']"> <!-- for iho -->
6060
+ <xsl:text> (</xsl:text>
6061
+ <fo:inline xsl:use-attribute-sets="link-style">
6062
+ <fo:basic-link external-destination="." fox:alt-text=".">
6063
+ <xsl:value-of select="."/>
6064
+ </fo:basic-link>
6065
+ </fo:inline>
6066
+ <xsl:text>)</xsl:text>
6067
+ </xsl:template><xsl:template match="*[local-name() = 'bibitem']/*[local-name() = 'docidentifier']"/><xsl:template match="*[local-name() = 'formattedref']">
6068
+
6069
+ <xsl:apply-templates/>
5992
6070
  </xsl:template><xsl:template match="*[local-name() = 'form']">
5993
6071
  <fo:block>
5994
6072
  <xsl:apply-templates/>
@@ -6061,24 +6139,7 @@
6061
6139
  <xsl:when test="$htmltoclevels != ''"><xsl:value-of select="number($htmltoclevels)"/></xsl:when> <!-- if there is value in xml -->
6062
6140
  <xsl:when test="$toclevels != ''"><xsl:value-of select="number($toclevels)"/></xsl:when> <!-- if there is value in xml -->
6063
6141
  <xsl:otherwise><!-- default value -->
6064
-
6065
-
6066
-
6067
-
6068
-
6069
-
6070
-
6071
-
6072
-
6073
-
6074
-
6075
-
6076
-
6077
-
6078
6142
  3
6079
-
6080
-
6081
-
6082
6143
  </xsl:otherwise>
6083
6144
  </xsl:choose>
6084
6145
  </xsl:variable><xsl:template match="*[local-name() = 'toc']">
@@ -6176,6 +6237,62 @@
6176
6237
  <xsl:copy-of select="."/>
6177
6238
  </xsl:template><xsl:template match="*[local-name() = 'p'][@type = 'floating-title']" priority="4">
6178
6239
  <xsl:call-template name="title"/>
6240
+ </xsl:template><xsl:template match="*[local-name() = 'admonition']">
6241
+
6242
+
6243
+
6244
+
6245
+
6246
+ <!-- text in the box -->
6247
+ <fo:block-container id="{@id}" xsl:use-attribute-sets="admonition-style">
6248
+
6249
+
6250
+
6251
+
6252
+
6253
+ <fo:block-container xsl:use-attribute-sets="admonition-container-style">
6254
+
6255
+
6256
+ <fo:block xsl:use-attribute-sets="admonition-name-style">
6257
+ <xsl:call-template name="displayAdmonitionName"/>
6258
+ </fo:block>
6259
+ <fo:block xsl:use-attribute-sets="admonition-p-style">
6260
+ <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
6261
+ </fo:block>
6262
+
6263
+ </fo:block-container>
6264
+
6265
+ </fo:block-container>
6266
+
6267
+ </xsl:template><xsl:template name="displayAdmonitionName">
6268
+
6269
+ <xsl:apply-templates select="*[local-name() = 'name']"/>
6270
+ <xsl:if test="not(*[local-name() = 'name'])">
6271
+ <xsl:apply-templates select="@type"/>
6272
+ </xsl:if>
6273
+
6274
+ </xsl:template><xsl:template match="*[local-name() = 'admonition']/*[local-name() = 'name']">
6275
+ <xsl:apply-templates/>
6276
+ </xsl:template><xsl:template match="*[local-name() = 'admonition']/@type">
6277
+ <xsl:variable name="admonition_type_">
6278
+ <xsl:call-template name="getLocalizedString">
6279
+ <xsl:with-param name="key">admonition.<xsl:value-of select="."/></xsl:with-param>
6280
+ </xsl:call-template>
6281
+ </xsl:variable>
6282
+ <xsl:variable name="admonition_type" select="normalize-space(java:toUpperCase(java:java.lang.String.new($admonition_type_)))"/>
6283
+ <xsl:value-of select="$admonition_type"/>
6284
+ <xsl:if test="$admonition_type = ''">
6285
+ <xsl:value-of select="java:toUpperCase(java:java.lang.String.new(.))"/>
6286
+ </xsl:if>
6287
+ </xsl:template><xsl:template match="*[local-name() = 'admonition']/*[local-name() = 'p']">
6288
+
6289
+ <fo:block xsl:use-attribute-sets="admonition-p-style">
6290
+
6291
+
6292
+
6293
+ <xsl:apply-templates/>
6294
+ </fo:block>
6295
+
6179
6296
  </xsl:template><xsl:template name="convertDate">
6180
6297
  <xsl:param name="date"/>
6181
6298
  <xsl:param name="format" select="'short'"/>
@@ -6184,78 +6301,39 @@
6184
6301
  <xsl:variable name="day" select="substring($date, 9, 2)"/>
6185
6302
  <xsl:variable name="monthStr">
6186
6303
  <xsl:choose>
6187
- <xsl:when test="$month = '01'">January</xsl:when>
6188
- <xsl:when test="$month = '02'">February</xsl:when>
6189
- <xsl:when test="$month = '03'">March</xsl:when>
6190
- <xsl:when test="$month = '04'">April</xsl:when>
6191
- <xsl:when test="$month = '05'">May</xsl:when>
6192
- <xsl:when test="$month = '06'">June</xsl:when>
6193
- <xsl:when test="$month = '07'">July</xsl:when>
6194
- <xsl:when test="$month = '08'">August</xsl:when>
6195
- <xsl:when test="$month = '09'">September</xsl:when>
6196
- <xsl:when test="$month = '10'">October</xsl:when>
6197
- <xsl:when test="$month = '11'">November</xsl:when>
6198
- <xsl:when test="$month = '12'">December</xsl:when>
6199
- </xsl:choose>
6200
- </xsl:variable>
6201
- <xsl:variable name="result">
6202
- <xsl:choose>
6203
- <xsl:when test="$format = 'ddMMyyyy'">
6204
- <xsl:if test="$day != ''"><xsl:value-of select="number($day)"/></xsl:if>
6205
- <xsl:text> </xsl:text>
6206
- <xsl:value-of select="normalize-space(concat($monthStr, ' ' , $year))"/>
6207
- </xsl:when>
6208
- <xsl:when test="$format = 'ddMM'">
6209
- <xsl:if test="$day != ''"><xsl:value-of select="number($day)"/></xsl:if>
6210
- <xsl:text> </xsl:text><xsl:value-of select="$monthStr"/>
6211
- </xsl:when>
6212
- <xsl:when test="$format = 'short' or $day = ''">
6213
- <xsl:value-of select="normalize-space(concat($monthStr, ' ', $year))"/>
6214
- </xsl:when>
6215
- <xsl:otherwise>
6216
- <xsl:value-of select="normalize-space(concat($monthStr, ' ', $day, ', ' , $year))"/>
6217
- </xsl:otherwise>
6304
+ <xsl:when test="$month = '01'">january</xsl:when>
6305
+ <xsl:when test="$month = '02'">february</xsl:when>
6306
+ <xsl:when test="$month = '03'">march</xsl:when>
6307
+ <xsl:when test="$month = '04'">april</xsl:when>
6308
+ <xsl:when test="$month = '05'">may</xsl:when>
6309
+ <xsl:when test="$month = '06'">june</xsl:when>
6310
+ <xsl:when test="$month = '07'">july</xsl:when>
6311
+ <xsl:when test="$month = '08'">august</xsl:when>
6312
+ <xsl:when test="$month = '09'">september</xsl:when>
6313
+ <xsl:when test="$month = '10'">october</xsl:when>
6314
+ <xsl:when test="$month = '11'">november</xsl:when>
6315
+ <xsl:when test="$month = '12'">december</xsl:when>
6218
6316
  </xsl:choose>
6219
6317
  </xsl:variable>
6220
- <xsl:value-of select="$result"/>
6221
- </xsl:template><xsl:template name="convertDateLocalized">
6222
- <xsl:param name="date"/>
6223
- <xsl:param name="format" select="'short'"/>
6224
- <xsl:variable name="year" select="substring($date, 1, 4)"/>
6225
- <xsl:variable name="month" select="substring($date, 6, 2)"/>
6226
- <xsl:variable name="day" select="substring($date, 9, 2)"/>
6227
- <xsl:variable name="monthStr">
6228
- <xsl:choose>
6229
- <xsl:when test="$month = '01'"><xsl:call-template name="getLocalizedString"><xsl:with-param name="key">month_january</xsl:with-param></xsl:call-template></xsl:when>
6230
- <xsl:when test="$month = '02'"><xsl:call-template name="getLocalizedString"><xsl:with-param name="key">month_february</xsl:with-param></xsl:call-template></xsl:when>
6231
- <xsl:when test="$month = '03'"><xsl:call-template name="getLocalizedString"><xsl:with-param name="key">month_march</xsl:with-param></xsl:call-template></xsl:when>
6232
- <xsl:when test="$month = '04'"><xsl:call-template name="getLocalizedString"><xsl:with-param name="key">month_april</xsl:with-param></xsl:call-template></xsl:when>
6233
- <xsl:when test="$month = '05'"><xsl:call-template name="getLocalizedString"><xsl:with-param name="key">month_may</xsl:with-param></xsl:call-template></xsl:when>
6234
- <xsl:when test="$month = '06'"><xsl:call-template name="getLocalizedString"><xsl:with-param name="key">month_june</xsl:with-param></xsl:call-template></xsl:when>
6235
- <xsl:when test="$month = '07'"><xsl:call-template name="getLocalizedString"><xsl:with-param name="key">month_july</xsl:with-param></xsl:call-template></xsl:when>
6236
- <xsl:when test="$month = '08'"><xsl:call-template name="getLocalizedString"><xsl:with-param name="key">month_august</xsl:with-param></xsl:call-template></xsl:when>
6237
- <xsl:when test="$month = '09'"><xsl:call-template name="getLocalizedString"><xsl:with-param name="key">month_september</xsl:with-param></xsl:call-template></xsl:when>
6238
- <xsl:when test="$month = '10'"><xsl:call-template name="getLocalizedString"><xsl:with-param name="key">month_october</xsl:with-param></xsl:call-template></xsl:when>
6239
- <xsl:when test="$month = '11'"><xsl:call-template name="getLocalizedString"><xsl:with-param name="key">month_november</xsl:with-param></xsl:call-template></xsl:when>
6240
- <xsl:when test="$month = '12'"><xsl:call-template name="getLocalizedString"><xsl:with-param name="key">month_december</xsl:with-param></xsl:call-template></xsl:when>
6241
- </xsl:choose>
6318
+ <xsl:variable name="monthStr_localized">
6319
+ <xsl:if test="normalize-space($monthStr) != ''"><xsl:call-template name="getLocalizedString"><xsl:with-param name="key">month_<xsl:value-of select="$monthStr"/></xsl:with-param></xsl:call-template></xsl:if>
6242
6320
  </xsl:variable>
6243
6321
  <xsl:variable name="result">
6244
6322
  <xsl:choose>
6245
6323
  <xsl:when test="$format = 'ddMMyyyy'">
6246
6324
  <xsl:if test="$day != ''"><xsl:value-of select="number($day)"/></xsl:if>
6247
6325
  <xsl:text> </xsl:text>
6248
- <xsl:value-of select="normalize-space(concat($monthStr, ' ' , $year))"/>
6326
+ <xsl:value-of select="normalize-space(concat($monthStr_localized, ' ' , $year))"/>
6249
6327
  </xsl:when>
6250
6328
  <xsl:when test="$format = 'ddMM'">
6251
6329
  <xsl:if test="$day != ''"><xsl:value-of select="number($day)"/></xsl:if>
6252
- <xsl:text> </xsl:text><xsl:value-of select="$monthStr"/>
6330
+ <xsl:text> </xsl:text><xsl:value-of select="$monthStr_localized"/>
6253
6331
  </xsl:when>
6254
6332
  <xsl:when test="$format = 'short' or $day = ''">
6255
- <xsl:value-of select="normalize-space(concat($monthStr, ' ', $year))"/>
6333
+ <xsl:value-of select="normalize-space(concat($monthStr_localized, ' ', $year))"/>
6256
6334
  </xsl:when>
6257
6335
  <xsl:otherwise>
6258
- <xsl:value-of select="normalize-space(concat($monthStr, ' ', $day, ', ' , $year))"/>
6336
+ <xsl:value-of select="normalize-space(concat($monthStr_localized, ' ', $day, ', ' , $year))"/>
6259
6337
  </xsl:otherwise>
6260
6338
  </xsl:choose>
6261
6339
  </xsl:variable>
@@ -6307,14 +6385,9 @@
6307
6385
  <dc:title>
6308
6386
  <xsl:variable name="title">
6309
6387
  <xsl:for-each select="(//*[contains(local-name(), '-standard')])[1]/*[local-name() = 'bibdata']">
6310
-
6311
-
6312
-
6313
-
6314
- <xsl:value-of select="*[local-name() = 'title'][@language = $lang]"/>
6315
-
6316
-
6317
6388
 
6389
+ <xsl:value-of select="*[local-name() = 'title'][@language = $lang]"/>
6390
+
6318
6391
  </xsl:for-each>
6319
6392
  </xsl:variable>
6320
6393
  <xsl:choose>
@@ -6329,21 +6402,18 @@
6329
6402
  <dc:creator>
6330
6403
  <xsl:for-each select="(//*[contains(local-name(), '-standard')])[1]/*[local-name() = 'bibdata']">
6331
6404
 
6332
- <xsl:for-each select="*[local-name() = 'contributor'][*[local-name() = 'role']/@type='author']">
6333
- <xsl:value-of select="*[local-name() = 'organization']/*[local-name() = 'name']"/>
6334
- <xsl:if test="position() != last()">; </xsl:if>
6335
- </xsl:for-each>
6336
-
6337
-
6338
-
6405
+ <xsl:for-each select="*[local-name() = 'contributor'][*[local-name() = 'role']/@type='author']">
6406
+ <xsl:value-of select="*[local-name() = 'organization']/*[local-name() = 'name']"/>
6407
+ <xsl:if test="position() != last()">; </xsl:if>
6408
+ </xsl:for-each>
6409
+
6339
6410
  </xsl:for-each>
6340
6411
  </dc:creator>
6341
6412
  <dc:description>
6342
6413
  <xsl:variable name="abstract">
6343
6414
 
6344
- <xsl:copy-of select="//*[contains(local-name(), '-standard')]/*[local-name() = 'preface']/*[local-name() = 'abstract']//text()"/>
6345
-
6346
-
6415
+ <xsl:copy-of select="//*[contains(local-name(), '-standard')]/*[local-name() = 'preface']/*[local-name() = 'abstract']//text()"/>
6416
+
6347
6417
  </xsl:variable>
6348
6418
  <xsl:value-of select="normalize-space($abstract)"/>
6349
6419
  </dc:description>
@@ -6363,7 +6433,6 @@
6363
6433
  <xsl:value-of select="../@id"/>
6364
6434
  </xsl:when>
6365
6435
  <xsl:otherwise>
6366
- <!-- <xsl:value-of select="concat(local-name(..), '_', text())"/> -->
6367
6436
  <xsl:value-of select="concat(generate-id(..), '_', text())"/>
6368
6437
  </xsl:otherwise>
6369
6438
  </xsl:choose>
@@ -6389,9 +6458,6 @@
6389
6458
  <xsl:when test="ancestor::*[local-name() = 'preface']">
6390
6459
  <xsl:value-of select="$level_total - 2"/>
6391
6460
  </xsl:when>
6392
- <!-- <xsl:when test="parent::*[local-name() = 'sections']">
6393
- <xsl:value-of select="$level_total - 1"/>
6394
- </xsl:when> -->
6395
6461
  <xsl:when test="ancestor::*[local-name() = 'sections']">
6396
6462
  <xsl:value-of select="$level_total - 1"/>
6397
6463
  </xsl:when>
@@ -6581,7 +6647,6 @@
6581
6647
  <xsl:value-of select="$key_"/>
6582
6648
  </xsl:otherwise>
6583
6649
  </xsl:choose>
6584
-
6585
6650
  </xsl:template><xsl:template name="setTrackChangesStyles">
6586
6651
  <xsl:param name="isAdded"/>
6587
6652
  <xsl:param name="isDeleted"/>
@@ -6604,7 +6669,6 @@
6604
6669
  <xsl:if test="local-name() = 'table'">
6605
6670
  <xsl:attribute name="background-color">rgb(255, 185, 185)</xsl:attribute>
6606
6671
  </xsl:if>
6607
- <!-- <xsl:attribute name="color"><xsl:value-of select="$color-deleted-text"/></xsl:attribute> -->
6608
6672
  <xsl:attribute name="padding">2mm</xsl:attribute>
6609
6673
  </xsl:if>
6610
6674
  </xsl:otherwise>
@@ -6624,15 +6688,18 @@
6624
6688
  </xsl:choose>
6625
6689
  </xsl:template><xsl:template name="setTextAlignment">
6626
6690
  <xsl:param name="default">left</xsl:param>
6691
+ <xsl:variable name="align" select="normalize-space(@align)"/>
6627
6692
  <xsl:attribute name="text-align">
6628
6693
  <xsl:choose>
6629
- <xsl:when test="@align and not(@align = 'indent')"><xsl:value-of select="@align"/></xsl:when>
6694
+ <xsl:when test="$lang = 'ar' and $align = 'left'">start</xsl:when>
6695
+ <xsl:when test="$lang = 'ar' and $align = 'right'">end</xsl:when>
6696
+ <xsl:when test="$align != '' and not($align = 'indent')"><xsl:value-of select="$align"/></xsl:when>
6630
6697
  <xsl:when test="ancestor::*[local-name() = 'td']/@align"><xsl:value-of select="ancestor::*[local-name() = 'td']/@align"/></xsl:when>
6631
6698
  <xsl:when test="ancestor::*[local-name() = 'th']/@align"><xsl:value-of select="ancestor::*[local-name() = 'th']/@align"/></xsl:when>
6632
6699
  <xsl:otherwise><xsl:value-of select="$default"/></xsl:otherwise>
6633
6700
  </xsl:choose>
6634
6701
  </xsl:attribute>
6635
- <xsl:if test="@align = 'indent'">
6702
+ <xsl:if test="$align = 'indent'">
6636
6703
  <xsl:attribute name="margin-left">7mm</xsl:attribute>
6637
6704
  </xsl:if>
6638
6705
  </xsl:template><xsl:template name="number-to-words">