metanorma-ogc 2.0.0 → 2.0.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -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">