metanorma-iso 2.4.5 → 2.4.7

Sign up to get free protection for your applications and to get access to all the features.
@@ -517,13 +517,13 @@
517
517
  <xsl:when test="$stage-abbreviation != ''">
518
518
  <fo:page-sequence master-reference="cover-page-publishedISO" force-page-count="no-force">
519
519
  <fo:static-content flow-name="cover-page-footer" font-size="10pt">
520
- <fo:table table-layout="fixed" width="100%">
520
+ <fo:table table-layout="fixed" width="100%" role="SKIP">
521
521
  <fo:table-column column-width="52mm"/>
522
522
  <fo:table-column column-width="7.5mm"/>
523
523
  <fo:table-column column-width="112.5mm"/>
524
- <fo:table-body>
525
- <fo:table-row>
526
- <fo:table-cell font-size="6.5pt" text-align="justify" display-align="after" padding-bottom="8mm">
524
+ <fo:table-body role="SKIP">
525
+ <fo:table-row role="SKIP">
526
+ <fo:table-cell font-size="6.5pt" text-align="justify" display-align="after" padding-bottom="8mm" role="SKIP">
527
527
  <xsl:if test="$stage-abbreviation = 'DAmd' or $stage-abbreviation = 'DAM'">
528
528
  <xsl:attribute name="font-size">7pt</xsl:attribute>
529
529
  </xsl:if>
@@ -555,11 +555,11 @@
555
555
  </xsl:if>
556
556
  </fo:block>
557
557
  </fo:table-cell>
558
- <fo:table-cell>
559
- <fo:block> </fo:block>
558
+ <fo:table-cell role="SKIP">
559
+ <fo:block role="SKIP"><fo:wrapper role="artifact"> </fo:wrapper></fo:block>
560
560
  </fo:table-cell>
561
- <fo:table-cell display-align="after" padding-bottom="3mm">
562
- <fo:block-container height="22.5mm" display-align="center">
561
+ <fo:table-cell display-align="after" padding-bottom="3mm" role="SKIP">
562
+ <fo:block-container height="22.5mm" display-align="center" role="SKIP">
563
563
 
564
564
  <xsl:variable name="iso-fast-track">false</xsl:variable>
565
565
 
@@ -577,7 +577,7 @@
577
577
  </xsl:for-each>
578
578
  </xsl:variable>
579
579
  <xsl:if test="normalize-space($text) != ''">
580
- <fo:block-container margin-left="1mm"> <!-- margin-bottom="7mm" margin-top="-15mm" -->
580
+ <fo:block-container margin-left="1mm" role="SKIP"> <!-- margin-bottom="7mm" margin-top="-15mm" -->
581
581
  <fo:block font-size="9pt" border="0.5pt solid black" fox:border-radius="5pt" padding-left="2mm" padding-top="2mm" padding-bottom="2mm">
582
582
  <!-- <xsl:text>This document is circulated as received from the committee secretariat.</xsl:text> -->
583
583
  <xsl:copy-of select="xalan:nodeset($text)/node()"/>
@@ -586,9 +586,9 @@
586
586
  </xsl:if>
587
587
 
588
588
  <xsl:if test="normalize-space($iso-fast-track) = 'true'">
589
- <fo:block-container space-before="2mm">
590
- <fo:block background-color="rgb(77,77,77)" color="white" fox:border-radius="5pt" text-align="center" display-align="center" font-size="19pt" font-weight="bold">
591
- <fo:block-container height="13.2mm">
589
+ <fo:block-container space-before="2mm" role="SKIP">
590
+ <fo:block background-color="rgb(77,77,77)" color="white" fox:border-radius="5pt" text-align="center" display-align="center" font-size="19pt" font-weight="bold" role="SKIP">
591
+ <fo:block-container height="13.2mm" role="SKIP">
592
592
  <fo:block>
593
593
  <xsl:text>FAST TRACK PROCEDURE</xsl:text>
594
594
  </fo:block>
@@ -599,14 +599,14 @@
599
599
  </xsl:if>
600
600
  </fo:block>
601
601
  </fo:block-container>
602
- <fo:block>
602
+ <fo:block role="SKIP">
603
603
  <xsl:call-template name="insertTripleLine"/>
604
- <fo:table table-layout="fixed" width="100%"> <!-- margin-bottom="3mm" -->
604
+ <fo:table table-layout="fixed" width="100%" role="SKIP"> <!-- margin-bottom="3mm" -->
605
605
  <fo:table-column column-width="50%"/>
606
606
  <fo:table-column column-width="50%"/>
607
- <fo:table-body>
608
- <fo:table-row height="34mm">
609
- <fo:table-cell display-align="center">
607
+ <fo:table-body role="SKIP">
608
+ <fo:table-row height="34mm" role="SKIP">
609
+ <fo:table-cell display-align="center" role="SKIP">
610
610
 
611
611
  <xsl:if test="$copyrightAbbrIEEE != ''">
612
612
  <xsl:attribute name="display-align">before</xsl:attribute>
@@ -638,7 +638,7 @@
638
638
  <xsl:otherwise/>
639
639
  </xsl:choose>
640
640
  <xsl:if test="position() != last()">
641
- <fo:inline padding-right="1mm"> </fo:inline>
641
+ <fo:inline padding-right="1mm" role="SKIP"> </fo:inline>
642
642
  </xsl:if>
643
643
  </xsl:for-each>
644
644
  <xsl:if test="$copyrightAbbrIEEE != ''">
@@ -648,8 +648,8 @@
648
648
  </xsl:if>
649
649
  </fo:block>
650
650
  </fo:table-cell>
651
- <fo:table-cell display-align="center">
652
- <fo:block text-align="right">
651
+ <fo:table-cell display-align="center" role="SKIP">
652
+ <fo:block text-align="right" role="SKIP">
653
653
  <!-- Reference number -->
654
654
  <fo:block>
655
655
  <xsl:call-template name="getLocalizedString">
@@ -686,7 +686,7 @@
686
686
  <!-- COVER PAGE for DIS document only -->
687
687
  <xsl:when test="$stage-abbreviation = 'DIS' or $stage-abbreviation = 'DAmd' or $stage-abbreviation = 'DAM'">
688
688
  <fo:flow flow-name="xsl-region-body">
689
- <fo:block-container>
689
+ <fo:block-container role="SKIP">
690
690
  <fo:block margin-top="-1mm" font-size="20pt" text-align="right">
691
691
  <xsl:value-of select="$stage-fullname-uppercased"/>
692
692
  </fo:block>
@@ -753,9 +753,9 @@
753
753
  </fo:table-body>
754
754
  </fo:table>
755
755
 
756
- <fo:block-container line-height="1.1" margin-top="3mm">
756
+ <fo:block-container line-height="1.1" margin-top="3mm" role="SKIP">
757
757
  <xsl:call-template name="insertTripleLine"/>
758
- <fo:block margin-right="5mm">
758
+ <fo:block margin-right="5mm" role="SKIP">
759
759
  <fo:block font-size="18pt" font-weight="bold" margin-top="6pt" role="H1">
760
760
 
761
761
  <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-intro']"/>
@@ -775,7 +775,7 @@
775
775
  <xsl:for-each select="xalan:nodeset($lang_other)/lang">
776
776
  <xsl:variable name="lang_other" select="."/>
777
777
 
778
- <fo:block font-size="12pt"><xsl:value-of select="$linebreak"/></fo:block>
778
+ <fo:block font-size="12pt" role="SKIP"><xsl:value-of select="$linebreak"/></fo:block>
779
779
  <fo:block font-size="11pt" font-style="italic" line-height="1.1" role="H1">
780
780
 
781
781
  <!-- Example: title-intro fr -->
@@ -809,14 +809,14 @@
809
809
 
810
810
  <!-- COVER PAGE for all documents except DIS, DAmd and DAM -->
811
811
  <fo:flow flow-name="xsl-region-body">
812
- <fo:block-container>
813
- <fo:table table-layout="fixed" width="100%" font-size="24pt" line-height="1"> <!-- margin-bottom="35mm" -->
812
+ <fo:block-container role="SKIP">
813
+ <fo:table table-layout="fixed" width="100%" font-size="24pt" line-height="1" role="SKIP"> <!-- margin-bottom="35mm" -->
814
814
  <fo:table-column column-width="59.5mm"/>
815
815
  <fo:table-column column-width="67.5mm"/>
816
816
  <fo:table-column column-width="45.5mm"/>
817
- <fo:table-body>
818
- <fo:table-row>
819
- <fo:table-cell>
817
+ <fo:table-body role="SKIP">
818
+ <fo:table-row role="SKIP">
819
+ <fo:table-cell role="SKIP">
820
820
  <fo:block font-size="18pt">
821
821
 
822
822
  <xsl:value-of select="translate($stagename-header-coverpage, ' ', $linebreak)"/>
@@ -840,7 +840,7 @@
840
840
  </xsl:variable>
841
841
  <xsl:variable name="font-size"><xsl:if test="string-length($lastWord) &gt;= 12">90%</xsl:if></xsl:variable> <!-- to prevent overlapping 'NORME INTERNATIONALE' to number -->
842
842
 
843
- <fo:table-cell>
843
+ <fo:table-cell role="SKIP">
844
844
  <fo:block text-align="left">
845
845
  <xsl:choose>
846
846
  <xsl:when test="$stage-abbreviation = 'FDAmd' or $stage-abbreviation = 'FDAM'"><xsl:value-of select="$doctype_uppercased"/></xsl:when>
@@ -856,7 +856,7 @@
856
856
  </xsl:choose>
857
857
  </fo:block>
858
858
  </fo:table-cell>
859
- <fo:table-cell>
859
+ <fo:table-cell role="SKIP">
860
860
  <fo:block text-align="right" font-weight="bold" margin-bottom="13mm">
861
861
  <xsl:if test="$font-size != ''">
862
862
  <xsl:attribute name="font-size"><xsl:value-of select="$font-size"/></xsl:attribute>
@@ -865,8 +865,8 @@
865
865
  </fo:block>
866
866
  </fo:table-cell>
867
867
  </fo:table-row>
868
- <fo:table-row height="25mm">
869
- <fo:table-cell number-columns-spanned="3" font-size="10pt" line-height="1.2">
868
+ <fo:table-row height="25mm" role="SKIP">
869
+ <fo:table-cell number-columns-spanned="3" font-size="10pt" line-height="1.2" role="SKIP">
870
870
  <fo:block text-align="right">
871
871
  <xsl:if test="$stage-abbreviation = 'PRF' or $stage-abbreviation = 'IS' or $stage-abbreviation = 'D' or $stage-abbreviation = 'published'">
872
872
  <xsl:call-template name="printEdition"/>
@@ -893,7 +893,7 @@
893
893
  <!-- <xsl:value-of select="$linebreak"/>
894
894
  <xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:version/iso:revision-date"/> -->
895
895
  <xsl:if test="$doctype = 'amendment' and not($stage-abbreviation = 'FDAmd' or $stage-abbreviation = 'FDAM')">
896
- <fo:block text-align="right" margin-right="0.5mm">
896
+ <fo:block text-align="right" margin-right="0.5mm" role="SKIP">
897
897
  <fo:block font-weight="bold" margin-top="4pt" role="H1">
898
898
  <xsl:value-of select="$doctype_uppercased"/>
899
899
  <xsl:text> </xsl:text>
@@ -911,22 +911,22 @@
911
911
  </xsl:if>
912
912
  </fo:table-cell>
913
913
  </fo:table-row>
914
- <fo:table-row height="17mm">
915
- <fo:table-cell><fo:block/></fo:table-cell>
916
- <fo:table-cell number-columns-spanned="2" font-size="10pt" line-height="1.2" display-align="center">
917
- <fo:block>
914
+ <fo:table-row height="17mm" role="SKIP">
915
+ <fo:table-cell role="SKIP"><fo:block role="SKIP"/></fo:table-cell>
916
+ <fo:table-cell number-columns-spanned="2" font-size="10pt" line-height="1.2" display-align="center" role="SKIP">
917
+ <fo:block role="SKIP">
918
918
  <xsl:if test="$stage-abbreviation = 'NWIP' or $stage-abbreviation = 'NP' or $stage-abbreviation = 'PWI' or $stage-abbreviation = 'AWI' or $stage-abbreviation = 'WD' or $stage-abbreviation = 'CD' or $stage-abbreviation = 'FDIS'">
919
- <fo:table table-layout="fixed" width="100%">
919
+ <fo:table table-layout="fixed" width="100%" role="SKIP">
920
920
  <fo:table-column column-width="50%"/>
921
921
  <fo:table-column column-width="50%"/>
922
- <fo:table-body>
923
- <fo:table-row>
924
- <fo:table-cell>
922
+ <fo:table-body role="SKIP">
923
+ <fo:table-row role="SKIP">
924
+ <fo:table-cell role="SKIP">
925
925
  <fo:block>
926
926
  <xsl:copy-of select="$editorialgroup"/>
927
927
  </fo:block>
928
928
  </fo:table-cell>
929
- <fo:table-cell>
929
+ <fo:table-cell role="SKIP">
930
930
  <fo:block>
931
931
  <xsl:copy-of select="$secretariat"/>
932
932
  </fo:block>
@@ -942,17 +942,17 @@
942
942
  </fo:table-body>
943
943
  </fo:table>
944
944
 
945
- <fo:table table-layout="fixed" width="100%">
945
+ <fo:table table-layout="fixed" width="100%" role="SKIP">
946
946
  <fo:table-column column-width="52mm"/>
947
947
  <fo:table-column column-width="7.5mm"/>
948
948
  <fo:table-column column-width="112.5mm"/>
949
- <fo:table-body>
950
- <fo:table-row> <!-- border="1pt solid black" height="150mm" -->
951
- <fo:table-cell font-size="11pt">
952
- <fo:block>
949
+ <fo:table-body role="SKIP">
950
+ <fo:table-row role="SKIP"> <!-- border="1pt solid black" height="150mm" -->
951
+ <fo:table-cell font-size="11pt" role="SKIP">
952
+ <fo:block role="SKIP">
953
953
  <xsl:if test="$stage-abbreviation = 'FDIS' or $stage-abbreviation = 'FDAmd' or $stage-abbreviation = 'FDAM'">
954
- <fo:block-container border="0.5mm solid black" width="51mm">
955
- <fo:block margin="2mm">
954
+ <fo:block-container border="0.5mm solid black" width="51mm" role="SKIP">
955
+ <fo:block margin="2mm" role="SKIP">
956
956
  <fo:block margin-bottom="8pt"><xsl:copy-of select="$editorialgroup"/></fo:block>
957
957
  <fo:block margin-bottom="6pt"><xsl:copy-of select="$secretariat"/></fo:block>
958
958
  <fo:block margin-bottom="6pt">Voting begins on:<xsl:value-of select="$linebreak"/>
@@ -980,13 +980,13 @@
980
980
  </xsl:if>
981
981
  </fo:block>
982
982
  </fo:table-cell>
983
- <fo:table-cell>
984
- <fo:block> </fo:block>
983
+ <fo:table-cell role="SKIP">
984
+ <fo:block role="SKIP"><fo:wrapper role="artifact"> </fo:wrapper></fo:block>
985
985
  </fo:table-cell>
986
- <fo:table-cell>
986
+ <fo:table-cell role="SKIP">
987
987
  <xsl:call-template name="insertTripleLine"/>
988
- <fo:block-container line-height="1.1">
989
- <fo:block margin-right="3.5mm">
988
+ <fo:block-container line-height="1.1" role="SKIP">
989
+ <fo:block margin-right="3.5mm" role="SKIP">
990
990
  <fo:block font-size="18pt" font-weight="bold" margin-top="12pt" role="H1">
991
991
 
992
992
  <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-intro']"/>
@@ -1007,7 +1007,7 @@
1007
1007
  <xsl:for-each select="xalan:nodeset($lang_other)/lang">
1008
1008
  <xsl:variable name="lang_other" select="."/>
1009
1009
 
1010
- <fo:block font-size="12pt"><xsl:value-of select="$linebreak"/></fo:block>
1010
+ <fo:block font-size="12pt" role="SKIP"><xsl:value-of select="$linebreak"/></fo:block>
1011
1011
  <fo:block font-size="11pt" font-style="italic" line-height="1.1" role="H1">
1012
1012
 
1013
1013
  <!-- Example: title-intro fr -->
@@ -1040,8 +1040,8 @@
1040
1040
  </fo:table-body>
1041
1041
  </fo:table>
1042
1042
  </fo:block-container>
1043
- <fo:block-container position="absolute" left="60mm" top="222mm" height="25mm" display-align="after">
1044
- <fo:block margin-bottom="2mm">
1043
+ <fo:block-container position="absolute" left="60mm" top="222mm" height="25mm" display-align="after" role="SKIP">
1044
+ <fo:block margin-bottom="2mm" role="SKIP">
1045
1045
  <xsl:if test="$stage-abbreviation = 'PRF'">
1046
1046
  <fo:block font-size="36pt" font-weight="bold" margin-left="1mm">
1047
1047
  <xsl:call-template name="add-letter-spacing">
@@ -1063,26 +1063,26 @@
1063
1063
  <fo:page-sequence master-reference="cover-page-published" force-page-count="no-force">
1064
1064
  <fo:static-content flow-name="cover-page-footer" font-size="10pt">
1065
1065
  <xsl:call-template name="insertTripleLine"/>
1066
- <fo:table table-layout="fixed" width="100%" margin-bottom="3mm">
1066
+ <fo:table table-layout="fixed" width="100%" margin-bottom="3mm" role="SKIP">
1067
1067
  <fo:table-column column-width="50%"/>
1068
1068
  <fo:table-column column-width="50%"/>
1069
- <fo:table-body>
1070
- <fo:table-row height="32mm">
1071
- <fo:table-cell display-align="center">
1069
+ <fo:table-body role="SKIP">
1070
+ <fo:table-row height="32mm" role="SKIP">
1071
+ <fo:table-cell display-align="center" role="SKIP">
1072
1072
  <fo:block text-align="left">
1073
1073
  <fo:external-graphic src="{concat('data:image/png;base64,', normalize-space($Image-ISO-Logo))}" width="21mm" content-height="21mm" content-width="scale-to-fit" scaling="uniform" fox:alt-text="Image {@alt}"/>
1074
1074
  </fo:block>
1075
1075
  </fo:table-cell>
1076
- <fo:table-cell display-align="center">
1077
- <fo:block text-align="right">
1076
+ <fo:table-cell display-align="center" role="SKIP">
1077
+ <fo:block text-align="right" role="SKIP">
1078
1078
  <fo:block>
1079
1079
  <xsl:call-template name="getLocalizedString">
1080
1080
  <xsl:with-param name="key">reference_number</xsl:with-param>
1081
1081
  </xsl:call-template>
1082
1082
  </fo:block>
1083
1083
  <fo:block><xsl:value-of select="$ISOname"/></fo:block>
1084
- <fo:block> </fo:block>
1085
- <fo:block> </fo:block>
1084
+ <fo:block role="SKIP"> </fo:block>
1085
+ <fo:block role="SKIP"> </fo:block>
1086
1086
  <fo:block><fo:inline font-size="9pt">©</fo:inline><xsl:value-of select="concat(' ', $copyrightAbbr, ' ', $copyrightYear)"/>
1087
1087
  <xsl:if test="$copyrightAbbrIEEE != ''">
1088
1088
  <xsl:value-of select="$linebreak"/>
@@ -1097,25 +1097,25 @@
1097
1097
  </fo:table>
1098
1098
  </fo:static-content>
1099
1099
  <fo:flow flow-name="xsl-region-body">
1100
- <fo:block-container>
1101
- <fo:table table-layout="fixed" width="100%" font-size="24pt" line-height="1" margin-bottom="35mm">
1100
+ <fo:block-container role="SKIP">
1101
+ <fo:table table-layout="fixed" width="100%" font-size="24pt" line-height="1" margin-bottom="35mm" role="SKIP">
1102
1102
  <fo:table-column column-width="60%"/>
1103
1103
  <fo:table-column column-width="40%"/>
1104
- <fo:table-body>
1105
- <fo:table-row>
1106
- <fo:table-cell>
1104
+ <fo:table-body role="SKIP">
1105
+ <fo:table-row role="SKIP">
1106
+ <fo:table-cell role="SKIP">
1107
1107
  <fo:block text-align="left">
1108
1108
  <xsl:value-of select="$doctype_uppercased"/>
1109
1109
  </fo:block>
1110
1110
  </fo:table-cell>
1111
- <fo:table-cell>
1111
+ <fo:table-cell role="SKIP">
1112
1112
  <fo:block text-align="right" font-weight="bold" margin-bottom="13mm">
1113
1113
  <xsl:value-of select="$docidentifierISO_with_break"/>
1114
1114
  </fo:block>
1115
1115
  </fo:table-cell>
1116
1116
  </fo:table-row>
1117
- <fo:table-row>
1118
- <fo:table-cell number-columns-spanned="2" font-size="10pt" line-height="1.2">
1117
+ <fo:table-row role="SKIP">
1118
+ <fo:table-cell number-columns-spanned="2" font-size="10pt" line-height="1.2" role="SKIP">
1119
1119
  <fo:block text-align="right">
1120
1120
  <xsl:call-template name="printEdition"/>
1121
1121
  <xsl:value-of select="$linebreak"/>
@@ -1126,8 +1126,8 @@
1126
1126
  </fo:table>
1127
1127
 
1128
1128
  <xsl:call-template name="insertTripleLine"/>
1129
- <fo:block-container line-height="1.1">
1130
- <fo:block margin-right="40mm">
1129
+ <fo:block-container line-height="1.1" role="SKIP">
1130
+ <fo:block margin-right="40mm" role="SKIP">
1131
1131
  <fo:block font-size="18pt" font-weight="bold" margin-top="12pt" role="H1">
1132
1132
 
1133
1133
  <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-intro']"/>
@@ -1143,7 +1143,7 @@
1143
1143
  <xsl:for-each select="xalan:nodeset($lang_other)/lang">
1144
1144
  <xsl:variable name="lang_other" select="."/>
1145
1145
 
1146
- <fo:block font-size="12pt"><xsl:value-of select="$linebreak"/></fo:block>
1146
+ <fo:block font-size="12pt" role="SKIP"><xsl:value-of select="$linebreak"/></fo:block>
1147
1147
  <fo:block font-size="11pt" font-style="italic" line-height="1.1" role="H1">
1148
1148
 
1149
1149
  <!-- Example: title-intro fr -->
@@ -1173,7 +1173,7 @@
1173
1173
  </fo:block-container>
1174
1174
  </fo:static-content>
1175
1175
  <fo:flow flow-name="xsl-region-body">
1176
- <fo:block-container text-align="right">
1176
+ <fo:block-container text-align="right" role="SKIP">
1177
1177
  <xsl:choose>
1178
1178
  <xsl:when test="/iso:iso-standard/iso:bibdata/iso:docidentifier[@type = 'iso-tc']">
1179
1179
  <!-- 17301 -->
@@ -1213,7 +1213,7 @@
1213
1213
  </fo:block>
1214
1214
 
1215
1215
  </fo:block-container>
1216
- <fo:block-container font-size="16pt">
1216
+ <fo:block-container font-size="16pt" role="SKIP">
1217
1217
  <!-- Information and documentation — Codes for transcription systems -->
1218
1218
  <fo:block font-weight="bold" role="H1">
1219
1219
 
@@ -1230,7 +1230,7 @@
1230
1230
  <xsl:for-each select="xalan:nodeset($lang_other)/lang">
1231
1231
  <xsl:variable name="lang_other" select="."/>
1232
1232
 
1233
- <fo:block font-size="12pt"><xsl:value-of select="$linebreak"/></fo:block>
1233
+ <fo:block font-size="12pt" role="SKIP"><xsl:value-of select="$linebreak"/></fo:block>
1234
1234
  <fo:block role="H1">
1235
1235
 
1236
1236
  <!-- Example: title-intro fr -->
@@ -1247,8 +1247,8 @@
1247
1247
  </xsl:for-each>
1248
1248
 
1249
1249
  </fo:block-container>
1250
- <fo:block font-size="11pt" margin-bottom="8pt"><xsl:value-of select="$linebreak"/></fo:block>
1251
- <fo:block-container font-size="40pt" text-align="center" margin-bottom="12pt" border="0.5pt solid black">
1250
+ <fo:block font-size="11pt" margin-bottom="8pt" role="SKIP"><xsl:value-of select="$linebreak"/></fo:block>
1251
+ <fo:block-container font-size="40pt" text-align="center" margin-bottom="12pt" border="0.5pt solid black" role="SKIP">
1252
1252
  <xsl:variable name="stage-title" select="substring-after(substring-before($docidentifierISO, ' '), '/')"/>
1253
1253
  <xsl:choose>
1254
1254
  <xsl:when test="normalize-space($stage-title) != ''">
@@ -1256,14 +1256,14 @@
1256
1256
  </xsl:when>
1257
1257
  <xsl:otherwise>
1258
1258
  <xsl:attribute name="border">0pt solid white</xsl:attribute>
1259
- <fo:block> </fo:block>
1259
+ <fo:block role="SKIP"> </fo:block>
1260
1260
  </xsl:otherwise>
1261
1261
  </xsl:choose>
1262
1262
  </fo:block-container>
1263
- <fo:block><xsl:value-of select="$linebreak"/></fo:block>
1263
+ <fo:block role="SKIP"><xsl:value-of select="$linebreak"/></fo:block>
1264
1264
 
1265
1265
  <xsl:if test="/iso:iso-standard/iso:boilerplate/iso:license-statement">
1266
- <fo:block-container font-size="10pt" margin-top="12pt" margin-bottom="6pt" border="0.5pt solid black">
1266
+ <fo:block-container font-size="10pt" margin-top="12pt" margin-bottom="6pt" border="0.5pt solid black" role="SKIP">
1267
1267
  <fo:block padding-top="1mm">
1268
1268
  <xsl:apply-templates select="/iso:iso-standard/iso:boilerplate/iso:license-statement"/>
1269
1269
  </fo:block>
@@ -1300,13 +1300,13 @@
1300
1300
  <fo:flow flow-name="xsl-region-body" line-height="115%">
1301
1301
  <xsl:if test="/iso:iso-standard/iso:boilerplate/iso:copyright-statement">
1302
1302
 
1303
- <fo:block-container height="252mm" display-align="after">
1303
+ <fo:block-container height="252mm" display-align="after" role="SKIP">
1304
1304
  <!-- <fo:block margin-bottom="3mm">
1305
1305
  <fo:external-graphic src="{concat('data:image/png;base64,', normalize-space($Image-Attention))}" width="14mm" content-height="13mm" content-width="scale-to-fit" scaling="uniform" fox:alt-text="Image {@alt}"/>
1306
1306
  <fo:inline padding-left="6mm" font-size="12pt" font-weight="bold"></fo:inline>
1307
1307
  </fo:block> -->
1308
- <fo:block line-height="90%">
1309
- <fo:block font-size="9pt" text-align="justify">
1308
+ <fo:block line-height="90%" role="SKIP">
1309
+ <fo:block font-size="9pt" text-align="justify" role="SKIP">
1310
1310
  <xsl:apply-templates select="/iso:iso-standard/iso:boilerplate/iso:copyright-statement"/>
1311
1311
  </fo:block>
1312
1312
  </fo:block>
@@ -1339,9 +1339,9 @@
1339
1339
  <xsl:value-of select="$title-en"/>
1340
1340
  </fo:block>
1341
1341
  -->
1342
- <fo:block font-size="18pt" font-weight="bold" margin-top="40pt" margin-bottom="20pt" line-height="1.1">
1342
+ <fo:block font-size="18pt" font-weight="bold" margin-top="40pt" margin-bottom="20pt" line-height="1.1" role="H1">
1343
1343
 
1344
- <fo:block role="H1">
1344
+ <fo:block role="SKIP">
1345
1345
 
1346
1346
  <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-intro']"/>
1347
1347
 
@@ -1353,7 +1353,7 @@
1353
1353
  </xsl:apply-templates>
1354
1354
 
1355
1355
  </fo:block>
1356
- <fo:block role="H1">
1356
+ <fo:block role="SKIP">
1357
1357
  <xsl:apply-templates select="/iso:iso-standard/iso:bibdata/iso:title[@language = $lang and @type = 'title-part']/node()"/>
1358
1358
  </fo:block>
1359
1359
 
@@ -1377,7 +1377,7 @@
1377
1377
  </xsl:otherwise>
1378
1378
  </xsl:choose>
1379
1379
 
1380
- <fo:block id="lastBlock" font-size="1pt"> </fo:block>
1380
+ <fo:block id="lastBlock" font-size="1pt" role="SKIP"> </fo:block>
1381
1381
  </fo:block>
1382
1382
 
1383
1383
  </fo:flow>
@@ -1497,9 +1497,13 @@
1497
1497
  <xsl:otherwise>
1498
1498
 
1499
1499
  <fo:block-container font-weight="bold">
1500
+
1501
+ <!-- render 'Contents' outside if role="TOC" -->
1502
+ <xsl:apply-templates select="*[local-name() = 'title']"/>
1503
+
1500
1504
  <fo:block role="TOC">
1501
1505
 
1502
- <xsl:apply-templates/>
1506
+ <xsl:apply-templates select="node()[not(local-name() = 'title')]"/>
1503
1507
 
1504
1508
  <xsl:if test="count(*) = 1 and *[local-name() = 'title']"> <!-- if there isn't user ToC -->
1505
1509
 
@@ -1520,45 +1524,51 @@
1520
1524
  <xsl:if test="@level = 3">
1521
1525
  <xsl:attribute name="margin-top">-0.7pt</xsl:attribute>
1522
1526
  </xsl:if>
1523
- <fo:list-block>
1524
- <xsl:attribute name="margin-left"><xsl:value-of select="$margin-left * (@level - 1)"/>mm</xsl:attribute>
1525
- <xsl:if test="@level &gt;= 2 or @type = 'annex'">
1526
- <xsl:attribute name="font-weight">normal</xsl:attribute>
1527
- </xsl:if>
1528
- <xsl:attribute name="provisional-distance-between-starts">
1529
- <xsl:choose>
1530
- <!-- skip 0 section without subsections -->
1531
- <xsl:when test="@level &gt;= 3"><xsl:value-of select="$margin-left * 1.2"/>mm</xsl:when>
1532
- <xsl:when test="@section != ''"><xsl:value-of select="$margin-left"/>mm</xsl:when>
1533
- <xsl:otherwise>0mm</xsl:otherwise>
1534
- </xsl:choose>
1535
- </xsl:attribute>
1536
- <fo:list-item>
1537
- <fo:list-item-label end-indent="label-end()">
1538
- <fo:block>
1539
- <xsl:value-of select="@section"/>
1540
- </fo:block>
1541
- </fo:list-item-label>
1542
- <fo:list-item-body start-indent="body-start()">
1543
- <fo:block text-align-last="justify" margin-left="12mm" text-indent="-12mm">
1544
- <fo:basic-link internal-destination="{@id}" fox:alt-text="{title}">
1545
-
1546
- <xsl:apply-templates select="title"/>
1547
-
1548
- <fo:inline keep-together.within-line="always">
1549
- <fo:leader font-size="9pt" font-weight="normal" leader-pattern="dots"/>
1550
- <fo:inline>
1551
- <xsl:if test="@level = 1 and @type = 'annex'">
1552
- <xsl:attribute name="font-weight">bold</xsl:attribute>
1553
- </xsl:if>
1554
- <fo:page-number-citation ref-id="{@id}"/>
1527
+
1528
+ <fo:basic-link internal-destination="{@id}" fox:alt-text="{@section} {title}"> <!-- link at this level needs for PDF structure tags -->
1529
+
1530
+ <fo:list-block role="SKIP">
1531
+ <xsl:attribute name="margin-left"><xsl:value-of select="$margin-left * (@level - 1)"/>mm</xsl:attribute>
1532
+ <xsl:if test="@level &gt;= 2 or @type = 'annex'">
1533
+ <xsl:attribute name="font-weight">normal</xsl:attribute>
1534
+ </xsl:if>
1535
+ <xsl:attribute name="provisional-distance-between-starts">
1536
+ <xsl:choose>
1537
+ <!-- skip 0 section without subsections -->
1538
+ <xsl:when test="@level &gt;= 3"><xsl:value-of select="$margin-left * 1.2"/>mm</xsl:when>
1539
+ <xsl:when test="@section != ''"><xsl:value-of select="$margin-left"/>mm</xsl:when>
1540
+ <xsl:otherwise>0mm</xsl:otherwise>
1541
+ </xsl:choose>
1542
+ </xsl:attribute>
1543
+ <fo:list-item role="SKIP">
1544
+ <fo:list-item-label end-indent="label-end()" role="SKIP">
1545
+ <fo:block role="SKIP">
1546
+ <xsl:value-of select="@section"/>
1547
+ </fo:block>
1548
+ </fo:list-item-label>
1549
+ <fo:list-item-body start-indent="body-start()" role="SKIP">
1550
+ <fo:block text-align-last="justify" margin-left="12mm" text-indent="-12mm" role="SKIP">
1551
+ <fo:basic-link internal-destination="{@id}" fox:alt-text="{title}" role="SKIP">
1552
+
1553
+ <xsl:apply-templates select="title"/>
1554
+
1555
+ <fo:inline keep-together.within-line="always" role="SKIP">
1556
+ <fo:leader font-size="9pt" font-weight="normal" leader-pattern="dots"/>
1557
+ <fo:inline role="SKIP">
1558
+ <xsl:if test="@level = 1 and @type = 'annex'">
1559
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
1560
+ </xsl:if>
1561
+ <fo:wrapper role="artifact">
1562
+ <fo:page-number-citation ref-id="{@id}"/>
1563
+ </fo:wrapper>
1564
+ </fo:inline>
1555
1565
  </fo:inline>
1556
- </fo:inline>
1557
- </fo:basic-link>
1558
- </fo:block>
1559
- </fo:list-item-body>
1560
- </fo:list-item>
1561
- </fo:list-block>
1566
+ </fo:basic-link>
1567
+ </fo:block>
1568
+ </fo:list-item-body>
1569
+ </fo:list-item>
1570
+ </fo:list-block>
1571
+ </fo:basic-link>
1562
1572
  </fo:block>
1563
1573
 
1564
1574
  </xsl:for-each>
@@ -1592,16 +1602,16 @@
1592
1602
 
1593
1603
  <xsl:template match="iso:preface/iso:clause[@type = 'toc']/iso:title" priority="3">
1594
1604
  <fo:block text-align-last="justify" font-size="16pt" margin-top="10pt" margin-bottom="18pt">
1595
- <fo:inline font-size="16pt" font-weight="bold" role="H1">
1605
+ <fo:inline font-size="16pt" font-weight="bold" role="SKIP">
1596
1606
  <!-- Contents -->
1597
1607
  <!-- <xsl:call-template name="getLocalizedString">
1598
1608
  <xsl:with-param name="key">table_of_contents</xsl:with-param>
1599
1609
  </xsl:call-template> -->
1600
1610
  <xsl:apply-templates/>
1601
1611
  </fo:inline>
1602
- <fo:inline keep-together.within-line="always">
1612
+ <fo:inline keep-together.within-line="always" role="SKIP">
1603
1613
  <fo:leader leader-pattern="space"/>
1604
- <fo:inline font-weight="normal" font-size="10pt">
1614
+ <fo:inline font-weight="normal" font-size="10pt" role="SKIP">
1605
1615
  <!-- Page -->
1606
1616
  <xsl:call-template name="getLocalizedString">
1607
1617
  <xsl:with-param name="key">locality.page</xsl:with-param>
@@ -1672,18 +1682,18 @@
1672
1682
  </xsl:variable>
1673
1683
  <xsl:choose>
1674
1684
  <xsl:when test="$isMainBody = 'true'">
1675
- <fo:block font-weight="normal" margin-top="12pt" line-height="1.1">
1685
+ <fo:block font-weight="normal" margin-top="12pt" line-height="1.1" role="SKIP">
1676
1686
  <xsl:value-of select="$part-text"/>
1677
1687
  </fo:block>
1678
1688
  </xsl:when>
1679
1689
  <xsl:when test="$isMainLang = 'true'">
1680
- <fo:block font-weight="normal" margin-top="6pt">
1690
+ <fo:block font-weight="normal" margin-top="6pt" role="SKIP">
1681
1691
  <xsl:value-of select="$part-text"/>
1682
1692
  </fo:block>
1683
1693
  </xsl:when>
1684
1694
  <xsl:otherwise>
1685
1695
  <!-- <xsl:value-of select="$linebreak"/> -->
1686
- <fo:block font-size="1pt" margin-top="5pt"> </fo:block>
1696
+ <fo:block font-size="1pt" margin-top="5pt" role="SKIP"> </fo:block>
1687
1697
  <xsl:value-of select="$part-text"/>
1688
1698
  <xsl:text> </xsl:text>
1689
1699
  </xsl:otherwise>
@@ -1707,7 +1717,7 @@
1707
1717
  <xsl:attribute name="margin-right">0mm</xsl:attribute>
1708
1718
  </xsl:if>
1709
1719
 
1710
- <fo:block font-weight="normal" line-height="1.1">
1720
+ <fo:block font-weight="normal" line-height="1.1" role="SKIP">
1711
1721
  <xsl:choose>
1712
1722
  <xsl:when test="$isMainLang = 'false' and $curr_lang = 'fr'">AMENDEMENT</xsl:when>
1713
1723
  <xsl:otherwise><xsl:value-of select="$doctype_uppercased"/></xsl:otherwise>
@@ -1822,7 +1832,7 @@
1822
1832
  <fo:block margin-left="0.5mm" margin-bottom="3mm" role="H1">
1823
1833
  <fo:external-graphic src="{concat('data:image/png;base64,', normalize-space($Image-Attention))}" width="14mm" content-height="13mm" content-width="scale-to-fit" scaling="uniform" fox:alt-text="Image {@alt}"/>
1824
1834
  <!-- <fo:inline padding-left="6mm" font-size="12pt" font-weight="bold">COPYRIGHT PROTECTED DOCUMENT</fo:inline> -->
1825
- <fo:inline padding-left="6mm" font-size="12pt" font-weight="bold"><xsl:apply-templates/></fo:inline>
1835
+ <fo:inline padding-left="6mm" font-size="12pt" font-weight="bold" role="SKIP"><xsl:apply-templates/></fo:inline>
1826
1836
  </fo:block>
1827
1837
  </xsl:template>
1828
1838
 
@@ -1954,7 +1964,7 @@
1954
1964
  </xsl:element>
1955
1965
 
1956
1966
  <xsl:if test="$element-name = 'fo:inline' and not(following-sibling::iso:p)">
1957
- <fo:block> <!-- margin-bottom="12pt" -->
1967
+ <fo:block role="SKIP"> <!-- margin-bottom="12pt" -->
1958
1968
  <xsl:value-of select="$linebreak"/>
1959
1969
  </fo:block>
1960
1970
  </xsl:if>
@@ -2031,12 +2041,18 @@
2031
2041
  <xsl:attribute name="margin-bottom">0pt</xsl:attribute>
2032
2042
  <xsl:attribute name="line-height">0</xsl:attribute>
2033
2043
  </xsl:if>
2044
+ <xsl:if test="$element-name = 'fo:inline'">
2045
+ <xsl:attribute name="role">P</xsl:attribute>
2046
+ </xsl:if>
2047
+ <xsl:if test="ancestor::*[local-name() = 'li' or local-name() = 'td' or local-name() = 'th' or local-name() = 'dd']">
2048
+ <xsl:attribute name="role">SKIP</xsl:attribute>
2049
+ </xsl:if>
2034
2050
  <xsl:apply-templates>
2035
2051
  <xsl:with-param name="split_keep-within-line" select="$split_keep-within-line"/>
2036
2052
  </xsl:apply-templates>
2037
2053
  </xsl:element>
2038
2054
  <xsl:if test="$element-name = 'fo:inline' and not($inline = 'true') and not(local-name(..) = 'admonition')">
2039
- <fo:block margin-bottom="12pt">
2055
+ <fo:block margin-bottom="12pt" role="SKIP">
2040
2056
  <xsl:if test="ancestor::iso:annex or following-sibling::iso:table">
2041
2057
  <xsl:attribute name="margin-bottom">0</xsl:attribute>
2042
2058
  </xsl:if>
@@ -2044,7 +2060,7 @@
2044
2060
  </fo:block>
2045
2061
  </xsl:if>
2046
2062
  <xsl:if test="$inline = 'true'">
2047
- <fo:block> </fo:block>
2063
+ <fo:block role="SKIP"> </fo:block>
2048
2064
  </xsl:if>
2049
2065
  </xsl:template>
2050
2066
 
@@ -2265,10 +2281,10 @@
2265
2281
  </xsl:template>
2266
2282
 
2267
2283
  <xsl:template name="insertTripleLine">
2268
- <fo:block font-size="1.25pt">
2269
- <fo:block><fo:leader leader-pattern="rule" rule-thickness="0.75pt" leader-length="100%"/></fo:block>
2270
- <fo:block><fo:leader leader-pattern="rule" rule-thickness="0.75pt" leader-length="100%"/></fo:block>
2271
- <fo:block><fo:leader leader-pattern="rule" rule-thickness="0.75pt" leader-length="100%"/></fo:block>
2284
+ <fo:block font-size="1.25pt" role="SKIP">
2285
+ <fo:block role="SKIP"><fo:leader leader-pattern="rule" rule-thickness="0.75pt" leader-length="100%"/></fo:block>
2286
+ <fo:block role="SKIP"><fo:leader leader-pattern="rule" rule-thickness="0.75pt" leader-length="100%"/></fo:block>
2287
+ <fo:block role="SKIP"><fo:leader leader-pattern="rule" rule-thickness="0.75pt" leader-length="100%"/></fo:block>
2272
2288
  </fo:block>
2273
2289
  </xsl:template>
2274
2290
 
@@ -3338,6 +3354,7 @@
3338
3354
  </xsl:attribute-set>
3339
3355
 
3340
3356
  <xsl:attribute-set name="figure-block-style">
3357
+ <xsl:attribute name="role">SKIP</xsl:attribute>
3341
3358
 
3342
3359
  <xsl:attribute name="space-after">12pt</xsl:attribute>
3343
3360
 
@@ -3348,6 +3365,7 @@
3348
3365
  </xsl:attribute-set>
3349
3366
 
3350
3367
  <xsl:attribute-set name="figure-name-style">
3368
+ <xsl:attribute name="role">Caption</xsl:attribute>
3351
3369
 
3352
3370
  <xsl:attribute name="font-weight">bold</xsl:attribute>
3353
3371
  <xsl:attribute name="text-align">center</xsl:attribute>
@@ -3390,7 +3408,12 @@
3390
3408
  </xsl:attribute-set> <!-- formula-stem-number-style -->
3391
3409
  <!-- End Formula's styles -->
3392
3410
 
3411
+ <xsl:template name="refine_formula-stem-number-style">
3412
+
3413
+ </xsl:template>
3414
+
3393
3415
  <xsl:attribute-set name="image-style">
3416
+ <xsl:attribute name="role">SKIP</xsl:attribute>
3394
3417
  <xsl:attribute name="text-align">center</xsl:attribute>
3395
3418
 
3396
3419
  </xsl:attribute-set>
@@ -3659,6 +3682,13 @@
3659
3682
 
3660
3683
  </xsl:attribute-set> <!-- bibitem-non-normative-list-style -->
3661
3684
 
3685
+ <xsl:attribute-set name="bibitem-non-normative-list-item-style">
3686
+ <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
3687
+
3688
+ <xsl:attribute name="margin-bottom">6pt</xsl:attribute>
3689
+
3690
+ </xsl:attribute-set>
3691
+
3662
3692
  <!-- bibitem in bibliography section (references/@normative="false"), list body -->
3663
3693
  <xsl:attribute-set name="bibitem-normative-list-body-style">
3664
3694
 
@@ -3886,13 +3916,13 @@
3886
3916
 
3887
3917
  <xsl:template name="processPrefaceSectionsDefault_Contents">
3888
3918
  <xsl:variable name="nodes_preface_">
3889
- <xsl:for-each select="/*/*[local-name()='preface']/*[not(local-name() = 'note' or local-name() = 'admonition')]">
3919
+ <xsl:for-each select="/*/*[local-name()='preface']/*[not(local-name() = 'note' or local-name() = 'admonition' or @type = 'toc')]">
3890
3920
  <node id="{@id}"/>
3891
3921
  </xsl:for-each>
3892
3922
  </xsl:variable>
3893
3923
  <xsl:variable name="nodes_preface" select="xalan:nodeset($nodes_preface_)"/>
3894
3924
 
3895
- <xsl:for-each select="/*/*[local-name()='preface']/*[not(local-name() = 'note' or local-name() = 'admonition')]">
3925
+ <xsl:for-each select="/*/*[local-name()='preface']/*[not(local-name() = 'note' or local-name() = 'admonition' or @type = 'toc')]">
3896
3926
  <xsl:sort select="@displayorder" data-type="number"/>
3897
3927
 
3898
3928
  <!-- process Section's title -->
@@ -3926,12 +3956,12 @@
3926
3956
  <xsl:apply-templates select="." mode="contents"/>
3927
3957
  </xsl:for-each>
3928
3958
 
3929
- <xsl:for-each select="/*/*[local-name()='annex']">
3959
+ <!-- <xsl:for-each select="/*/*[local-name()='annex']">
3930
3960
  <xsl:sort select="@displayorder" data-type="number"/>
3931
3961
  <xsl:apply-templates select="." mode="contents"/>
3932
- </xsl:for-each>
3962
+ </xsl:for-each> -->
3933
3963
 
3934
- <xsl:for-each select="/*/*[local-name()='bibliography']/*[not(@normative='true') and not(*[local-name()='references'][@normative='true'])][count(.//*[local-name() = 'bibitem'][not(@hidden) = 'true']) &gt; 0] | /*/*[local-name()='bibliography']/*[local-name()='clause'][*[local-name()='references'][not(@normative='true')]][count(.//*[local-name() = 'bibitem'][not(@hidden) = 'true']) &gt; 0]">
3964
+ <xsl:for-each select="/*/*[local-name()='annex'] | /*/*[local-name()='bibliography']/*[not(@normative='true') and not(*[local-name()='references'][@normative='true'])][count(.//*[local-name() = 'bibitem'][not(@hidden) = 'true']) &gt; 0] | /*/*[local-name()='bibliography']/*[local-name()='clause'][*[local-name()='references'][not(@normative='true')]][count(.//*[local-name() = 'bibitem'][not(@hidden) = 'true']) &gt; 0]">
3935
3965
  <xsl:sort select="@displayorder" data-type="number"/>
3936
3966
  <xsl:apply-templates select="." mode="contents"/>
3937
3967
  </xsl:for-each>
@@ -4049,14 +4079,14 @@
4049
4079
  <xsl:value-of select="$sep"/><xsl:value-of select="$zero_width_space"/>
4050
4080
  </xsl:when>
4051
4081
  <xsl:otherwise>
4052
- <fo:inline keep-together.within-line="always"><xsl:apply-templates/></fo:inline>
4082
+ <fo:inline keep-together.within-line="always" role="SKIP"><xsl:apply-templates/></fo:inline>
4053
4083
  </xsl:otherwise>
4054
4084
  </xsl:choose>
4055
4085
  </xsl:for-each>
4056
4086
  </xsl:when>
4057
4087
 
4058
4088
  <xsl:otherwise>
4059
- <fo:inline keep-together.within-line="always"><xsl:apply-templates/></fo:inline>
4089
+ <fo:inline keep-together.within-line="always" role="SKIP"><xsl:apply-templates/></fo:inline>
4060
4090
  </xsl:otherwise>
4061
4091
 
4062
4092
  </xsl:choose>
@@ -4066,7 +4096,7 @@
4066
4096
  <!-- Preface boilerplate sections processing -->
4067
4097
  <!-- ================================= -->
4068
4098
  <xsl:template match="*[local-name()='copyright-statement']">
4069
- <fo:block xsl:use-attribute-sets="copyright-statement-style">
4099
+ <fo:block xsl:use-attribute-sets="copyright-statement-style" role="SKIP">
4070
4100
  <xsl:apply-templates/>
4071
4101
  </fo:block>
4072
4102
  </xsl:template> <!-- copyright-statement -->
@@ -4245,7 +4275,7 @@
4245
4275
  </xsl:choose>
4246
4276
  </xsl:variable>
4247
4277
 
4248
- <fo:block-container xsl:use-attribute-sets="table-container-style">
4278
+ <fo:block-container xsl:use-attribute-sets="table-container-style" role="SKIP">
4249
4279
 
4250
4280
  <xsl:call-template name="refine_table-container-style">
4251
4281
  <xsl:with-param name="margin-side" select="$margin-side"/>
@@ -4383,7 +4413,7 @@
4383
4413
  <fo:table-row>
4384
4414
  <fo:table-cell column-number="2">
4385
4415
  <xsl:copy-of select="$table-preamble"/>
4386
- <fo:block>
4416
+ <fo:block role="SKIP">
4387
4417
  <xsl:call-template name="setTrackChangesStyles">
4388
4418
  <xsl:with-param name="isAdded" select="$isAdded"/>
4389
4419
  <xsl:with-param name="isDeleted" select="$isDeleted"/>
@@ -4431,7 +4461,7 @@
4431
4461
  <xsl:param name="continued"/>
4432
4462
  <xsl:if test="normalize-space() != ''">
4433
4463
 
4434
- <fo:block xsl:use-attribute-sets="table-name-style">
4464
+ <fo:block xsl:use-attribute-sets="table-name-style" role="SKIP">
4435
4465
 
4436
4466
  <xsl:call-template name="refine_table-name-style">
4437
4467
  <xsl:with-param name="continued" select="$continued"/>
@@ -4447,10 +4477,10 @@
4447
4477
  </xsl:choose>
4448
4478
 
4449
4479
  <xsl:if test="$continued = 'true'">
4450
- <fo:inline font-weight="bold" font-style="normal">
4480
+ <fo:inline font-weight="bold" font-style="normal" role="SKIP">
4451
4481
  <fo:retrieve-table-marker retrieve-class-name="table_number"/>
4452
4482
  </fo:inline>
4453
- <fo:inline font-weight="normal" font-style="italic">
4483
+ <fo:inline font-weight="normal" font-style="italic" role="SKIP">
4454
4484
  <xsl:text> </xsl:text>
4455
4485
  <fo:retrieve-table-marker retrieve-class-name="table_continued"/>
4456
4486
  </fo:inline>
@@ -4830,8 +4860,8 @@
4830
4860
  <xsl:template name="table-header-title">
4831
4861
  <xsl:param name="cols-count"/>
4832
4862
  <!-- row for title -->
4833
- <fo:table-row>
4834
- <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">
4863
+ <fo:table-row role="SKIP">
4864
+ <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" role="SKIP">
4835
4865
 
4836
4866
  <xsl:call-template name="refine_table-header-title-style"/>
4837
4867
 
@@ -4840,7 +4870,7 @@
4840
4870
  </xsl:apply-templates>
4841
4871
 
4842
4872
  <xsl:if test="not(ancestor::*[local-name()='table']/*[local-name()='name'])"> <!-- to prevent empty fo:table-cell in case of missing table's name -->
4843
- <fo:block/>
4873
+ <fo:block role="SKIP"/>
4844
4874
  </xsl:if>
4845
4875
 
4846
4876
  <xsl:for-each select="ancestor::*[local-name()='table'][1]">
@@ -5047,24 +5077,24 @@
5047
5077
  <xsl:variable name="title_start" select="ancestor::*[local-name()='table'][1]/*[local-name()='name']/node()[1][self::text()]"/>
5048
5078
  <xsl:variable name="table_number" select="substring-before($title_start, '—')"/>
5049
5079
 
5050
- <fo:table-row height="0" keep-with-next.within-page="always">
5051
- <fo:table-cell>
5080
+ <fo:table-row height="0" keep-with-next.within-page="always" role="SKIP">
5081
+ <fo:table-cell role="SKIP">
5052
5082
 
5053
5083
  <fo:marker marker-class-name="table_number"/>
5054
5084
  <fo:marker marker-class-name="table_continued"/>
5055
5085
 
5056
- <fo:block/>
5086
+ <fo:block role="SKIP"/>
5057
5087
  </fo:table-cell>
5058
5088
  </fo:table-row>
5059
- <fo:table-row height="0" keep-with-next.within-page="always">
5060
- <fo:table-cell>
5089
+ <fo:table-row height="0" keep-with-next.within-page="always" role="SKIP">
5090
+ <fo:table-cell role="SKIP">
5061
5091
 
5062
5092
  <fo:marker marker-class-name="table_number"><xsl:value-of select="normalize-space(translate($table_number, ' ', ' '))"/></fo:marker>
5063
5093
 
5064
5094
  <fo:marker marker-class-name="table_continued">
5065
5095
  <xsl:value-of select="$title_continued"/>
5066
5096
  </fo:marker>
5067
- <fo:block/>
5097
+ <fo:block role="SKIP"/>
5068
5098
  </fo:table-cell>
5069
5099
  </fo:table-row>
5070
5100
 
@@ -5205,7 +5235,7 @@
5205
5235
 
5206
5236
  <xsl:call-template name="refine_table-header-cell-style"/>
5207
5237
 
5208
- <fo:block>
5238
+ <fo:block role="SKIP">
5209
5239
  <xsl:apply-templates/>
5210
5240
  </fo:block>
5211
5241
  </fo:table-cell>
@@ -5258,7 +5288,7 @@
5258
5288
  <xsl:attribute name="text-align">left</xsl:attribute>
5259
5289
  </xsl:if>
5260
5290
 
5261
- <fo:block>
5291
+ <fo:block role="SKIP">
5262
5292
 
5263
5293
  <xsl:if test="$isGenerateTableIF = 'true'">
5264
5294
  <xsl:attribute name="id"><xsl:value-of select="@id"/></xsl:attribute>
@@ -5353,7 +5383,7 @@
5353
5383
  </xsl:choose>
5354
5384
  </xsl:variable>
5355
5385
  <xsl:variable name="footnote_inline">
5356
- <fo:inline>
5386
+ <fo:inline role="Reference">
5357
5387
 
5358
5388
  <xsl:variable name="fn_styles">
5359
5389
  <xsl:choose>
@@ -5376,7 +5406,7 @@
5376
5406
 
5377
5407
  <xsl:call-template name="insert_basic_link">
5378
5408
  <xsl:with-param name="element">
5379
- <fo:basic-link internal-destination="{$ref_id}" fox:alt-text="footnote {$current_fn_number}">
5409
+ <fo:basic-link internal-destination="{$ref_id}" fox:alt-text="footnote {$current_fn_number}" role="Lbl">
5380
5410
  <xsl:copy-of select="$current_fn_number_text"/>
5381
5411
  </fo:basic-link>
5382
5412
  </xsl:with-param>
@@ -5389,17 +5419,17 @@
5389
5419
  <xsl:copy-of select="$footnote_inline"/>
5390
5420
  </xsl:when>
5391
5421
  <xsl:when test="$p_fn//fn[@gen_id = $gen_id] or normalize-space(@skip_footnote_body) = 'false'">
5392
- <fo:footnote xsl:use-attribute-sets="fn-style">
5422
+ <fo:footnote xsl:use-attribute-sets="fn-style" role="SKIP">
5393
5423
  <xsl:copy-of select="$footnote_inline"/>
5394
- <fo:footnote-body>
5424
+ <fo:footnote-body role="Note">
5395
5425
 
5396
- <fo:block-container xsl:use-attribute-sets="fn-container-body-style">
5426
+ <fo:block-container xsl:use-attribute-sets="fn-container-body-style" role="SKIP">
5397
5427
 
5398
- <fo:block xsl:use-attribute-sets="fn-body-style">
5428
+ <fo:block xsl:use-attribute-sets="fn-body-style" role="SKIP">
5399
5429
 
5400
5430
  <xsl:call-template name="refine_fn-body-style"/>
5401
5431
 
5402
- <fo:inline id="{$ref_id}" xsl:use-attribute-sets="fn-body-num-style">
5432
+ <fo:inline id="{$ref_id}" xsl:use-attribute-sets="fn-body-num-style" role="Lbl">
5403
5433
 
5404
5434
  <xsl:call-template name="refine_fn-body-num-style"/>
5405
5435
 
@@ -5661,11 +5691,11 @@
5661
5691
  </xsl:template>
5662
5692
 
5663
5693
  <xsl:template match="*[local-name()='fn']/text()[normalize-space() != '']">
5664
- <fo:inline><xsl:value-of select="."/></fo:inline>
5694
+ <fo:inline role="SKIP"><xsl:value-of select="."/></fo:inline>
5665
5695
  </xsl:template>
5666
5696
 
5667
5697
  <xsl:template match="*[local-name()='fn']//*[local-name()='p']">
5668
- <fo:inline>
5698
+ <fo:inline role="P">
5669
5699
  <xsl:apply-templates/>
5670
5700
  </fo:inline>
5671
5701
  </xsl:template>
@@ -5680,7 +5710,7 @@
5680
5710
  <xsl:variable name="isAdded" select="@added"/>
5681
5711
  <xsl:variable name="isDeleted" select="@deleted"/>
5682
5712
  <!-- <dl><xsl:copy-of select="."/></dl> -->
5683
- <fo:block-container xsl:use-attribute-sets="dl-block-style">
5713
+ <fo:block-container xsl:use-attribute-sets="dl-block-style" role="SKIP">
5684
5714
 
5685
5715
  <xsl:call-template name="setBlockSpanAll"/>
5686
5716
 
@@ -5715,7 +5745,7 @@
5715
5745
  <xsl:with-param name="isDeleted" select="$isDeleted"/>
5716
5746
  </xsl:call-template>
5717
5747
 
5718
- <fo:block-container margin-left="0mm">
5748
+ <fo:block-container margin-left="0mm" role="SKIP">
5719
5749
 
5720
5750
  <xsl:attribute name="margin-right">0mm</xsl:attribute>
5721
5751
 
@@ -5784,7 +5814,7 @@
5784
5814
 
5785
5815
  <!-- a few components -->
5786
5816
  <xsl:if test="$onlyOneComponent = 'false'">
5787
- <fo:block>
5817
+ <fo:block role="SKIP">
5788
5818
 
5789
5819
  <xsl:call-template name="refine_multicomponent_style"/>
5790
5820
 
@@ -5792,7 +5822,7 @@
5792
5822
  <xsl:attribute name="margin-top">0</xsl:attribute>
5793
5823
  </xsl:if>
5794
5824
 
5795
- <fo:block>
5825
+ <fo:block role="SKIP">
5796
5826
 
5797
5827
  <xsl:call-template name="refine_multicomponent_block_style"/>
5798
5828
 
@@ -6141,7 +6171,7 @@
6141
6171
  -->
6142
6172
  <fo:table-row>
6143
6173
  <fo:table-cell number-columns-spanned="2">
6144
- <fo:block>
6174
+ <fo:block role="SKIP">
6145
6175
  <xsl:call-template name="note"/>
6146
6176
  </fo:block>
6147
6177
  </fo:table-cell>
@@ -6206,7 +6236,7 @@
6206
6236
 
6207
6237
  <xsl:call-template name="refine_dt-cell-style"/>
6208
6238
 
6209
- <fo:block xsl:use-attribute-sets="dt-block-style">
6239
+ <fo:block xsl:use-attribute-sets="dt-block-style" role="SKIP">
6210
6240
  <xsl:copy-of select="@id"/>
6211
6241
 
6212
6242
  <xsl:if test="normalize-space($key_iso) = 'true'">
@@ -6236,7 +6266,7 @@
6236
6266
 
6237
6267
  <xsl:call-template name="refine_dd-cell-style"/>
6238
6268
 
6239
- <fo:block>
6269
+ <fo:block role="SKIP">
6240
6270
 
6241
6271
  <xsl:if test="$isGenerateTableIF = 'true'">
6242
6272
  <xsl:attribute name="id"><xsl:value-of select="@id"/></xsl:attribute>
@@ -6378,10 +6408,19 @@
6378
6408
  <!-- ========================= -->
6379
6409
  <xsl:template match="*[local-name()='em']">
6380
6410
  <fo:inline font-style="italic">
6411
+ <xsl:call-template name="refine_italic_style"/>
6381
6412
  <xsl:apply-templates/>
6382
6413
  </fo:inline>
6383
6414
  </xsl:template>
6384
6415
 
6416
+ <xsl:template name="refine_italic_style">
6417
+
6418
+ <xsl:if test="ancestor::*[local-name() = 'item']">
6419
+ <xsl:attribute name="role">SKIP</xsl:attribute>
6420
+ </xsl:if>
6421
+
6422
+ </xsl:template>
6423
+
6385
6424
  <xsl:template match="*[local-name()='strong'] | *[local-name()='b']">
6386
6425
  <xsl:param name="split_keep-within-line"/>
6387
6426
  <fo:inline font-weight="bold">
@@ -6396,6 +6435,13 @@
6396
6435
 
6397
6436
  <xsl:template name="refine_strong_style">
6398
6437
 
6438
+ <xsl:if test="ancestor::*[local-name() = 'item']">
6439
+ <xsl:attribute name="role">SKIP</xsl:attribute>
6440
+ </xsl:if>
6441
+
6442
+ <xsl:if test="ancestor::*['preferred']">
6443
+ <xsl:attribute name="role">SKIP</xsl:attribute>
6444
+ </xsl:if>
6399
6445
  </xsl:template>
6400
6446
 
6401
6447
  <xsl:template match="*[local-name()='padding']">
@@ -6604,11 +6650,41 @@
6604
6650
 
6605
6651
  <xsl:template match="text()[ancestor::*[local-name()='smallcap']]">
6606
6652
  <xsl:variable name="text" select="normalize-space(.)"/>
6607
- <fo:inline font-size="75%">
6653
+ <fo:inline font-size="75%" role="SKIP">
6608
6654
  <xsl:if test="string-length($text) &gt; 0">
6609
- <xsl:call-template name="recursiveSmallCaps">
6610
- <xsl:with-param name="text" select="$text"/>
6611
- </xsl:call-template>
6655
+ <xsl:variable name="smallCapsText">
6656
+ <xsl:call-template name="recursiveSmallCaps">
6657
+ <xsl:with-param name="text" select="$text"/>
6658
+ </xsl:call-template>
6659
+ </xsl:variable>
6660
+ <!-- merge neighboring fo:inline -->
6661
+ <xsl:for-each select="xalan:nodeset($smallCapsText)/node()">
6662
+ <xsl:choose>
6663
+ <xsl:when test="self::fo:inline and preceding-sibling::node()[1][self::fo:inline]"><!-- <xsl:copy-of select="."/> --></xsl:when>
6664
+ <xsl:when test="self::fo:inline and @font-size">
6665
+ <xsl:variable name="curr_pos" select="count(preceding-sibling::node()) + 1"/>
6666
+ <!-- <curr_pos><xsl:value-of select="$curr_pos"/></curr_pos> -->
6667
+ <xsl:variable name="next_text_" select="count(following-sibling::node()[not(local-name() = 'inline')][1]/preceding-sibling::node())"/>
6668
+ <xsl:variable name="next_text">
6669
+ <xsl:choose>
6670
+ <xsl:when test="$next_text_ = 0">99999999</xsl:when>
6671
+ <xsl:otherwise><xsl:value-of select="$next_text_ + 1"/></xsl:otherwise>
6672
+ </xsl:choose>
6673
+ </xsl:variable>
6674
+ <!-- <next_text><xsl:value-of select="$next_text"/></next_text> -->
6675
+ <fo:inline>
6676
+ <xsl:copy-of select="@*"/>
6677
+ <xsl:copy-of select="./node()"/>
6678
+ <xsl:for-each select="following-sibling::node()[position() &lt; $next_text - $curr_pos]"> <!-- [self::fo:inline] -->
6679
+ <xsl:copy-of select="./node()"/>
6680
+ </xsl:for-each>
6681
+ </fo:inline>
6682
+ </xsl:when>
6683
+ <xsl:otherwise>
6684
+ <xsl:copy-of select="."/>
6685
+ </xsl:otherwise>
6686
+ </xsl:choose>
6687
+ </xsl:for-each>
6612
6688
  </xsl:if>
6613
6689
  </fo:inline>
6614
6690
  </xsl:template>
@@ -6620,7 +6696,7 @@
6620
6696
  <xsl:variable name="upperCase" select="java:toUpperCase(java:java.lang.String.new($char))"/>
6621
6697
  <xsl:choose>
6622
6698
  <xsl:when test="$char=$upperCase">
6623
- <fo:inline font-size="{100 div 0.75}%">
6699
+ <fo:inline font-size="{100 div 0.75}%" role="SKIP">
6624
6700
  <xsl:value-of select="$upperCase"/>
6625
6701
  </fo:inline>
6626
6702
  </xsl:when>
@@ -6853,6 +6929,10 @@
6853
6929
 
6854
6930
  <xsl:when test="not(contains($text, $separator))">
6855
6931
  <word>
6932
+ <xsl:if test="ancestor::*[local-name() = 'p'][@from_dl = 'true']">
6933
+ <xsl:text>
6934
+  </xsl:text> <!-- to add distance between dt and dd -->
6935
+ </xsl:if>
6856
6936
  <xsl:call-template name="enclose_text_in_tags">
6857
6937
  <xsl:with-param name="text" select="normalize-space($text)"/>
6858
6938
  <xsl:with-param name="tags" select="$tags"/>
@@ -6861,6 +6941,10 @@
6861
6941
  </xsl:when>
6862
6942
  <xsl:otherwise>
6863
6943
  <word>
6944
+ <xsl:if test="ancestor::*[local-name() = 'p'][@from_dl = 'true']">
6945
+ <xsl:text>
6946
+  </xsl:text> <!-- to add distance between dt and dd -->
6947
+ </xsl:if>
6864
6948
  <xsl:call-template name="enclose_text_in_tags">
6865
6949
  <xsl:with-param name="text" select="normalize-space(substring-before($text, $separator))"/>
6866
6950
  <xsl:with-param name="tags" select="$tags"/>
@@ -7044,6 +7128,10 @@
7044
7128
  <xsl:template name="getSimpleTable">
7045
7129
  <xsl:param name="id"/>
7046
7130
 
7131
+ <!-- <test0>
7132
+ <xsl:copy-of select="."/>
7133
+ </test0> -->
7134
+
7047
7135
  <xsl:variable name="simple-table">
7048
7136
 
7049
7137
  <!-- Step 0. replace <br/> to <p>...</p> -->
@@ -7356,6 +7444,18 @@
7356
7444
  </xsl:copy>
7357
7445
  </xsl:template>
7358
7446
 
7447
+ <xsl:variable name="font_main_root_style">
7448
+ <root-style xsl:use-attribute-sets="root-style">
7449
+ </root-style>
7450
+ </xsl:variable>
7451
+ <xsl:variable name="font_main_root_style_font_family" select="xalan:nodeset($font_main_root_style)/root-style/@font-family"/>
7452
+ <xsl:variable name="font_main">
7453
+ <xsl:choose>
7454
+ <xsl:when test="contains($font_main_root_style_font_family, ',')"><xsl:value-of select="substring-before($font_main_root_style_font_family, ',')"/></xsl:when>
7455
+ <xsl:otherwise><xsl:value-of select="$font_main_root_style_font_family"/></xsl:otherwise>
7456
+ </xsl:choose>
7457
+ </xsl:variable>
7458
+
7359
7459
  <xsl:template match="*[local-name()='th' or local-name()='td']" mode="simple-table-id">
7360
7460
  <xsl:param name="id"/>
7361
7461
  <xsl:copy>
@@ -7394,6 +7494,33 @@
7394
7494
 
7395
7495
  <!-- td_text='<xsl:copy-of select="$td_text"/>' -->
7396
7496
 
7497
+ <xsl:variable name="words_with_width">
7498
+ <!-- calculate width for 'word' which contain text only (without formatting tags inside) -->
7499
+ <xsl:for-each select="xalan:nodeset($td_text)//*[local-name() = 'word'][normalize-space() != ''][not(*)]">
7500
+ <xsl:copy>
7501
+ <xsl:copy-of select="@*"/>
7502
+ <xsl:attribute name="width">
7503
+ <xsl:value-of select="java:org.metanorma.fop.Util.getStringWidth(., $font_main)"/> <!-- Example: 'Times New Roman' -->
7504
+ </xsl:attribute>
7505
+ <xsl:copy-of select="node()"/>
7506
+ </xsl:copy>
7507
+ </xsl:for-each>
7508
+ </xsl:variable>
7509
+
7510
+ <xsl:variable name="words_with_width_sorted">
7511
+ <xsl:for-each select="xalan:nodeset($words_with_width)//*[local-name() = 'word']">
7512
+ <xsl:sort select="@width" data-type="number" order="descending"/>
7513
+ <!-- select word maximal width only -->
7514
+ <xsl:if test="position() = 1">
7515
+ <xsl:copy-of select="."/>
7516
+ </xsl:if>
7517
+ </xsl:for-each>
7518
+ <!-- add 'word' with formatting tags inside -->
7519
+ <xsl:for-each select="xalan:nodeset($td_text)//*[local-name() = 'word'][normalize-space() != ''][*]">
7520
+ <xsl:copy-of select="."/>
7521
+ </xsl:for-each>
7522
+ </xsl:variable>
7523
+
7397
7524
  <xsl:variable name="words">
7398
7525
  <xsl:for-each select=".//*[local-name() = 'image' or local-name() = 'stem']">
7399
7526
  <word>
@@ -7401,9 +7528,12 @@
7401
7528
  </word>
7402
7529
  </xsl:for-each>
7403
7530
 
7404
- <xsl:for-each select="xalan:nodeset($td_text)//*[local-name() = 'word'][normalize-space() != '']">
7531
+ <xsl:for-each select="xalan:nodeset($words_with_width_sorted)//*[local-name() = 'word'][normalize-space() != '']">
7405
7532
  <xsl:copy-of select="."/>
7406
7533
  </xsl:for-each>
7534
+ <!-- <xsl:for-each select="xalan:nodeset($td_text)//*[local-name() = 'word'][normalize-space() != '']">
7535
+ <xsl:copy-of select="."/>
7536
+ </xsl:for-each> -->
7407
7537
 
7408
7538
  </xsl:variable>
7409
7539
 
@@ -7871,10 +8001,10 @@
7871
8001
  <xsl:copy>
7872
8002
  <xsl:apply-templates select="@*" mode="mathml"/>
7873
8003
  <xsl:if test="not(@lspace)">
7874
- <xsl:attribute name="lspace">0.4em</xsl:attribute>
8004
+ <xsl:attribute name="lspace">0.2em</xsl:attribute>
7875
8005
  </xsl:if>
7876
- <xsl:if test="not(@rspace)">
7877
- <xsl:attribute name="rspace">0.4em</xsl:attribute>
8006
+ <xsl:if test="not(@rspace) and not(following-sibling::*[1][self::mathml:mo and normalize-space(text()) = '|'])">
8007
+ <xsl:attribute name="rspace">0.2em</xsl:attribute>
7878
8008
  </xsl:if>
7879
8009
  <xsl:apply-templates mode="mathml"/>
7880
8010
  </xsl:copy>
@@ -7891,6 +8021,27 @@
7891
8021
  </xsl:copy>
7892
8022
  </xsl:template>
7893
8023
 
8024
+ <!-- increase space before '(' -->
8025
+ <xsl:template match="mathml:mo[normalize-space(text()) = '(']" mode="mathml">
8026
+ <xsl:copy>
8027
+ <xsl:apply-templates select="@*" mode="mathml"/>
8028
+ <xsl:if test="(preceding-sibling::* and not(preceding-sibling::*[1][self::mathml:mo])) or (../preceding-sibling::* and not(../preceding-sibling::*[1][self::mathml:mo]))">
8029
+ <xsl:if test="not(@lspace)">
8030
+ <xsl:attribute name="lspace">0.4em</xsl:attribute>
8031
+ <xsl:choose>
8032
+ <xsl:when test="preceding-sibling::*[1][self::mathml:mi or self::mathml:mstyle]">
8033
+ <xsl:attribute name="lspace">0.2em</xsl:attribute>
8034
+ </xsl:when>
8035
+ <xsl:when test="../preceding-sibling::*[1][self::mathml:mi or self::mathml:mstyle]">
8036
+ <xsl:attribute name="lspace">0.2em</xsl:attribute>
8037
+ </xsl:when>
8038
+ </xsl:choose>
8039
+ </xsl:if>
8040
+ </xsl:if>
8041
+ <xsl:apply-templates mode="mathml"/>
8042
+ </xsl:copy>
8043
+ </xsl:template>
8044
+
7894
8045
  <!-- Examples:
7895
8046
  <stem type="AsciiMath">x = 1</stem>
7896
8047
  <stem type="AsciiMath"><asciimath>x = 1</asciimath></stem>
@@ -8050,7 +8201,7 @@
8050
8201
  <!-- formula -->
8051
8202
  <!-- ====== -->
8052
8203
  <xsl:template match="*[local-name() = 'formula']" name="formula">
8053
- <fo:block-container margin-left="0mm">
8204
+ <fo:block-container margin-left="0mm" role="SKIP">
8054
8205
  <xsl:if test="parent::*[local-name() = 'note']">
8055
8206
  <xsl:attribute name="margin-left">
8056
8207
  <xsl:choose>
@@ -8060,7 +8211,7 @@
8060
8211
  </xsl:attribute>
8061
8212
 
8062
8213
  </xsl:if>
8063
- <fo:block-container margin-left="0mm">
8214
+ <fo:block-container margin-left="0mm" role="SKIP">
8064
8215
  <fo:block id="{@id}">
8065
8216
  <xsl:apply-templates select="node()[not(local-name() = 'name')]"/> <!-- formula's number will be process in 'stem' template -->
8066
8217
  </fo:block>
@@ -8096,7 +8247,7 @@
8096
8247
  <fo:table-body>
8097
8248
  <fo:table-row>
8098
8249
  <fo:table-cell display-align="center">
8099
- <fo:block xsl:use-attribute-sets="formula-stem-block-style">
8250
+ <fo:block xsl:use-attribute-sets="formula-stem-block-style" role="SKIP">
8100
8251
 
8101
8252
  <xsl:call-template name="refine_formula-stem-block-style"/>
8102
8253
 
@@ -8104,7 +8255,10 @@
8104
8255
  </fo:block>
8105
8256
  </fo:table-cell>
8106
8257
  <fo:table-cell display-align="center">
8107
- <fo:block xsl:use-attribute-sets="formula-stem-number-style">
8258
+ <fo:block xsl:use-attribute-sets="formula-stem-number-style" role="SKIP">
8259
+
8260
+ <xsl:call-template name="refine_formula-stem-number-style"/>
8261
+
8108
8262
  <xsl:apply-templates select="../*[local-name() = 'name']"/>
8109
8263
  </fo:block>
8110
8264
  </fo:table-cell>
@@ -8137,13 +8291,13 @@
8137
8291
 
8138
8292
  <xsl:template match="*[local-name() = 'note']" name="note">
8139
8293
 
8140
- <fo:block-container id="{@id}" xsl:use-attribute-sets="note-style">
8294
+ <fo:block-container id="{@id}" xsl:use-attribute-sets="note-style" role="SKIP">
8141
8295
 
8142
8296
  <xsl:call-template name="setBlockSpanAll"/>
8143
8297
 
8144
8298
  <xsl:call-template name="refine_note-style"/>
8145
8299
 
8146
- <fo:block-container margin-left="0mm" margin-right="0mm">
8300
+ <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
8147
8301
 
8148
8302
  <fo:block>
8149
8303
 
@@ -8309,12 +8463,13 @@
8309
8463
 
8310
8464
  <xsl:template match="*[local-name() = 'term']/*[local-name() = 'name']">
8311
8465
  <xsl:if test="normalize-space() != ''">
8312
- <xsl:variable name="level">
8466
+ <!-- <xsl:variable name="level">
8313
8467
  <xsl:call-template name="getLevelTermName"/>
8314
8468
  </xsl:variable>
8315
8469
  <fo:inline role="H{$level}">
8316
- <xsl:apply-templates/>
8317
- </fo:inline>
8470
+ <xsl:apply-templates />
8471
+ </fo:inline> -->
8472
+ <xsl:apply-templates/>
8318
8473
  </xsl:if>
8319
8474
  </xsl:template>
8320
8475
  <!-- ====== -->
@@ -8338,7 +8493,7 @@
8338
8493
  <!-- Example: Dimensions in millimeters -->
8339
8494
  <xsl:apply-templates select="*[local-name() = 'note'][@type = 'units']"/>
8340
8495
 
8341
- <fo:block xsl:use-attribute-sets="figure-style">
8496
+ <fo:block xsl:use-attribute-sets="figure-style" role="SKIP">
8342
8497
  <xsl:apply-templates select="node()[not(local-name() = 'name') and not(local-name() = 'note' and @type = 'units')]"/>
8343
8498
  </fo:block>
8344
8499
  <xsl:for-each select="*[local-name() = 'note'][not(@type = 'units')]">
@@ -9471,7 +9626,7 @@
9471
9626
  </xsl:when>
9472
9627
 
9473
9628
  <xsl:otherwise>
9474
- <fo:block-container xsl:use-attribute-sets="sourcecode-container-style">
9629
+ <fo:block-container xsl:use-attribute-sets="sourcecode-container-style" role="SKIP">
9475
9630
 
9476
9631
  <xsl:if test="not(ancestor::*[local-name() = 'li']) or ancestor::*[local-name() = 'example']">
9477
9632
  <xsl:attribute name="margin-left">0mm</xsl:attribute>
@@ -9492,7 +9647,7 @@
9492
9647
  </xsl:attribute>
9493
9648
 
9494
9649
  </xsl:if>
9495
- <fo:block-container margin-left="0mm">
9650
+ <fo:block-container margin-left="0mm" role="SKIP">
9496
9651
 
9497
9652
  <fo:block xsl:use-attribute-sets="sourcecode-style">
9498
9653
 
@@ -9616,7 +9771,7 @@
9616
9771
  <!-- second td with sourcecode -->
9617
9772
  <xsl:template match="*[local-name() = 'sourcecode'][@linenums = 'true']/*[local-name()='table']//*[local-name()='tr']/*[local-name()='td'][preceding-sibling::*]" priority="2"> <!-- *[local-name()='table'][@type = 'sourcecode'] -->
9618
9773
  <fo:table-cell>
9619
- <fo:block>
9774
+ <fo:block role="SKIP">
9620
9775
  <xsl:apply-templates/>
9621
9776
  </fo:block>
9622
9777
  </fo:table-cell>
@@ -10040,11 +10195,11 @@
10040
10195
  <!-- requirement, recommendation, permission table -->
10041
10196
  <!-- ========== -->
10042
10197
  <xsl:template match="*[local-name() = 'table'][@class = 'recommendation' or @class='requirement' or @class='permission']">
10043
- <fo:block-container margin-left="0mm" margin-right="0mm" margin-bottom="12pt">
10198
+ <fo:block-container margin-left="0mm" margin-right="0mm" margin-bottom="12pt" role="SKIP">
10044
10199
  <xsl:if test="ancestor::*[local-name() = 'table'][@class = 'recommendation' or @class='requirement' or @class='permission']">
10045
10200
  <xsl:attribute name="margin-bottom">0pt</xsl:attribute>
10046
10201
  </xsl:if>
10047
- <fo:block-container margin-left="0mm" margin-right="0mm">
10202
+ <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
10048
10203
  <fo:table id="{@id}" table-layout="fixed" width="100%"> <!-- border="1pt solid black" -->
10049
10204
  <xsl:if test="ancestor::*[local-name() = 'table'][@class = 'recommendation' or @class='requirement' or @class='permission']">
10050
10205
  <!-- <xsl:attribute name="border">0.5pt solid black</xsl:attribute> -->
@@ -10105,7 +10260,7 @@
10105
10260
 
10106
10261
  <xsl:call-template name="setTableCellAttributes"/>
10107
10262
 
10108
- <fo:block>
10263
+ <fo:block role="SKIP">
10109
10264
  <xsl:apply-templates/>
10110
10265
  </fo:block>
10111
10266
  </fo:table-cell>
@@ -10127,7 +10282,7 @@
10127
10282
 
10128
10283
  <xsl:call-template name="setTableCellAttributes"/>
10129
10284
 
10130
- <fo:block>
10285
+ <fo:block role="SKIP">
10131
10286
  <xsl:apply-templates/>
10132
10287
  </fo:block>
10133
10288
  </fo:table-cell>
@@ -10206,7 +10361,7 @@
10206
10361
  -->
10207
10362
  <xsl:template match="*[local-name() = 'example']">
10208
10363
 
10209
- <fo:block-container id="{@id}" xsl:use-attribute-sets="example-style">
10364
+ <fo:block-container id="{@id}" xsl:use-attribute-sets="example-style" role="SKIP">
10210
10365
 
10211
10366
  <xsl:call-template name="setBlockSpanAll"/>
10212
10367
 
@@ -10217,7 +10372,7 @@
10217
10372
  inline
10218
10373
  </xsl:variable>
10219
10374
 
10220
- <fo:block-container margin-left="0mm">
10375
+ <fo:block-container margin-left="0mm" role="SKIP">
10221
10376
 
10222
10377
  <xsl:choose>
10223
10378
 
@@ -10230,8 +10385,8 @@
10230
10385
  </xsl:apply-templates>
10231
10386
  </fo:block>
10232
10387
 
10233
- <fo:block-container xsl:use-attribute-sets="example-body-style">
10234
- <fo:block-container margin-left="0mm" margin-right="0mm">
10388
+ <fo:block-container xsl:use-attribute-sets="example-body-style" role="SKIP">
10389
+ <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
10235
10390
  <xsl:apply-templates select="node()[not(local-name() = 'name')]">
10236
10391
  <xsl:with-param name="fo_element" select="$fo_element"/>
10237
10392
  </xsl:apply-templates>
@@ -10284,8 +10439,8 @@
10284
10439
 
10285
10440
  <xsl:if test="*[not(local-name() = 'name')][position() &gt; 1]">
10286
10441
  <!-- display further elements in blocks -->
10287
- <fo:block-container xsl:use-attribute-sets="example-body-style">
10288
- <fo:block-container margin-left="0mm" margin-right="0mm">
10442
+ <fo:block-container xsl:use-attribute-sets="example-body-style" role="SKIP">
10443
+ <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
10289
10444
  <xsl:apply-templates select="*[not(local-name() = 'name')][position() &gt; 1]">
10290
10445
  <xsl:with-param name="fo_element" select="'block'"/>
10291
10446
  </xsl:apply-templates>
@@ -10343,7 +10498,7 @@
10343
10498
  </xsl:variable>
10344
10499
  <xsl:choose>
10345
10500
  <xsl:when test="starts-with(normalize-space($element), 'block')">
10346
- <fo:block-container>
10501
+ <fo:block-container role="SKIP">
10347
10502
  <xsl:if test="ancestor::*[local-name() = 'li'] and contains(normalize-space($fo_element), 'block')">
10348
10503
  <xsl:attribute name="margin-left">0mm</xsl:attribute>
10349
10504
  <xsl:attribute name="margin-right">0mm</xsl:attribute>
@@ -10484,7 +10639,7 @@
10484
10639
  <!-- author -->
10485
10640
  <!-- ====== -->
10486
10641
  <xsl:template match="*[local-name() = 'quote']">
10487
- <fo:block-container margin-left="0mm">
10642
+ <fo:block-container margin-left="0mm" role="SKIP">
10488
10643
 
10489
10644
  <xsl:call-template name="setBlockSpanAll"/>
10490
10645
 
@@ -10494,12 +10649,12 @@
10494
10649
  </xsl:if>
10495
10650
  </xsl:if>
10496
10651
 
10497
- <fo:block-container margin-left="0mm">
10498
- <fo:block-container xsl:use-attribute-sets="quote-style">
10652
+ <fo:block-container margin-left="0mm" role="SKIP">
10653
+ <fo:block-container xsl:use-attribute-sets="quote-style" role="SKIP">
10499
10654
 
10500
10655
  <xsl:call-template name="refine_quote-style"/>
10501
10656
 
10502
- <fo:block-container margin-left="0mm" margin-right="0mm">
10657
+ <fo:block-container margin-left="0mm" margin-right="0mm" role="SKIP">
10503
10658
  <fo:block role="BlockQuote">
10504
10659
  <xsl:apply-templates select="./node()[not(local-name() = 'author') and not(local-name() = 'source')]"/> <!-- process all nested nodes, except author and source -->
10505
10660
  </fo:block>
@@ -10655,10 +10810,10 @@
10655
10810
 
10656
10811
  <xsl:choose>
10657
10812
  <xsl:when test="$lang = 'zh'">
10658
- <fo:inline><xsl:value-of select="$tab_zh"/></fo:inline>
10813
+ <fo:inline role="SKIP"><xsl:value-of select="$tab_zh"/></fo:inline>
10659
10814
  </xsl:when>
10660
10815
  <xsl:when test="../../@inline-header = 'true'">
10661
- <fo:inline font-size="90%">
10816
+ <fo:inline font-size="90%" role="SKIP">
10662
10817
  <xsl:call-template name="insertNonBreakSpaces">
10663
10818
  <xsl:with-param name="count" select="$padding-right"/>
10664
10819
  </xsl:call-template>
@@ -10666,7 +10821,7 @@
10666
10821
  </xsl:when>
10667
10822
  <xsl:otherwise>
10668
10823
  <xsl:variable name="direction"><xsl:if test="$lang = 'ar'"><xsl:value-of select="$RLM"/></xsl:if></xsl:variable>
10669
- <fo:inline padding-right="{$padding-right}mm"><xsl:value-of select="$direction"/>​</fo:inline>
10824
+ <fo:inline padding-right="{$padding-right}mm" role="SKIP"><xsl:value-of select="$direction"/>​</fo:inline>
10670
10825
  </xsl:otherwise>
10671
10826
  </xsl:choose>
10672
10827
 
@@ -10696,12 +10851,12 @@
10696
10851
  <fo:block font-size="{normalize-space($font-size)}" role="H{$levelTerm}" xsl:use-attribute-sets="preferred-block-style">
10697
10852
 
10698
10853
  <xsl:if test="parent::*[local-name() = 'term'] and not(preceding-sibling::*[local-name() = 'preferred'])"> <!-- if first preffered in term, then display term's name -->
10699
- <fo:block xsl:use-attribute-sets="term-name-style">
10854
+ <fo:block xsl:use-attribute-sets="term-name-style" role="SKIP">
10700
10855
  <xsl:apply-templates select="ancestor::*[local-name() = 'term'][1]/*[local-name() = 'name']"/>
10701
10856
  </fo:block>
10702
10857
  </xsl:if>
10703
10858
 
10704
- <fo:block xsl:use-attribute-sets="preferred-term-style">
10859
+ <fo:block xsl:use-attribute-sets="preferred-term-style" role="SKIP">
10705
10860
  <xsl:call-template name="setStyle_preferred"/>
10706
10861
  <xsl:apply-templates/>
10707
10862
  </fo:block>
@@ -10742,7 +10897,7 @@
10742
10897
  <!-- definition -->
10743
10898
  <!-- ========== -->
10744
10899
  <xsl:template match="*[local-name() = 'definition']">
10745
- <fo:block xsl:use-attribute-sets="definition-style">
10900
+ <fo:block xsl:use-attribute-sets="definition-style" role="SKIP">
10746
10901
  <xsl:apply-templates/>
10747
10902
  </fo:block>
10748
10903
  </xsl:template>
@@ -10790,6 +10945,10 @@
10790
10945
 
10791
10946
  <xsl:template match="*[local-name() = 'clause']">
10792
10947
  <fo:block>
10948
+ <xsl:if test="parent::*[local-name() = 'copyright-statement']">
10949
+ <xsl:attribute name="role">SKIP</xsl:attribute>
10950
+ </xsl:if>
10951
+
10793
10952
  <xsl:call-template name="setId"/>
10794
10953
 
10795
10954
  <xsl:call-template name="setBlockSpanAll"/>
@@ -10903,7 +11062,48 @@
10903
11062
  </xsl:choose>
10904
11063
  </xsl:when>
10905
11064
  <xsl:when test="local-name(..) = 'ol' and @label"> <!-- for ordered lists 'ol', and if there is @label, for instance label="1.1.2" -->
10906
- <xsl:value-of select="@label"/>
11065
+
11066
+ <xsl:variable name="label">
11067
+
11068
+ <xsl:variable name="type" select="../@type"/>
11069
+
11070
+ <xsl:variable name="style_prefix_">
11071
+ <xsl:if test="$type = 'roman'">
11072
+ <!-- Example: (i) -->
11073
+ </xsl:if>
11074
+ </xsl:variable>
11075
+ <xsl:variable name="style_prefix" select="normalize-space($style_prefix_)"/>
11076
+
11077
+ <xsl:variable name="style_suffix_">
11078
+ <xsl:choose>
11079
+ <xsl:when test="$type = 'arabic'">
11080
+ )
11081
+ </xsl:when>
11082
+ <xsl:when test="$type = 'alphabet' or $type = 'alphabetic'">
11083
+ )
11084
+ </xsl:when>
11085
+ <xsl:when test="$type = 'alphabet_upper' or $type = 'alphabetic_upper'">
11086
+ .
11087
+ </xsl:when>
11088
+ <xsl:when test="$type = 'roman'">
11089
+ )
11090
+ </xsl:when>
11091
+ <xsl:when test="$type = 'roman_upper'">.</xsl:when> <!-- Example: I. -->
11092
+ </xsl:choose>
11093
+ </xsl:variable>
11094
+ <xsl:variable name="style_suffix" select="normalize-space($style_suffix_)"/>
11095
+
11096
+ <xsl:if test="$style_prefix != '' and not(starts-with(@label, $style_prefix))">
11097
+ <xsl:value-of select="$style_prefix"/>
11098
+ </xsl:if>
11099
+ <xsl:value-of select="@label"/>
11100
+ <xsl:if test="not(java:endsWith(java:java.lang.String.new(@label),$style_suffix))">
11101
+ <xsl:value-of select="$style_suffix"/>
11102
+ </xsl:if>
11103
+ </xsl:variable>
11104
+
11105
+ <xsl:value-of select="normalize-space($label)"/>
11106
+
10907
11107
  </xsl:when>
10908
11108
  <xsl:otherwise> <!-- for ordered lists 'ol' -->
10909
11109
 
@@ -10985,7 +11185,7 @@
10985
11185
  <xsl:template match="*[local-name() = 'ul'] | *[local-name() = 'ol']">
10986
11186
  <xsl:choose>
10987
11187
  <xsl:when test="parent::*[local-name() = 'note'] or parent::*[local-name() = 'termnote']">
10988
- <fo:block-container>
11188
+ <fo:block-container role="SKIP">
10989
11189
  <xsl:attribute name="margin-left">
10990
11190
  <xsl:choose>
10991
11191
  <xsl:when test="not(ancestor::*[local-name() = 'table'])"><xsl:value-of select="$note-body-indent"/></xsl:when>
@@ -10995,7 +11195,7 @@
10995
11195
 
10996
11196
  <xsl:call-template name="refine_list_container_style"/>
10997
11197
 
10998
- <fo:block-container margin-left="0mm">
11198
+ <fo:block-container margin-left="0mm" role="SKIP">
10999
11199
  <fo:block>
11000
11200
  <xsl:apply-templates select="." mode="list"/>
11001
11201
  </fo:block>
@@ -11004,7 +11204,7 @@
11004
11204
  </xsl:when>
11005
11205
  <xsl:otherwise>
11006
11206
 
11007
- <fo:block>
11207
+ <fo:block role="SKIP">
11008
11208
  <xsl:apply-templates select="." mode="list"/>
11009
11209
  </fo:block>
11010
11210
 
@@ -11096,7 +11296,7 @@
11096
11296
  <xsl:call-template name="refine_list-item-style"/>
11097
11297
 
11098
11298
  <fo:list-item-label end-indent="label-end()">
11099
- <fo:block xsl:use-attribute-sets="list-item-label-style">
11299
+ <fo:block xsl:use-attribute-sets="list-item-label-style" role="SKIP">
11100
11300
 
11101
11301
  <xsl:call-template name="refine_list-item-label-style"/>
11102
11302
 
@@ -11110,7 +11310,7 @@
11110
11310
  </fo:block>
11111
11311
  </fo:list-item-label>
11112
11312
  <fo:list-item-body start-indent="body-start()" xsl:use-attribute-sets="list-item-body-style">
11113
- <fo:block>
11313
+ <fo:block role="SKIP">
11114
11314
 
11115
11315
  <xsl:call-template name="refine_list-item-body-style"/>
11116
11316
 
@@ -11389,10 +11589,10 @@
11389
11589
  <fo:table-body>
11390
11590
  <fo:table-row text-align="center" font-weight="bold" background-color="black" color="white">
11391
11591
 
11392
- <fo:table-cell border="1pt solid black"><fo:block>Date</fo:block></fo:table-cell>
11393
- <fo:table-cell border="1pt solid black"><fo:block>Type</fo:block></fo:table-cell>
11394
- <fo:table-cell border="1pt solid black"><fo:block>Change</fo:block></fo:table-cell>
11395
- <fo:table-cell border="1pt solid black"><fo:block>Pages</fo:block></fo:table-cell>
11592
+ <fo:table-cell border="1pt solid black"><fo:block role="SKIP">Date</fo:block></fo:table-cell>
11593
+ <fo:table-cell border="1pt solid black"><fo:block role="SKIP">Type</fo:block></fo:table-cell>
11594
+ <fo:table-cell border="1pt solid black"><fo:block role="SKIP">Change</fo:block></fo:table-cell>
11595
+ <fo:table-cell border="1pt solid black"><fo:block role="SKIP">Pages</fo:block></fo:table-cell>
11396
11596
  </fo:table-row>
11397
11597
  <xsl:apply-templates/>
11398
11598
  </fo:table-body>
@@ -11407,7 +11607,7 @@
11407
11607
 
11408
11608
  <xsl:template match="*[local-name() = 'errata']/*[local-name() = 'row']/*">
11409
11609
  <fo:table-cell border="1pt solid black" padding-left="1mm" padding-top="0.5mm">
11410
- <fo:block><xsl:apply-templates/></fo:block>
11610
+ <fo:block role="SKIP"><xsl:apply-templates/></fo:block>
11411
11611
  </fo:table-cell>
11412
11612
  </xsl:template>
11413
11613
  <!-- ============ -->
@@ -11422,7 +11622,16 @@
11422
11622
  <!-- Reference sections (Normative References and Bibliography) -->
11423
11623
  <!-- ========================================================== -->
11424
11624
  <xsl:template match="*[local-name() = 'references'][@hidden='true']" priority="3"/>
11425
- <xsl:template match="*[local-name() = 'bibitem'][@hidden='true']" priority="3"/>
11625
+ <xsl:template match="*[local-name() = 'bibitem'][@hidden='true']" priority="3">
11626
+ <xsl:param name="skip" select="normalize-space(preceding-sibling::*[1][local-name() = 'bibitem'] and 1 = 1)"/>
11627
+
11628
+ <xsl:if test="ancestor::*[local-name() = 'references'][not(@normative='true')] or preceding-sibling::*[local-name() = 'references'][1][not(@normative='true')]">
11629
+ <xsl:apply-templates select="following-sibling::*[1][local-name() = 'bibitem']">
11630
+ <xsl:with-param name="skip" select="$skip"/>
11631
+ </xsl:apply-templates>
11632
+ </xsl:if>
11633
+
11634
+ </xsl:template>
11426
11635
  <!-- don't display bibitem with @id starts with '_hidden', that was introduced for references integrity -->
11427
11636
  <xsl:template match="*[local-name() = 'bibitem'][starts-with(@id, 'hidden_bibitem_')]" priority="3"/>
11428
11637
 
@@ -11469,36 +11678,60 @@
11469
11678
 
11470
11679
  </xsl:template> <!-- bibitem -->
11471
11680
 
11681
+ <!-- start list for bibitem sequence -->
11682
+ <xsl:template match="*[local-name() = 'references'][not(@normative='true')]/*[local-name() = 'bibitem'][1]" priority="4">
11683
+ <xsl:variable name="list_items">
11684
+ <xsl:call-template name="insertListItem_Bibitem"/>
11685
+ </xsl:variable>
11686
+ <xsl:if test="normalize-space($list_items) != ''">
11687
+ <fo:list-block xsl:use-attribute-sets="bibitem-non-normative-list-style">
11688
+ <xsl:copy-of select="$list_items"/>
11689
+ </fo:list-block>
11690
+ </xsl:if>
11691
+ </xsl:template>
11692
+
11472
11693
  <!-- Bibliography (non-normative references) -->
11473
11694
  <xsl:template match="*[local-name() = 'references'][not(@normative='true')]/*[local-name() = 'bibitem']" name="bibitem_non_normative" priority="2">
11695
+ <xsl:param name="skip" select="normalize-space(preceding-sibling::*[1][local-name() = 'bibitem'] and 1 = 1)"/> <!-- current bibiitem is non-first -->
11474
11696
 
11475
- <!-- $namespace = 'csd' or $namespace = 'gb' or $namespace = 'iec' or $namespace = 'ieee' or $namespace = 'iso' or $namespace = 'jcgm' or $namespace = 'm3d' or
11476
- $namespace = 'mpfd' or $namespace = 'ogc' or $namespace = 'ogc-white-paper' -->
11477
- <!-- Example: [1] ISO 9:1995, Information and documentation – Transliteration of Cyrillic characters into Latin characters – Slavic and non-Slavic languages -->
11478
- <fo:list-block id="{@id}" xsl:use-attribute-sets="bibitem-non-normative-list-style">
11479
- <fo:list-item>
11480
- <fo:list-item-label end-indent="label-end()">
11481
- <fo:block>
11482
- <fo:inline>
11483
-
11484
- <xsl:apply-templates select="*[local-name() = 'biblio-tag']">
11485
- <xsl:with-param name="biblio_tag_part">first</xsl:with-param>
11486
- </xsl:apply-templates>
11487
- </fo:inline>
11488
- </fo:block>
11489
- </fo:list-item-label>
11490
- <fo:list-item-body start-indent="body-start()">
11491
- <fo:block xsl:use-attribute-sets="bibitem-non-normative-list-body-style">
11492
- <xsl:call-template name="processBibitem">
11493
- <xsl:with-param name="biblio_tag_part">last</xsl:with-param>
11494
- </xsl:call-template>
11495
- </fo:block>
11496
- </fo:list-item-body>
11497
- </fo:list-item>
11498
- </fo:list-block>
11697
+ <xsl:choose>
11698
+ <xsl:when test="$skip = 'true'"><!-- skip bibitem --></xsl:when>
11699
+ <xsl:otherwise>
11700
+ <xsl:call-template name="insertListItem_Bibitem"/>
11701
+ </xsl:otherwise>
11702
+ </xsl:choose>
11499
11703
 
11500
11704
  </xsl:template> <!-- references[not(@normative='true')]/bibitem -->
11501
11705
 
11706
+ <xsl:template name="insertListItem_Bibitem">
11707
+ <xsl:choose>
11708
+ <xsl:when test="@hidden = 'true'"><!-- skip --></xsl:when>
11709
+ <xsl:otherwise>
11710
+ <fo:list-item id="{@id}" xsl:use-attribute-sets="bibitem-non-normative-list-item-style">
11711
+ <fo:list-item-label end-indent="label-end()">
11712
+ <fo:block role="SKIP">
11713
+ <fo:inline role="SKIP">
11714
+ <xsl:apply-templates select="*[local-name() = 'biblio-tag']">
11715
+ <xsl:with-param name="biblio_tag_part">first</xsl:with-param>
11716
+ </xsl:apply-templates>
11717
+ </fo:inline>
11718
+ </fo:block>
11719
+ </fo:list-item-label>
11720
+ <fo:list-item-body start-indent="body-start()">
11721
+ <fo:block xsl:use-attribute-sets="bibitem-non-normative-list-body-style" role="SKIP">
11722
+ <xsl:call-template name="processBibitem">
11723
+ <xsl:with-param name="biblio_tag_part">last</xsl:with-param>
11724
+ </xsl:call-template>
11725
+ </fo:block>
11726
+ </fo:list-item-body>
11727
+ </fo:list-item>
11728
+ </xsl:otherwise>
11729
+ </xsl:choose>
11730
+ <xsl:apply-templates select="following-sibling::*[1][local-name() = 'bibitem']">
11731
+ <xsl:with-param name="skip">false</xsl:with-param>
11732
+ </xsl:apply-templates>
11733
+ </xsl:template>
11734
+
11502
11735
  <xsl:template name="processBibitem">
11503
11736
  <xsl:param name="biblio_tag_part">both</xsl:param>
11504
11737
 
@@ -11710,7 +11943,7 @@
11710
11943
  <xsl:for-each select="*[local-name() = 'tab']">
11711
11944
  <xsl:variable name="current_id" select="generate-id()"/>
11712
11945
  <fo:table-cell>
11713
- <fo:block line-height-shift-adjustment="disregard-shifts">
11946
+ <fo:block line-height-shift-adjustment="disregard-shifts" role="SKIP">
11714
11947
  <xsl:call-template name="insert_basic_link">
11715
11948
  <xsl:with-param name="element">
11716
11949
  <fo:basic-link internal-destination="{$target}" fox:alt-text="{.}">
@@ -11728,7 +11961,7 @@
11728
11961
  </xsl:for-each>
11729
11962
  <!-- last column - for page numbers -->
11730
11963
  <fo:table-cell text-align="right" font-size="10pt" font-weight="bold" font-family="Arial">
11731
- <fo:block>
11964
+ <fo:block role="SKIP">
11732
11965
  <xsl:call-template name="insert_basic_link">
11733
11966
  <xsl:with-param name="element">
11734
11967
  <fo:basic-link internal-destination="{$target}" fox:alt-text="{.}">