metanorma-iso 2.1.1 → 2.1.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/html2doc/lists.rb +142 -10
- data/lib/isodoc/iso/base_convert.rb +10 -0
- data/lib/isodoc/iso/html/html_iso_titlepage.html +2 -0
- data/lib/isodoc/iso/html/isodoc-dis.css +170 -252
- data/lib/isodoc/iso/html/isodoc-dis.scss +170 -245
- data/lib/isodoc/iso/html/isodoc.css +38 -13
- data/lib/isodoc/iso/html/isodoc.scss +38 -12
- data/lib/isodoc/iso/html/style-human.css +14 -1
- data/lib/isodoc/iso/html/style-human.scss +10 -1
- data/lib/isodoc/iso/html/style-iso.css +35 -23
- data/lib/isodoc/iso/html/style-iso.scss +31 -23
- data/lib/isodoc/iso/html/word_iso_intro-dis.html +1 -6
- data/lib/isodoc/iso/html/word_iso_titlepage-dis.html +24 -13
- data/lib/isodoc/iso/html/word_iso_titlepage-prf.html +58 -0
- data/lib/isodoc/iso/html/word_iso_titlepage.html +6 -2
- data/lib/isodoc/iso/html_convert.rb +5 -0
- data/lib/isodoc/iso/i18n-en.yaml +32 -4
- data/lib/isodoc/iso/i18n-fr.yaml +29 -3
- data/lib/isodoc/iso/i18n-ru.yaml +32 -4
- data/lib/isodoc/iso/i18n-zh-Hans.yaml +32 -3
- data/lib/isodoc/iso/i18n.rb +1 -1
- data/lib/isodoc/iso/iso.amendment.xsl +332 -187
- data/lib/isodoc/iso/iso.international-standard.xsl +332 -187
- data/lib/isodoc/iso/metadata.rb +63 -63
- data/lib/isodoc/iso/presentation_bibdata.rb +74 -0
- data/lib/isodoc/iso/presentation_xml_convert.rb +14 -3
- data/lib/isodoc/iso/presentation_xref.rb +8 -2
- data/lib/isodoc/iso/sections.rb +1 -1
- data/lib/isodoc/iso/word_cleanup.rb +3 -0
- data/lib/isodoc/iso/word_convert.rb +6 -3
- data/lib/isodoc/iso/word_dis_cleanup.rb +235 -0
- data/lib/isodoc/iso/word_dis_convert.rb +47 -108
- data/lib/isodoc/iso/xref.rb +34 -6
- data/lib/metanorma/iso/base.rb +20 -1
- data/lib/metanorma/iso/biblio.rng +32 -34
- data/lib/metanorma/iso/boilerplate-fr.xml +3 -0
- data/lib/metanorma/iso/boilerplate-ru.xml +3 -0
- data/lib/metanorma/iso/boilerplate.xml +3 -0
- data/lib/metanorma/iso/cleanup.rb +28 -1
- data/lib/metanorma/iso/front.rb +31 -6
- data/lib/metanorma/iso/front_id.rb +2 -0
- data/lib/metanorma/iso/isodoc.rng +9 -0
- data/lib/metanorma/iso/isostandard.rng +30 -12
- data/lib/metanorma/iso/macros.rb +29 -0
- data/lib/metanorma/iso/version.rb +1 -1
- data/spec/isodoc/amd_spec.rb +4 -30
- data/spec/isodoc/blocks_spec.rb +499 -2
- data/spec/isodoc/i18n_spec.rb +145 -80
- data/spec/isodoc/iso_spec.rb +50 -169
- data/spec/isodoc/metadata_spec.rb +224 -83
- data/spec/isodoc/postproc_spec.rb +41 -5
- data/spec/isodoc/section_spec.rb +12 -6
- data/spec/isodoc/word_dis_spec.rb +1273 -147
- data/spec/isodoc/xref_spec.rb +87 -13
- data/spec/metanorma/amd_spec.rb +53 -1
- data/spec/metanorma/base_spec.rb +185 -10
- data/spec/metanorma/blocks_spec.rb +54 -0
- data/spec/metanorma/lists_spec.rb +2 -2
- data/spec/metanorma/section_spec.rb +2 -2
- data/spec/spec_helper.rb +13 -4
- data/spec/vcr_cassettes/withdrawn_iso.yml +27 -27
- metadata +7 -8
- data/docs/asciiiso-syntax.adoc +0 -307
- data/docs/guidance.adoc +0 -487
- data/docs/navigation.adoc +0 -23
- data/docs/quickstart.adoc +0 -179
- data/lib/isodoc/iso/presentation_inline.rb +0 -90
@@ -195,22 +195,48 @@
|
|
195
195
|
</xsl:variable>
|
196
196
|
|
197
197
|
<xsl:variable name="editorialgroup_">
|
198
|
-
|
199
|
-
|
200
|
-
|
201
|
-
|
202
|
-
<xsl:
|
203
|
-
<xsl:
|
198
|
+
<!-- Example: ISO/TC 46/SC 2 -->
|
199
|
+
<!-- ISO/SG SMART/SG TS/AG 1 -->
|
200
|
+
<xsl:variable name="approvalgroup" select="normalize-space(/iso:iso-standard/iso:bibdata/iso:ext/iso:approvalgroup/@identifier)"/>
|
201
|
+
<xsl:variable name="parts_by_slash">
|
202
|
+
<xsl:call-template name="split">
|
203
|
+
<xsl:with-param name="pText" select="$approvalgroup"/>
|
204
|
+
<xsl:with-param name="sep" select="'/'"/>
|
205
|
+
<xsl:with-param name="normalize-space">false</xsl:with-param>
|
206
|
+
<xsl:with-param name="keep_sep">true</xsl:with-param>
|
207
|
+
</xsl:call-template>
|
208
|
+
</xsl:variable>
|
209
|
+
<xsl:variable name="parts_with_subparts">
|
210
|
+
<xsl:for-each select="xalan:nodeset($parts_by_slash)//item">
|
211
|
+
<subitem>
|
212
|
+
<xsl:call-template name="split">
|
213
|
+
<xsl:with-param name="pText" select="."/>
|
214
|
+
<xsl:with-param name="sep" select="' '"/>
|
215
|
+
<xsl:with-param name="normalize-space">false</xsl:with-param>
|
216
|
+
<xsl:with-param name="keep_sep">true</xsl:with-param>
|
217
|
+
</xsl:call-template>
|
218
|
+
</subitem>
|
204
219
|
</xsl:for-each>
|
205
|
-
<xsl:if test="not($stage-abbreviation = 'DIS' or $stage-abbreviation = 'FDIS')">
|
206
|
-
<xsl:for-each select="/iso:iso-standard/iso:bibdata/iso:ext/iso:editorialgroup/iso:workgroup[normalize-space(@number) != '']">
|
207
|
-
<xsl:text>/WG </xsl:text><fo:inline font-weight="bold"><xsl:value-of select="@number"/></fo:inline>
|
208
|
-
</xsl:for-each>
|
209
|
-
</xsl:if>
|
210
220
|
</xsl:variable>
|
211
|
-
<xsl:
|
212
|
-
<xsl:
|
213
|
-
|
221
|
+
<xsl:for-each select="xalan:nodeset($parts_with_subparts)//subitem">
|
222
|
+
<xsl:choose>
|
223
|
+
<xsl:when test="position() = 1">
|
224
|
+
<xsl:value-of select="."/>
|
225
|
+
</xsl:when>
|
226
|
+
<xsl:otherwise>
|
227
|
+
<xsl:for-each select="item">
|
228
|
+
<xsl:choose>
|
229
|
+
<xsl:when test="position() = last()">
|
230
|
+
<fo:inline font-weight="bold"><xsl:value-of select="."/></fo:inline>
|
231
|
+
</xsl:when>
|
232
|
+
<xsl:otherwise>
|
233
|
+
<xsl:value-of select="."/>
|
234
|
+
</xsl:otherwise>
|
235
|
+
</xsl:choose>
|
236
|
+
</xsl:for-each>
|
237
|
+
</xsl:otherwise>
|
238
|
+
</xsl:choose>
|
239
|
+
</xsl:for-each>
|
214
240
|
</xsl:variable>
|
215
241
|
<xsl:variable name="editorialgroup" select="xalan:nodeset($editorialgroup_)"/>
|
216
242
|
|
@@ -264,25 +290,25 @@
|
|
264
290
|
</fo:simple-page-master>
|
265
291
|
|
266
292
|
<fo:simple-page-master master-name="cover-page-published" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
|
267
|
-
<fo:region-body margin-top="12.7mm" margin-bottom="
|
293
|
+
<fo:region-body margin-top="12.7mm" margin-bottom="75mm" margin-left="78mm" margin-right="18.5mm"/>
|
268
294
|
<fo:region-before region-name="cover-page-header" extent="12.7mm"/>
|
269
|
-
<fo:region-after region-name="cover-page-footer" extent="
|
295
|
+
<fo:region-after region-name="cover-page-footer" extent="75mm" display-align="after"/>
|
270
296
|
<fo:region-start region-name="cover-left-region" extent="78mm"/>
|
271
297
|
<fo:region-end region-name="cover-right-region" extent="18.5mm"/>
|
272
298
|
</fo:simple-page-master>
|
273
299
|
|
274
300
|
|
275
301
|
<fo:simple-page-master master-name="cover-page-publishedISO-odd" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
|
276
|
-
<fo:region-body margin-top="12.7mm" margin-bottom="
|
302
|
+
<fo:region-body margin-top="12.7mm" margin-bottom="75mm" margin-left="{$marginLeftRight1}mm" margin-right="{$marginLeftRight2}mm"/>
|
277
303
|
<fo:region-before region-name="cover-page-header" extent="12.7mm"/>
|
278
|
-
<fo:region-after region-name="cover-page-footer" extent="
|
304
|
+
<fo:region-after region-name="cover-page-footer" extent="75mm" display-align="after"/>
|
279
305
|
<fo:region-start region-name="cover-left-region" extent="{$marginLeftRight1}mm"/>
|
280
306
|
<fo:region-end region-name="cover-right-region" extent="{$marginLeftRight2}mm"/>
|
281
307
|
</fo:simple-page-master>
|
282
308
|
<fo:simple-page-master master-name="cover-page-publishedISO-even" page-width="{$pageWidth}mm" page-height="{$pageHeight}mm">
|
283
|
-
<fo:region-body margin-top="12.7mm" margin-bottom="
|
309
|
+
<fo:region-body margin-top="12.7mm" margin-bottom="75mm" margin-left="{$marginLeftRight2}mm" margin-right="{$marginLeftRight1}mm"/>
|
284
310
|
<fo:region-before region-name="cover-page-header" extent="12.7mm"/>
|
285
|
-
<fo:region-after region-name="cover-page-footer" extent="
|
311
|
+
<fo:region-after region-name="cover-page-footer" extent="75mm" display-align="after"/>
|
286
312
|
<fo:region-start region-name="cover-left-region" extent="{$marginLeftRight2}mm"/>
|
287
313
|
<fo:region-end region-name="cover-right-region" extent="{$marginLeftRight1}mm"/>
|
288
314
|
</fo:simple-page-master>
|
@@ -431,9 +457,9 @@
|
|
431
457
|
<fo:table-column column-width="112.5mm"/>
|
432
458
|
<fo:table-body>
|
433
459
|
<fo:table-row>
|
434
|
-
<fo:table-cell font-size="6.5pt" text-align="justify" display-align="after" padding-bottom="8mm"
|
460
|
+
<fo:table-cell font-size="6.5pt" text-align="justify" display-align="after" padding-bottom="8mm">
|
435
461
|
<!-- margin-top="-30mm" -->
|
436
|
-
<fo:block margin-top="-100mm"
|
462
|
+
<fo:block> <!-- margin-top="-100mm" -->
|
437
463
|
<xsl:if test="$stage-abbreviation = 'DIS' or $stage-abbreviation = 'NWIP' or $stage-abbreviation = 'NP' or $stage-abbreviation = 'PWI' or $stage-abbreviation = 'AWI' or $stage-abbreviation = 'WD' or $stage-abbreviation = 'CD'">
|
438
464
|
<fo:block margin-bottom="1.5mm">
|
439
465
|
<xsl:text>THIS DOCUMENT IS A DRAFT CIRCULATED FOR COMMENT AND APPROVAL. IT IS THEREFORE SUBJECT TO CHANGE AND MAY NOT BE REFERRED TO AS AN INTERNATIONAL STANDARD UNTIL PUBLISHED AS SUCH.</xsl:text>
|
@@ -463,17 +489,50 @@
|
|
463
489
|
<fo:table-cell>
|
464
490
|
<fo:block> </fo:block>
|
465
491
|
</fo:table-cell>
|
466
|
-
<fo:table-cell>
|
467
|
-
<
|
468
|
-
|
469
|
-
|
470
|
-
|
471
|
-
|
472
|
-
|
473
|
-
|
492
|
+
<fo:table-cell display-align="after" padding-bottom="3mm">
|
493
|
+
<fo:block-container height="22.5mm" display-align="center">
|
494
|
+
|
495
|
+
<xsl:variable name="iso-fast-track">false</xsl:variable>
|
496
|
+
|
497
|
+
<xsl:if test="normalize-space($iso-fast-track) = 'true'">
|
498
|
+
<xsl:attribute name="height">28mm</xsl:attribute>
|
499
|
+
</xsl:if>
|
500
|
+
|
501
|
+
<fo:block>
|
502
|
+
<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 = 'DIS' or $stage-abbreviation = 'FDIS'">
|
503
|
+
<xsl:variable name="text">
|
504
|
+
<xsl:for-each select="/iso:iso-standard/iso:preface/iso:note[@coverpage='true']/iso:p">
|
505
|
+
<fo:block>
|
506
|
+
<xsl:apply-templates/>
|
507
|
+
</fo:block>
|
508
|
+
</xsl:for-each>
|
509
|
+
</xsl:variable>
|
510
|
+
<xsl:if test="normalize-space($text) != ''">
|
511
|
+
<fo:block-container margin-left="1mm"> <!-- margin-bottom="7mm" margin-top="-15mm" -->
|
512
|
+
<fo:block font-size="9pt" border="0.5pt solid black" fox:border-radius="5pt" padding-left="2mm" padding-top="2mm" padding-bottom="2mm">
|
513
|
+
<!-- <xsl:text>This document is circulated as received from the committee secretariat.</xsl:text> -->
|
514
|
+
<xsl:copy-of select="xalan:nodeset($text)/node()"/>
|
515
|
+
</fo:block>
|
516
|
+
</fo:block-container>
|
517
|
+
</xsl:if>
|
518
|
+
|
519
|
+
<xsl:if test="normalize-space($iso-fast-track) = 'true'">
|
520
|
+
<fo:block-container space-before="2mm">
|
521
|
+
<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">
|
522
|
+
<fo:block-container height="13.2mm">
|
523
|
+
<fo:block>
|
524
|
+
<xsl:text>FAST TRACK PROCEDURE</xsl:text>
|
525
|
+
</fo:block>
|
526
|
+
</fo:block-container>
|
527
|
+
</fo:block>
|
528
|
+
</fo:block-container>
|
529
|
+
</xsl:if>
|
530
|
+
</xsl:if>
|
531
|
+
</fo:block>
|
532
|
+
</fo:block-container>
|
474
533
|
<fo:block>
|
475
534
|
<xsl:call-template name="insertTripleLine"/>
|
476
|
-
<fo:table table-layout="fixed" width="100%" margin-bottom="3mm"
|
535
|
+
<fo:table table-layout="fixed" width="100%"> <!-- margin-bottom="3mm" -->
|
477
536
|
<fo:table-column column-width="50%"/>
|
478
537
|
<fo:table-column column-width="50%"/>
|
479
538
|
<fo:table-body>
|
@@ -713,7 +772,7 @@
|
|
713
772
|
<xsl:call-template name="printEdition"/>
|
714
773
|
</xsl:if>
|
715
774
|
<xsl:choose>
|
716
|
-
<xsl:when test="($stage-abbreviation = 'PWI' or $stage-abbreviation = 'AWI' or $stage-abbreviation = 'WD' or $stage-abbreviation = 'CD') and /iso:iso-standard/iso:bibdata/iso:version/iso:revision-date">
|
775
|
+
<xsl:when 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') and /iso:iso-standard/iso:bibdata/iso:version/iso:revision-date">
|
717
776
|
<xsl:value-of select="$linebreak"/>
|
718
777
|
<xsl:value-of select="/iso:iso-standard/iso:bibdata/iso:version/iso:revision-date"/>
|
719
778
|
</xsl:when>
|
@@ -756,7 +815,7 @@
|
|
756
815
|
<fo:table-cell><fo:block/></fo:table-cell>
|
757
816
|
<fo:table-cell number-columns-spanned="2" font-size="10pt" line-height="1.2" display-align="center">
|
758
817
|
<fo:block>
|
759
|
-
<xsl:if test="$stage-abbreviation = 'PWI' or $stage-abbreviation = 'AWI' or $stage-abbreviation = 'WD' or $stage-abbreviation = 'CD'">
|
818
|
+
<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'">
|
760
819
|
<fo:table table-layout="fixed" width="100%">
|
761
820
|
<fo:table-column column-width="50%"/>
|
762
821
|
<fo:table-column column-width="50%"/>
|
@@ -868,7 +927,7 @@
|
|
868
927
|
</fo:block>
|
869
928
|
</xsl:for-each>
|
870
929
|
|
871
|
-
<xsl:if test="$stage-abbreviation = 'PWI' or $stage-abbreviation = 'AWI' or $stage-abbreviation = 'WD' or $stage-abbreviation = 'CD'">
|
930
|
+
<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'">
|
872
931
|
<fo:block margin-top="10mm">
|
873
932
|
<xsl:copy-of select="$ics"/>
|
874
933
|
</fo:block>
|
@@ -2017,16 +2076,43 @@
|
|
2017
2076
|
<xsl:text>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</xsl:text>
|
2018
2077
|
</xsl:variable>
|
2019
2078
|
|
2020
|
-
<xsl:param name="svg_images"/><xsl:variable name="images" select="document($svg_images)"/><xsl:param name="basepath"/><xsl:param name="external_index"/><xsl:param name="syntax-highlight">false</xsl:param><xsl:param name="add_math_as_text">true</xsl:param><xsl:param name="table_if">false</xsl:param><xsl:param name="table_widths"/><xsl:variable name="table_widths_from_if" select="xalan:nodeset($table_widths)"/><xsl:
|
2079
|
+
<xsl:param name="svg_images"/><xsl:variable name="images" select="document($svg_images)"/><xsl:param name="basepath"/><xsl:param name="external_index"/><xsl:param name="syntax-highlight">false</xsl:param><xsl:param name="add_math_as_text">true</xsl:param><xsl:param name="table_if">false</xsl:param><xsl:param name="table_widths"/><xsl:variable name="table_widths_from_if" select="xalan:nodeset($table_widths)"/><xsl:variable name="table_widths_from_if_calculated_">
|
2080
|
+
<xsl:for-each select="$table_widths_from_if//table">
|
2081
|
+
<xsl:copy>
|
2082
|
+
<xsl:copy-of select="@*"/>
|
2083
|
+
<xsl:call-template name="calculate-column-widths-autolayout-algorithm"/>
|
2084
|
+
</xsl:copy>
|
2085
|
+
</xsl:for-each>
|
2086
|
+
</xsl:variable><xsl:variable name="table_widths_from_if_calculated" select="xalan:nodeset($table_widths_from_if_calculated_)"/><xsl:param name="table_if_debug">false</xsl:param><xsl:variable name="isGenerateTableIF_">
|
2021
2087
|
|
2022
2088
|
<xsl:value-of select="normalize-space($table_if) = 'true'"/>
|
2023
2089
|
|
2024
2090
|
</xsl:variable><xsl:variable name="isGenerateTableIF" select="normalize-space($isGenerateTableIF_)"/><xsl:variable name="lang">
|
2025
2091
|
<xsl:call-template name="getLang"/>
|
2026
|
-
</xsl:variable><xsl:variable name="
|
2027
|
-
|
2092
|
+
</xsl:variable><xsl:variable name="papersize" select="java:toLowerCase(java:java.lang.String.new(normalize-space(//*[contains(local-name(), '-standard')]/*[local-name() = 'misc-container']/*[local-name() = 'presentation-metadata']/*[local-name() = 'papersize'])))"/><xsl:variable name="papersize_width_">
|
2093
|
+
<xsl:choose>
|
2094
|
+
<xsl:when test="$papersize = 'letter'">215.9</xsl:when>
|
2095
|
+
<xsl:when test="$papersize = 'a4'">210</xsl:when>
|
2096
|
+
</xsl:choose>
|
2097
|
+
</xsl:variable><xsl:variable name="papersize_width" select="normalize-space($papersize_width_)"/><xsl:variable name="papersize_height_">
|
2098
|
+
<xsl:choose>
|
2099
|
+
<xsl:when test="$papersize = 'letter'">279.4</xsl:when>
|
2100
|
+
<xsl:when test="$papersize = 'a4'">297</xsl:when>
|
2101
|
+
</xsl:choose>
|
2102
|
+
</xsl:variable><xsl:variable name="papersize_height" select="normalize-space($papersize_height_)"/><xsl:variable name="pageWidth_">
|
2103
|
+
<xsl:choose>
|
2104
|
+
<xsl:when test="$papersize_width != ''"><xsl:value-of select="$papersize_width"/></xsl:when>
|
2105
|
+
<xsl:otherwise>
|
2106
|
+
210
|
2107
|
+
</xsl:otherwise>
|
2108
|
+
</xsl:choose>
|
2028
2109
|
</xsl:variable><xsl:variable name="pageWidth" select="normalize-space($pageWidth_)"/><xsl:variable name="pageHeight_">
|
2029
|
-
|
2110
|
+
<xsl:choose>
|
2111
|
+
<xsl:when test="$papersize_height != ''"><xsl:value-of select="$papersize_height"/></xsl:when>
|
2112
|
+
<xsl:otherwise>
|
2113
|
+
297
|
2114
|
+
</xsl:otherwise>
|
2115
|
+
</xsl:choose>
|
2030
2116
|
</xsl:variable><xsl:variable name="pageHeight" select="normalize-space($pageHeight_)"/><xsl:variable name="marginLeftRight1_">
|
2031
2117
|
25
|
2032
2118
|
</xsl:variable><xsl:variable name="marginLeftRight1" select="normalize-space($marginLeftRight1_)"/><xsl:variable name="marginLeftRight2_">
|
@@ -2636,6 +2722,25 @@
|
|
2636
2722
|
|
2637
2723
|
|
2638
2724
|
|
2725
|
+
</xsl:attribute-set><xsl:attribute-set name="dl-name-style">
|
2726
|
+
<xsl:attribute name="keep-with-next">always</xsl:attribute>
|
2727
|
+
<xsl:attribute name="margin-bottom">6pt</xsl:attribute>
|
2728
|
+
|
2729
|
+
|
2730
|
+
|
2731
|
+
|
2732
|
+
|
2733
|
+
|
2734
|
+
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
2735
|
+
|
2736
|
+
|
2737
|
+
|
2738
|
+
|
2739
|
+
|
2740
|
+
|
2741
|
+
|
2742
|
+
|
2743
|
+
|
2639
2744
|
</xsl:attribute-set><xsl:attribute-set name="dd-cell-style">
|
2640
2745
|
<xsl:attribute name="padding-left">2mm</xsl:attribute>
|
2641
2746
|
</xsl:attribute-set><xsl:attribute-set name="appendix-style">
|
@@ -2962,6 +3067,25 @@
|
|
2962
3067
|
|
2963
3068
|
|
2964
3069
|
|
3070
|
+
</xsl:attribute-set><xsl:attribute-set name="list-name-style">
|
3071
|
+
<xsl:attribute name="keep-with-next">always</xsl:attribute>
|
3072
|
+
|
3073
|
+
|
3074
|
+
|
3075
|
+
|
3076
|
+
|
3077
|
+
|
3078
|
+
<xsl:attribute name="margin-top">8pt</xsl:attribute>
|
3079
|
+
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
3080
|
+
|
3081
|
+
|
3082
|
+
|
3083
|
+
|
3084
|
+
|
3085
|
+
|
3086
|
+
|
3087
|
+
|
3088
|
+
|
2965
3089
|
</xsl:attribute-set><xsl:attribute-set name="list-item-style">
|
2966
3090
|
|
2967
3091
|
|
@@ -3356,13 +3480,13 @@
|
|
3356
3480
|
|
3357
3481
|
</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">
|
3358
3482
|
<xsl:variable name="nodes_preface_">
|
3359
|
-
<xsl:for-each select="/*/*[local-name()='preface']/*">
|
3483
|
+
<xsl:for-each select="/*/*[local-name()='preface']/*[not(local-name() = 'note' or local-name() = 'admonition')]">
|
3360
3484
|
<node id="{@id}"/>
|
3361
3485
|
</xsl:for-each>
|
3362
3486
|
</xsl:variable>
|
3363
3487
|
<xsl:variable name="nodes_preface" select="xalan:nodeset($nodes_preface_)"/>
|
3364
3488
|
|
3365
|
-
<xsl:for-each select="/*/*[local-name()='preface']/*">
|
3489
|
+
<xsl:for-each select="/*/*[local-name()='preface']/*[not(local-name() = 'note' or local-name() = 'admonition')]">
|
3366
3490
|
<xsl:sort select="@displayorder" data-type="number"/>
|
3367
3491
|
|
3368
3492
|
<!-- process Section's title -->
|
@@ -3428,7 +3552,7 @@
|
|
3428
3552
|
</xsl:for-each>
|
3429
3553
|
</figures>
|
3430
3554
|
</xsl:template><xsl:template name="processPrefaceSectionsDefault">
|
3431
|
-
<xsl:for-each select="/*/*[local-name()='preface']/*">
|
3555
|
+
<xsl:for-each select="/*/*[local-name()='preface']/*[not(local-name() = 'note' or local-name() = 'admonition')]">
|
3432
3556
|
<xsl:sort select="@displayorder" data-type="number"/>
|
3433
3557
|
<xsl:apply-templates select="."/>
|
3434
3558
|
</xsl:for-each>
|
@@ -3895,11 +4019,7 @@
|
|
3895
4019
|
<xsl:param name="table"/>
|
3896
4020
|
<xsl:param name="cols-count"/>
|
3897
4021
|
|
3898
|
-
<xsl:call-template name="
|
3899
|
-
<xsl:with-param name="cols-count" select="$cols-count"/>
|
3900
|
-
<xsl:with-param name="table" select="$table"/>
|
3901
|
-
<xsl:with-param name="if">true</xsl:with-param>
|
3902
|
-
</xsl:call-template>
|
4022
|
+
<xsl:call-template name="get-calculated-column-widths-autolayout-algorithm"/>
|
3903
4023
|
|
3904
4024
|
</xsl:template><xsl:template name="calculate-column-widths-proportional">
|
3905
4025
|
<xsl:param name="table"/>
|
@@ -4047,8 +4167,9 @@
|
|
4047
4167
|
<xsl:value-of select="translate($math_text, ' ', '#')"/><!-- mathml images as one 'word' without spaces -->
|
4048
4168
|
</xsl:if>
|
4049
4169
|
</xsl:template><xsl:template name="calculate-column-widths-autolayout-algorithm">
|
4050
|
-
<xsl:param name="
|
4051
|
-
|
4170
|
+
<xsl:param name="parent_table_page-width"/> <!-- for nested tables, in re-calculate step -->
|
4171
|
+
|
4172
|
+
<!-- via intermediate format -->
|
4052
4173
|
|
4053
4174
|
<!-- The algorithm uses two passes through the table data and scales linearly with the size of the table -->
|
4054
4175
|
|
@@ -4059,9 +4180,8 @@
|
|
4059
4180
|
<!-- get current table id -->
|
4060
4181
|
<xsl:variable name="table_id" select="@id"/>
|
4061
4182
|
<!-- find table by id in the file 'table_widths' -->
|
4062
|
-
|
4063
|
-
<xsl:variable name="table-if" select="xalan:nodeset($table-if_)"/>
|
4064
|
-
|
4183
|
+
<!-- <xsl:variable name="table-if_" select="$table_widths_from_if//table[@id = $table_id]"/>
|
4184
|
+
<xsl:variable name="table-if" select="xalan:nodeset($table-if_)"/> -->
|
4065
4185
|
|
4066
4186
|
<!-- table='<xsl:copy-of select="$table"/>' -->
|
4067
4187
|
<!-- table_id='<xsl:value-of select="$table_id"/>\ -->
|
@@ -4069,24 +4189,13 @@
|
|
4069
4189
|
<!-- table_widths_from_if='<xsl:copy-of select="$table_widths_from_if"/>' -->
|
4070
4190
|
|
4071
4191
|
<xsl:variable name="table_with_cell_widths_">
|
4072
|
-
<xsl:
|
4073
|
-
<xsl:when test="$if = 'true' and normalize-space($table-if) != ''"> <!-- if we read column's width from IF and there is table in IF -->
|
4074
|
-
|
4075
|
-
<!-- Example: <column>10</column>
|
4076
|
-
<column>11</column>
|
4077
|
-
-->
|
4078
|
-
<xsl:apply-templates select="$table-if" mode="determine_cell_widths-if"/>
|
4079
|
-
</xsl:when>
|
4080
|
-
<xsl:otherwise>
|
4081
|
-
<xsl:apply-templates select="xalan:nodeset($table)" mode="determine_cell_widths"/>
|
4082
|
-
</xsl:otherwise>
|
4083
|
-
</xsl:choose>
|
4192
|
+
<xsl:apply-templates select="." mode="determine_cell_widths-if"/> <!-- read column's width from IF -->
|
4084
4193
|
</xsl:variable>
|
4085
4194
|
<xsl:variable name="table_with_cell_widths" select="xalan:nodeset($table_with_cell_widths_)"/>
|
4086
4195
|
|
4087
|
-
<xsl:if test="$table_if_debug = 'true'">
|
4196
|
+
<!-- <xsl:if test="$table_if_debug = 'true'">
|
4088
4197
|
<xsl:copy-of select="$table_with_cell_widths"/>
|
4089
|
-
</xsl:if>
|
4198
|
+
</xsl:if> -->
|
4090
4199
|
|
4091
4200
|
|
4092
4201
|
<!-- The minimum and maximum cell widths are then used to determine the corresponding minimum and maximum widths for the columns. -->
|
@@ -4132,8 +4241,12 @@
|
|
4132
4241
|
|
4133
4242
|
<xsl:variable name="page_width">
|
4134
4243
|
<xsl:choose>
|
4135
|
-
<xsl:when test="$
|
4136
|
-
|
4244
|
+
<xsl:when test="$parent_table_page-width != ''">
|
4245
|
+
<xsl:value-of select="$parent_table_page-width"/>
|
4246
|
+
</xsl:when>
|
4247
|
+
<xsl:otherwise>
|
4248
|
+
<xsl:value-of select="@page-width"/>
|
4249
|
+
</xsl:otherwise>
|
4137
4250
|
</xsl:choose>
|
4138
4251
|
</xsl:variable>
|
4139
4252
|
|
@@ -4141,9 +4254,6 @@
|
|
4141
4254
|
<table_width>
|
4142
4255
|
<xsl:copy-of select="$table_widths"/>
|
4143
4256
|
</table_width>
|
4144
|
-
<!-- <debug>$table_widths/@width_min=<xsl:value-of select="$table_widths/table/@width_min"/></debug>
|
4145
|
-
<debug>$table_widths/@width_max=<xsl:value-of select="$table_widths/table/@width_max"/></debug>
|
4146
|
-
-->
|
4147
4257
|
<debug>$page_width=<xsl:value-of select="$page_width"/></debug>
|
4148
4258
|
</xsl:if>
|
4149
4259
|
|
@@ -4154,11 +4264,11 @@
|
|
4154
4264
|
<xsl:when test="$table_widths/table/@width_min >= $page_width and 1 = 2"> <!-- this condition isn't working see case 3 below -->
|
4155
4265
|
<!-- call old algorithm -->
|
4156
4266
|
<case1/>
|
4157
|
-
<xsl:variable name="cols-count" select="count(xalan:nodeset($table)/*/tr[1]/td)"/>
|
4267
|
+
<!-- <xsl:variable name="cols-count" select="count(xalan:nodeset($table)/*/tr[1]/td)"/>
|
4158
4268
|
<xsl:call-template name="calculate-column-widths-proportional">
|
4159
4269
|
<xsl:with-param name="cols-count" select="$cols-count"/>
|
4160
4270
|
<xsl:with-param name="table" select="$table"/>
|
4161
|
-
</xsl:call-template>
|
4271
|
+
</xsl:call-template> -->
|
4162
4272
|
</xsl:when>
|
4163
4273
|
<!-- 2. The maximum table width fits within the available space. In this case, set the columns to their maximum widths. -->
|
4164
4274
|
<xsl:when test="$table_widths/table/@width_max <= $page_width">
|
@@ -4202,95 +4312,49 @@
|
|
4202
4312
|
<xsl:otherwise><unknown_case/></xsl:otherwise>
|
4203
4313
|
</xsl:choose>
|
4204
4314
|
|
4315
|
+
</xsl:template><xsl:template name="get-calculated-column-widths-autolayout-algorithm">
|
4205
4316
|
|
4206
|
-
|
4207
|
-
<xsl:
|
4208
|
-
|
4209
|
-
</xsl:copy>
|
4210
|
-
</xsl:template><xsl:template match="td | th" mode="determine_cell_widths">
|
4211
|
-
<xsl:copy>
|
4212
|
-
<xsl:copy-of select="@*"/>
|
4317
|
+
<!-- if nested 'dl' or 'table' -->
|
4318
|
+
<xsl:variable name="parent_table_id" select="normalize-space(ancestor::*[local-name() = 'table' or local-name() = 'dl'][1]/@id)"/>
|
4319
|
+
<parent_table_id><xsl:value-of select="$parent_table_id"/></parent_table_id>
|
4213
4320
|
|
4214
|
-
|
4215
|
-
<xsl:variable name="widths_max">
|
4216
|
-
<xsl:for-each select=".//*[local-name() = 'p']">
|
4217
|
-
<xsl:call-template name="add_width"/>
|
4218
|
-
</xsl:for-each>
|
4219
|
-
<xsl:if test="not(*[local-name() = 'p'])">
|
4220
|
-
<xsl:call-template name="add_width"/>
|
4221
|
-
</xsl:if>
|
4222
|
-
</xsl:variable>
|
4223
|
-
<xsl:variable name="width_max">
|
4224
|
-
<xsl:for-each select="xalan:nodeset($widths_max)//width">
|
4225
|
-
<xsl:sort select="." data-type="number" order="descending"/>
|
4226
|
-
<xsl:if test="position() = 1"><xsl:value-of select="."/></xsl:if>
|
4227
|
-
</xsl:for-each>
|
4228
|
-
</xsl:variable>
|
4229
|
-
<xsl:attribute name="width_max">
|
4230
|
-
<xsl:value-of select="$width_max"/>
|
4231
|
-
</xsl:attribute>
|
4321
|
+
<parent_element><xsl:value-of select="local-name(..)"/></parent_element>
|
4232
4322
|
|
4233
|
-
|
4234
|
-
|
4235
|
-
|
4236
|
-
<xsl:
|
4237
|
-
|
4238
|
-
|
4239
|
-
|
4240
|
-
|
4241
|
-
|
4242
|
-
</xsl:
|
4323
|
+
<xsl:variable name="parent_table_page-width_">
|
4324
|
+
<xsl:if test="$parent_table_id != ''">
|
4325
|
+
<!-- determine column number in the parent table -->
|
4326
|
+
<xsl:variable name="parent_table_column_number">
|
4327
|
+
<xsl:choose>
|
4328
|
+
<xsl:when test="parent::*[local-name() = 'dd']">2</xsl:when>
|
4329
|
+
<xsl:otherwise> <!-- parent is table -->
|
4330
|
+
<xsl:value-of select="count(ancestor::*[local-name() = 'td'][1]/preceding-sibling::*[local-name() = 'td']) + 1"/>
|
4331
|
+
</xsl:otherwise>
|
4332
|
+
</xsl:choose>
|
4243
4333
|
</xsl:variable>
|
4244
|
-
|
4245
|
-
|
4246
|
-
</xsl:call-template>
|
4247
|
-
</xsl:variable>
|
4248
|
-
|
4249
|
-
<xsl:variable name="max_word_length">
|
4250
|
-
<xsl:call-template name="max_length">
|
4251
|
-
<xsl:with-param name="words" select="xalan:nodeset($words)"/>
|
4252
|
-
</xsl:call-template>
|
4253
|
-
</xsl:variable>
|
4254
|
-
<xsl:variable name="width_min">
|
4255
|
-
<xsl:value-of select="$max_word_length"/>
|
4256
|
-
</xsl:variable>
|
4257
|
-
<xsl:attribute name="width_min">
|
4258
|
-
<xsl:value-of select="$width_min"/>
|
4259
|
-
</xsl:attribute>
|
4260
|
-
<!-- width_max="1" width_min="1.5"> --> <!-- see 'tokenize' template, multiply 1.5 for all latin capitals -->
|
4261
|
-
<xsl:if test="$width_min > $width_max">
|
4262
|
-
<xsl:attribute name="width_max">
|
4263
|
-
<xsl:value-of select="$width_min"/>
|
4264
|
-
</xsl:attribute>
|
4265
|
-
</xsl:if>
|
4266
|
-
<xsl:if test="$width_min = 0">
|
4267
|
-
<xsl:attribute name="width_min">1</xsl:attribute>
|
4334
|
+
<!-- find table by id in the file 'table_widths' and get all Nth `<column>...</column> -->
|
4335
|
+
<xsl:value-of select="$table_widths_from_if_calculated//table[@id = $parent_table_id]/column[number($parent_table_column_number)]"/>
|
4268
4336
|
</xsl:if>
|
4269
|
-
|
4270
|
-
<xsl:apply-templates select="node()" mode="determine_cell_widths"/>
|
4271
|
-
|
4272
|
-
</xsl:copy>
|
4273
|
-
</xsl:template><xsl:template name="add_width">
|
4274
|
-
<xsl:variable name="p_text"><xsl:apply-templates select="." mode="td_text"/></xsl:variable>
|
4275
|
-
<xsl:variable name="p_text_len_" select="string-length(normalize-space($p_text))"/>
|
4276
|
-
|
4277
|
-
<xsl:variable name="p_text_len">
|
4278
|
-
<xsl:choose>
|
4279
|
-
<xsl:when test="normalize-space(translate($p_text, concat($upper,'0123456789'), '')) = ''"> <!-- english word in CAPITAL letters -->
|
4280
|
-
<xsl:value-of select="$p_text_len_ * 1.5"/>
|
4281
|
-
</xsl:when>
|
4282
|
-
<xsl:otherwise><xsl:value-of select="$p_text_len_"/></xsl:otherwise>
|
4283
|
-
</xsl:choose>
|
4284
4337
|
</xsl:variable>
|
4338
|
+
<xsl:variable name="parent_table_page-width" select="normalize-space($parent_table_page-width_)"/>
|
4285
4339
|
|
4286
|
-
|
4287
|
-
|
4288
|
-
|
4289
|
-
|
4290
|
-
|
4291
|
-
|
4340
|
+
<!-- get current table id -->
|
4341
|
+
<xsl:variable name="table_id" select="@id"/>
|
4342
|
+
|
4343
|
+
<xsl:choose>
|
4344
|
+
<xsl:when test="$parent_table_id = '' or $parent_table_page-width = ''">
|
4345
|
+
<!-- find table by id in the file 'table_widths' and get all `<column>...</column> -->
|
4346
|
+
<xsl:copy-of select="$table_widths_from_if_calculated//table[@id = $table_id]/node()"/>
|
4347
|
+
</xsl:when>
|
4348
|
+
<xsl:otherwise>
|
4349
|
+
<!-- recalculate columns width based on parent table width -->
|
4350
|
+
<xsl:for-each select="$table_widths_from_if//table[@id = $table_id]">
|
4351
|
+
<xsl:call-template name="calculate-column-widths-autolayout-algorithm">
|
4352
|
+
<xsl:with-param name="parent_table_page-width" select="$parent_table_page-width"/> <!-- padding-left = 2mm = 50000-->
|
4353
|
+
</xsl:call-template>
|
4354
|
+
</xsl:for-each>
|
4355
|
+
</xsl:otherwise>
|
4356
|
+
</xsl:choose>
|
4292
4357
|
|
4293
|
-
<width><xsl:value-of select="$p_text_len + $math_addon_length"/></width>
|
4294
4358
|
</xsl:template><xsl:template match="@*|node()" mode="determine_cell_widths-if">
|
4295
4359
|
<xsl:copy>
|
4296
4360
|
<xsl:apply-templates select="@*|node()" mode="determine_cell_widths-if"/>
|
@@ -5162,11 +5226,19 @@
|
|
5162
5226
|
|
5163
5227
|
|
5164
5228
|
|
5229
|
+
|
5230
|
+
<xsl:if test="ancestor::*[local-name() = 'dd' or local-name() = 'td']">
|
5231
|
+
<xsl:attribute name="margin-top">0</xsl:attribute>
|
5232
|
+
</xsl:if>
|
5233
|
+
|
5165
5234
|
<fo:block>
|
5166
5235
|
|
5167
5236
|
|
5168
5237
|
|
5169
5238
|
|
5239
|
+
<xsl:apply-templates select="*[local-name() = 'name']">
|
5240
|
+
<xsl:with-param name="process">true</xsl:with-param>
|
5241
|
+
</xsl:apply-templates>
|
5170
5242
|
|
5171
5243
|
<xsl:if test="$isGenerateTableIF = 'true'">
|
5172
5244
|
<!-- to determine start of table -->
|
@@ -5189,6 +5261,9 @@
|
|
5189
5261
|
</xsl:choose>
|
5190
5262
|
|
5191
5263
|
|
5264
|
+
<xsl:attribute name="width">100%</xsl:attribute>
|
5265
|
+
|
5266
|
+
|
5192
5267
|
<xsl:choose>
|
5193
5268
|
<xsl:when test="$isGenerateTableIF = 'true'">
|
5194
5269
|
<!-- generate IF for table widths -->
|
@@ -5319,6 +5394,18 @@
|
|
5319
5394
|
</xsl:if> <!-- END: a few components -->
|
5320
5395
|
</fo:block-container>
|
5321
5396
|
</fo:block-container>
|
5397
|
+
|
5398
|
+
<xsl:if test="$isGenerateTableIF = 'true'"> <!-- process nested 'dl' -->
|
5399
|
+
<xsl:apply-templates select="*[local-name() = 'dd']/*[local-name() = 'dl']"/>
|
5400
|
+
</xsl:if>
|
5401
|
+
|
5402
|
+
</xsl:template><xsl:template match="*[local-name() = 'dl']/*[local-name() = 'name']">
|
5403
|
+
<xsl:param name="process">false</xsl:param>
|
5404
|
+
<xsl:if test="$process = 'true'">
|
5405
|
+
<fo:block xsl:use-attribute-sets="dl-name-style">
|
5406
|
+
<xsl:apply-templates/>
|
5407
|
+
</fo:block>
|
5408
|
+
</xsl:if>
|
5322
5409
|
</xsl:template><xsl:template name="setColumnWidth_dl">
|
5323
5410
|
<xsl:param name="colwidths"/>
|
5324
5411
|
<xsl:param name="maxlength_dt"/>
|
@@ -5327,6 +5414,11 @@
|
|
5327
5414
|
<!-- <colwidths><xsl:copy-of select="$colwidths"/></colwidths> -->
|
5328
5415
|
|
5329
5416
|
<xsl:choose>
|
5417
|
+
<xsl:when test="xalan:nodeset($colwidths)/autolayout">
|
5418
|
+
<xsl:call-template name="insertTableColumnWidth">
|
5419
|
+
<xsl:with-param name="colwidths" select="$colwidths"/>
|
5420
|
+
</xsl:call-template>
|
5421
|
+
</xsl:when>
|
5330
5422
|
<xsl:when test="ancestor::*[local-name()='dl']"><!-- second level, i.e. inlined table -->
|
5331
5423
|
<fo:table-column column-width="50%"/>
|
5332
5424
|
<fo:table-column column-width="50%"/>
|
@@ -5579,12 +5671,24 @@
|
|
5579
5671
|
</td>
|
5580
5672
|
<td>
|
5581
5673
|
|
5582
|
-
<xsl:copy-of select="following-sibling::*[local-name()='dd'][1]/node()"/>
|
5674
|
+
<xsl:copy-of select="following-sibling::*[local-name()='dd'][1]/node()[not(local-name() = 'dl')]"/>
|
5675
|
+
|
5676
|
+
<!-- get paragraphs from nested 'dl' -->
|
5677
|
+
<xsl:apply-templates select="following-sibling::*[local-name()='dd'][1]/*[local-name() = 'dl']" mode="dl_if_nested"/>
|
5678
|
+
|
5583
5679
|
|
5584
5680
|
</td>
|
5585
5681
|
</tr>
|
5586
5682
|
|
5587
|
-
</xsl:template><xsl:template match="*[local-name()='dd']" mode="dl_if"/><xsl:template match="*[local-name()='
|
5683
|
+
</xsl:template><xsl:template match="*[local-name()='dd']" mode="dl_if"/><xsl:template match="*[local-name()='dl']" mode="dl_if_nested">
|
5684
|
+
<xsl:for-each select="*[local-name() = 'dt']">
|
5685
|
+
<p>
|
5686
|
+
<xsl:copy-of select="node()"/>
|
5687
|
+
<xsl:text> </xsl:text>
|
5688
|
+
<xsl:copy-of select="following-sibling::*[local-name()='dd'][1]/*[local-name() = 'p']/node()"/>
|
5689
|
+
</p>
|
5690
|
+
</xsl:for-each>
|
5691
|
+
</xsl:template><xsl:template match="*[local-name()='dd']" mode="dl_if_nested"/><xsl:template match="*[local-name()='em']">
|
5588
5692
|
<fo:inline font-style="italic">
|
5589
5693
|
<xsl:apply-templates/>
|
5590
5694
|
</fo:inline>
|
@@ -5615,7 +5719,7 @@
|
|
5615
5719
|
|
5616
5720
|
|
5617
5721
|
|
5618
|
-
10
|
5722
|
+
inherit <!-- 10 -->
|
5619
5723
|
|
5620
5724
|
|
5621
5725
|
|
@@ -7646,7 +7750,7 @@
|
|
7646
7750
|
|
7647
7751
|
|
7648
7752
|
|
7649
|
-
9
|
7753
|
+
inherit<!-- 9 -->
|
7650
7754
|
|
7651
7755
|
|
7652
7756
|
|
@@ -7730,7 +7834,7 @@
|
|
7730
7834
|
<xsl:for-each select="xalan:nodeset($text_step4)/node()">
|
7731
7835
|
<xsl:choose>
|
7732
7836
|
<xsl:when test="local-name() = 'interspers'"> <!-- word with length more than 30 will be interspersed with zero-width space -->
|
7733
|
-
<xsl:call-template name="interspers">
|
7837
|
+
<xsl:call-template name="interspers-java">
|
7734
7838
|
<xsl:with-param name="str" select="."/>
|
7735
7839
|
</xsl:call-template>
|
7736
7840
|
</xsl:when>
|
@@ -7780,6 +7884,10 @@
|
|
7780
7884
|
<xsl:with-param name="char" select="$char"/>
|
7781
7885
|
</xsl:call-template>
|
7782
7886
|
</xsl:if>
|
7887
|
+
</xsl:template><xsl:template name="interspers-java">
|
7888
|
+
<xsl:param name="str"/>
|
7889
|
+
<xsl:param name="char" select="$zero_width_space"/>
|
7890
|
+
<xsl:value-of select="java:replaceAll(java:java.lang.String.new($str),'([^ -.:=_—])',concat('$1', $char))"/> <!-- insert $char after each char excep space, - . : = _ etc. -->
|
7783
7891
|
</xsl:template><xsl:template match="*" mode="syntax_highlight">
|
7784
7892
|
<xsl:apply-templates mode="syntax_highlight"/>
|
7785
7893
|
</xsl:template><xsl:variable name="syntax_highlight_styles_">
|
@@ -8686,7 +8794,7 @@
|
|
8686
8794
|
<xsl:variable name="format">
|
8687
8795
|
<xsl:choose>
|
8688
8796
|
<xsl:when test="$type = 'arabic'">
|
8689
|
-
1
|
8797
|
+
1)
|
8690
8798
|
</xsl:when>
|
8691
8799
|
<xsl:when test="$type = 'alphabet'">
|
8692
8800
|
a)
|
@@ -8733,6 +8841,11 @@
|
|
8733
8841
|
</xsl:otherwise>
|
8734
8842
|
</xsl:choose>
|
8735
8843
|
</xsl:template><xsl:template match="*[local-name()='ul'] | *[local-name()='ol']" mode="list" name="list">
|
8844
|
+
|
8845
|
+
<xsl:apply-templates select="*[local-name() = 'name']">
|
8846
|
+
<xsl:with-param name="process">true</xsl:with-param>
|
8847
|
+
</xsl:apply-templates>
|
8848
|
+
|
8736
8849
|
<fo:list-block xsl:use-attribute-sets="list-style">
|
8737
8850
|
|
8738
8851
|
|
@@ -8743,12 +8856,23 @@
|
|
8743
8856
|
|
8744
8857
|
|
8745
8858
|
|
8859
|
+
<xsl:if test="*[local-name() = 'name']">
|
8860
|
+
<xsl:attribute name="margin-top">0pt</xsl:attribute>
|
8861
|
+
</xsl:if>
|
8862
|
+
|
8746
8863
|
<xsl:apply-templates select="node()[not(local-name() = 'note')]"/>
|
8747
8864
|
</fo:list-block>
|
8748
8865
|
<!-- <xsl:for-each select="./iho:note">
|
8749
8866
|
<xsl:call-template name="note"/>
|
8750
8867
|
</xsl:for-each> -->
|
8751
8868
|
<xsl:apply-templates select="./*[local-name() = 'note']"/>
|
8869
|
+
</xsl:template><xsl:template match="*[local-name() = 'ol' or local-name() = 'ul']/*[local-name() = 'name']">
|
8870
|
+
<xsl:param name="process">false</xsl:param>
|
8871
|
+
<xsl:if test="$process = 'true'">
|
8872
|
+
<fo:block xsl:use-attribute-sets="list-name-style">
|
8873
|
+
<xsl:apply-templates/>
|
8874
|
+
</fo:block>
|
8875
|
+
</xsl:if>
|
8752
8876
|
</xsl:template><xsl:template match="*[local-name()='li']">
|
8753
8877
|
<fo:list-item xsl:use-attribute-sets="list-item-style">
|
8754
8878
|
<xsl:copy-of select="@id"/>
|
@@ -9052,26 +9176,23 @@
|
|
9052
9176
|
<xsl:if test=".//*[local-name() = 'fn']">
|
9053
9177
|
<xsl:attribute name="line-height-shift-adjustment">disregard-shifts</xsl:attribute>
|
9054
9178
|
</xsl:if>
|
9179
|
+
|
9180
|
+
<!-- display document identifier, not number [1] -->
|
9055
9181
|
<xsl:variable name="docidentifier">
|
9056
9182
|
<xsl:choose>
|
9057
9183
|
<xsl:when test="*[local-name() = 'docidentifier']/@type = 'metanorma'"/>
|
9058
9184
|
<xsl:otherwise><xsl:value-of select="*[local-name() = 'docidentifier'][not(@type = 'metanorma-ordinal')]"/></xsl:otherwise>
|
9059
9185
|
</xsl:choose>
|
9060
9186
|
</xsl:variable>
|
9061
|
-
<
|
9187
|
+
<xsl:value-of select="$docidentifier"/>
|
9188
|
+
|
9062
9189
|
<xsl:apply-templates select="*[local-name() = 'note']"/>
|
9063
|
-
|
9064
|
-
<xsl:
|
9065
|
-
<xsl:
|
9066
|
-
|
9067
|
-
|
9068
|
-
|
9069
|
-
<xsl:apply-templates select="*[local-name() = 'title'][@type = 'main' and @language = 'en']"/>
|
9070
|
-
</xsl:when>
|
9071
|
-
<xsl:otherwise>
|
9072
|
-
<xsl:apply-templates select="*[local-name() = 'title']"/>
|
9073
|
-
</xsl:otherwise>
|
9074
|
-
</xsl:choose>
|
9190
|
+
|
9191
|
+
<xsl:if test="normalize-space($docidentifier) != '' and *[local-name() = 'formattedref']">
|
9192
|
+
<xsl:text>,</xsl:text>
|
9193
|
+
<xsl:text> </xsl:text>
|
9194
|
+
</xsl:if>
|
9195
|
+
|
9075
9196
|
<xsl:apply-templates select="*[local-name() = 'formattedref']"/>
|
9076
9197
|
<!-- end bibitem processing -->
|
9077
9198
|
|
@@ -9378,36 +9499,60 @@
|
|
9378
9499
|
|
9379
9500
|
|
9380
9501
|
|
9502
|
+
<xsl:if test="@type = 'editorial'">
|
9503
|
+
<xsl:attribute name="color">green</xsl:attribute>
|
9504
|
+
<xsl:attribute name="font-weight">normal</xsl:attribute>
|
9505
|
+
|
9506
|
+
<!-- <xsl:variable name="note-style">
|
9507
|
+
<style xsl:use-attribute-sets="note-style"></style>
|
9508
|
+
</xsl:variable>
|
9509
|
+
<xsl:for-each select="xalan:nodeset($note-style)//style/@*">
|
9510
|
+
<xsl:attribute name="{local-name()}"><xsl:value-of select="."/></xsl:attribute>
|
9511
|
+
</xsl:for-each> -->
|
9512
|
+
</xsl:if>
|
9513
|
+
|
9381
9514
|
|
9382
9515
|
|
9383
9516
|
|
9384
|
-
<xsl:
|
9385
|
-
|
9517
|
+
<xsl:if test="@type != 'editorial'">
|
9518
|
+
<xsl:call-template name="displayAdmonitionName">
|
9519
|
+
<xsl:with-param name="sep"> — </xsl:with-param>
|
9520
|
+
</xsl:call-template>
|
9521
|
+
</xsl:if>
|
9522
|
+
|
9523
|
+
|
9386
9524
|
|
9387
9525
|
|
9388
9526
|
<xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
|
9389
9527
|
</fo:block>
|
9390
9528
|
|
9391
9529
|
</xsl:template><xsl:template name="displayAdmonitionName">
|
9392
|
-
|
9530
|
+
<xsl:param name="sep"/> <!-- Example: ' - ' -->
|
9531
|
+
<!-- <xsl:choose>
|
9532
|
+
<xsl:when test="$namespace = 'nist-cswp' or $namespace = 'nist-sp'">
|
9533
|
+
<xsl:choose>
|
9534
|
+
<xsl:when test="@type='important'"><xsl:apply-templates select="@type"/></xsl:when>
|
9535
|
+
<xsl:otherwise>
|
9536
|
+
<xsl:apply-templates select="*[local-name() = 'name']"/>
|
9537
|
+
</xsl:otherwise>
|
9538
|
+
</xsl:choose>
|
9539
|
+
</xsl:when>
|
9540
|
+
<xsl:otherwise>
|
9393
9541
|
<xsl:apply-templates select="*[local-name() = 'name']"/>
|
9394
9542
|
<xsl:if test="not(*[local-name() = 'name'])">
|
9395
9543
|
<xsl:apply-templates select="@type"/>
|
9396
9544
|
</xsl:if>
|
9397
|
-
|
9398
|
-
|
9399
|
-
<xsl:
|
9400
|
-
|
9401
|
-
<xsl:variable name="admonition_type_">
|
9402
|
-
<xsl:call-template name="getLocalizedString">
|
9403
|
-
<xsl:with-param name="key">admonition.<xsl:value-of select="."/></xsl:with-param>
|
9404
|
-
</xsl:call-template>
|
9545
|
+
</xsl:otherwise>
|
9546
|
+
</xsl:choose> -->
|
9547
|
+
<xsl:variable name="name">
|
9548
|
+
<xsl:apply-templates select="*[local-name() = 'name']"/>
|
9405
9549
|
</xsl:variable>
|
9406
|
-
<xsl:
|
9407
|
-
<xsl:
|
9408
|
-
|
9409
|
-
<xsl:value-of select="java:toUpperCase(java:java.lang.String.new(.))"/>
|
9550
|
+
<xsl:copy-of select="$name"/>
|
9551
|
+
<xsl:if test="normalize-space($name) != ''">
|
9552
|
+
<xsl:value-of select="$sep"/>
|
9410
9553
|
</xsl:if>
|
9554
|
+
</xsl:template><xsl:template match="*[local-name() = 'admonition']/*[local-name() = 'name']">
|
9555
|
+
<xsl:apply-templates/>
|
9411
9556
|
</xsl:template><xsl:template match="*[local-name() = 'admonition']/*[local-name() = 'p']">
|
9412
9557
|
<!-- processing for admonition/p found in the template for 'p' -->
|
9413
9558
|
<xsl:call-template name="paragraph"/>
|