metanorma-bipm 0.0.3 → 0.0.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/rake.yml +27 -8
- data/README.adoc +7 -138
- data/lib/asciidoctor/bipm/boilerplate-en.xml +1 -2
- data/lib/asciidoctor/bipm/boilerplate-fr.xml +2 -3
- data/lib/asciidoctor/bipm/converter.rb +30 -3
- data/lib/asciidoctor/bipm/isodoc.rng +13 -0
- data/lib/isodoc/bipm/base_convert.rb +10 -3
- data/lib/isodoc/bipm/bipm.brochure.xsl +1215 -470
- data/lib/isodoc/bipm/bipm.guide.xsl +7099 -0
- data/lib/isodoc/bipm/bipm.mise-en-pratique.xsl +7099 -0
- data/lib/isodoc/bipm/bipm.rapport.xsl +7099 -0
- data/lib/isodoc/bipm/html/html_bipm_titlepage.html +16 -3
- data/lib/isodoc/bipm/html/htmlstyle.css +47 -57
- data/lib/isodoc/bipm/html/htmlstyle.scss +50 -74
- data/lib/isodoc/bipm/html_convert.rb +17 -0
- data/lib/isodoc/bipm/i18n-en.yaml +14 -0
- data/lib/isodoc/bipm/i18n-fr.yaml +14 -0
- data/lib/isodoc/bipm/metadata.rb +16 -8
- data/lib/isodoc/bipm/pdf_convert.rb +4 -1
- data/lib/isodoc/bipm/presentation_xml_convert.rb +17 -6
- data/lib/isodoc/bipm/xref.rb +7 -3
- data/lib/metanorma/bipm/version.rb +1 -1
- metadata +5 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7f7ed7028b4a5bd6a311aff675bd47272c2170dad7adfcf59457ca3f4a55d218
|
4
|
+
data.tar.gz: 96e9451da240b36fe420324838d69a0d5fde69cb956d74977f83b7ca9c736cae
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 98b7383018c3822867381823ed9d19bc4cd02e5db2fbf97862014bde19079e13f28fc1e0342b3d41986b3a0d249104746a14f475db05fe6a273bb8c860bc8df6
|
7
|
+
data.tar.gz: 531be848c577965373bdbab1408304b06fc292998b89e2fdc3f81948ba93799a4a9f0a4b19897974ea6fb38518738ab6ac9cb33196dee90fd04305ef5825d16b
|
data/.github/workflows/rake.yml
CHANGED
@@ -4,7 +4,8 @@ name: rake
|
|
4
4
|
|
5
5
|
on:
|
6
6
|
push:
|
7
|
-
branches: [ master ]
|
7
|
+
branches: [ master, main ]
|
8
|
+
tags: [ v* ]
|
8
9
|
pull_request:
|
9
10
|
|
10
11
|
jobs:
|
@@ -31,14 +32,32 @@ jobs:
|
|
31
32
|
steps:
|
32
33
|
- uses: actions/checkout@master
|
33
34
|
|
34
|
-
-
|
35
|
-
uses: ruby/setup-ruby@v1
|
35
|
+
- uses: ruby/setup-ruby@v1
|
36
36
|
with:
|
37
37
|
ruby-version: ${{ matrix.ruby }}
|
38
|
-
bundler-cache: true
|
39
38
|
|
40
|
-
-
|
41
|
-
|
39
|
+
- uses: actions/cache@v1
|
40
|
+
with:
|
41
|
+
path: vendor/bundle
|
42
|
+
key: bundle-${{ matrix.os }}-${{ matrix.ruby }}-${{ hashFiles('**/*.gemspec') }}
|
43
|
+
restore-keys: bundle-${{ matrix.os }}-${{ matrix.ruby }}
|
44
|
+
|
45
|
+
- run: bundle config set path 'vendor/bundle'
|
46
|
+
|
47
|
+
- run: bundle install --jobs 4 --retry 3
|
42
48
|
|
43
|
-
-
|
44
|
-
|
49
|
+
- run: bundle exec rake
|
50
|
+
|
51
|
+
notify:
|
52
|
+
name: Trigger notify workflow
|
53
|
+
needs: rake
|
54
|
+
runs-on: ubuntu-latest
|
55
|
+
steps:
|
56
|
+
- name: Trigger notify workflow
|
57
|
+
uses: Sibz/github-status-action@v1
|
58
|
+
with:
|
59
|
+
authToken: ${{ secrets.GITHUB_TOKEN }}
|
60
|
+
context: 'tests-passed-successfully'
|
61
|
+
description: 'Tests passed successfully'
|
62
|
+
state: 'success'
|
63
|
+
sha: ${{ github.event.pull_request.head.sha || github.sha }}
|
data/README.adoc
CHANGED
@@ -1,17 +1,14 @@
|
|
1
1
|
= Metanorma for BIPM: Metanorma processor for Bureau International de Poids et Mesures
|
2
2
|
|
3
|
-
image:https://img.shields.io/gem/v/metanorma-
|
4
|
-
image:https://github.com/metanorma/metanorma-
|
5
|
-
image:https://
|
6
|
-
image:https://
|
7
|
-
image:https://
|
8
|
-
image:https://img.shields.io/github/issues-pr-raw/metanorma/metanorma-bimp.sbimp["Pull Requests", link="https://github.com/metanorma/metanorma-bimp/pulls"]
|
9
|
-
image:https://img.shields.io/github/commits-since/metanorma/metanorma-bimp/latest.sbimp["Commits since latest",link="https://github.com/metanorma/metanorma-bimp/releases"]
|
3
|
+
image:https://img.shields.io/gem/v/metanorma-bipm.svg["Gem Version", link="https://rubygems.org/gems/metanorma-bipm"]
|
4
|
+
image:https://github.com/metanorma/metanorma-bipm/workflows/rake/badge.svg["Build Status", link="https://github.com/metanorma/metanorma-bipm/actions?workflow=rake"]
|
5
|
+
image:https://codeclimate.com/github/metanorma/metanorma-bipm/badges/gpa.svg["Code Climate", link="https://codeclimate.com/github/metanorma/metanorma-bipm"]
|
6
|
+
image:https://img.shields.io/github/issues-pr-raw/metanorma/metanorma-bipm.svg["Pull Requests", link="https://github.com/metanorma/metanorma-bipm/pulls"]
|
7
|
+
image:https://img.shields.io/github/commits-since/metanorma/metanorma-bipm/latest.svg["Commits since latest",link="https://github.com/metanorma/metanorma-bipm/releases"]
|
10
8
|
|
11
9
|
== Functionality
|
12
10
|
|
13
|
-
This gem processes
|
14
|
-
a template for generating BIPM standards.
|
11
|
+
This gem processes https://www.metanorma.com[Metanorma documents] following a template for generating BIPM standards.
|
15
12
|
|
16
13
|
== Usage
|
17
14
|
|
@@ -42,138 +39,10 @@ scripts such as this one. You need only run the following in a Terminal console:
|
|
42
39
|
[source,console]
|
43
40
|
----
|
44
41
|
$ bash <(curl -s https://raw.githubusercontent.com/riboseinc/metanorma-macos-setup/master/metanorma-setup)
|
45
|
-
$ gem install metanorma-
|
42
|
+
$ gem install metanorma-bipm
|
46
43
|
----
|
47
44
|
|
48
45
|
|
49
|
-
== Document Attributes
|
50
|
-
|
51
|
-
The gem relies on Asciidoctor document attributes to provide necessary
|
52
|
-
metadata about the document. These include:
|
53
|
-
|
54
|
-
`:edition:`:: The document edition
|
55
|
-
|
56
|
-
`:revdate:`:: The date the document was last updated
|
57
|
-
|
58
|
-
`:title-en:`:: The title of the document in English (mandatory)
|
59
|
-
`:title-fr:`:: The title of the document in French (mandatory)
|
60
|
-
`:title-cover-en:`:: The title of the front cover of the document in English (where different from the title proper)
|
61
|
-
`:title-cover-fr:`:: The title of the front cover of the document in French (where different from the title proper)
|
62
|
-
`:title-appendix-en:`:: The title of the appendix in English, if this document is an appendix published separately; `title-en` becomes the title of the main document, as presented within the standalone appendix.
|
63
|
-
`:title-appendix-fr:`:: The title of the appendix in English, if this document is an appendix published separately; `title-en` becomes the title of the main document, as presented within the standalone appendix.
|
64
|
-
|
65
|
-
`:appendix-id:`:: The number of the appendix, if this document is an appendix published separately
|
66
|
-
|
67
|
-
`:si-aspect:`:: The domain of SI covered by the document; used to select logo in PDF cover page. The logo nominates one primary SI base units, and defining consonants for that unit and possibly others as well. The permitted values are:
|
68
|
-
+
|
69
|
-
--
|
70
|
-
* A_e_deltanu (ampere; time)
|
71
|
-
* A_e (ampere)
|
72
|
-
* cd_Kcd_h_deltanu (candela; mass, time)
|
73
|
-
* cd_Kcd (candela)
|
74
|
-
* full (all units)
|
75
|
-
* K_k_deltanu (kelvin; mass, time)
|
76
|
-
* K_k (kelvin)
|
77
|
-
* kg_h_c_deltanu (kilogram; length, time)
|
78
|
-
* kg_h (kilogram)
|
79
|
-
* m_c_deltanu (metre; time)
|
80
|
-
* m_c (metre)
|
81
|
-
* mol_NA (mole)
|
82
|
-
* s_deltanu (second)
|
83
|
-
--
|
84
|
-
|
85
|
-
`:copyright-year:`:: The year which will be claimed as when the copyright for
|
86
|
-
the document was issued
|
87
|
-
|
88
|
-
`:supersedes:`:: One or more BIPM document that this BIPM document standard supersedes; the superseded
|
89
|
-
document may still remain in effect. Identified with document identifier. Comma delimited.
|
90
|
-
|
91
|
-
`:superseded-by:`:: One or more BIPM document that this BIPM document standard is superseded by; this
|
92
|
-
document may still remain in effect. Identified with document identifier. Comma delimited.
|
93
|
-
|
94
|
-
`:supersedes-date_{i}:`:: Date of the document draft or version which this document supersedes.
|
95
|
-
Assumes superseded document does not have distinct identifier.
|
96
|
-
`:supersedes-draft_{i}:`:: Draft of the document which this document supersedes.
|
97
|
-
Assumes superseded document does not have distinct identifier.
|
98
|
-
`:supersedes-edition{i}:``:: Version of the document which this document supersedes.
|
99
|
-
Assumes superseded document does not have distinct identifier.
|
100
|
-
|
101
|
-
`:doctype:`:: The document type (mandatory). The permitted types are:
|
102
|
-
+
|
103
|
-
--
|
104
|
-
* brochure (default)
|
105
|
-
* mise-en-pratique
|
106
|
-
* rapport
|
107
|
-
* monographie
|
108
|
-
* guide
|
109
|
-
* meeting-report
|
110
|
-
* technical-report
|
111
|
-
* working-party-note
|
112
|
-
* strategy
|
113
|
-
* cipm-mra
|
114
|
-
* resolution
|
115
|
-
--
|
116
|
-
|
117
|
-
`:status:``:: The document status. The permitted types are: `draft-proposal`,
|
118
|
-
`draft-development`, `in-force`, `retired`.
|
119
|
-
|
120
|
-
`:committee-en:`:: The name of the relevant committee in English (mandatory)
|
121
|
-
`:committee-fr:`:: The name of the relevant committee in French (mandatory)
|
122
|
-
`:committee-acronym:`:: The acronym of the relevant committee (mandatory)
|
123
|
-
+
|
124
|
-
--
|
125
|
-
* CGPM: General Conference on Weights and Measures / Conférence générale des poids et mesures
|
126
|
-
* CIPM: International Committee for Weights and Measures / Comité international des poids et mesures
|
127
|
-
* BIPM: International Bureau of Weights and Measures / Bureau International des Poids et Mesures
|
128
|
-
* CCAUV: Consultative Committee for Acoustics, Ultrasound and Vibration / Comité consultatif de l'acoustique, des ultrasons et des vibrations
|
129
|
-
* CCEM: Consultative Committee for Electricity and Magnetism / Comité consultatif d'électricité et magnétisme
|
130
|
-
* CCL: Consultative Committee for Length / Comité consultatif des longueurs
|
131
|
-
* CCM: Consultative Committee for Mass and Related Quantities / Comité consultatif pour la masse et les grandeurs apparentées
|
132
|
-
* CCPR: Consultative Committee for Photometry and Radiometry / Comité consultatif de photométrie et radiométrie
|
133
|
-
* CCQM: Consultative Committee for Amount of Substance: Metrology in Chemistry and Biology / Comité consultatif pour la quantité de matière : métrologie en chimie et biologie
|
134
|
-
* CCRI: Consultative Committee for Ionizing Radiation / Comité consultatif des rayonnements ionisants
|
135
|
-
* CCT: Consultative Committee for Thermometry / Comité consultatif de thermométrie
|
136
|
-
* CCTF: Consultative Committee for Time and Frequency / Comité consultatif du temps et des fréquences
|
137
|
-
* CCU: Consultative Committee for Units / Comité consultatif des unités
|
138
|
-
* CCL-CCTF: Frequency Standards Working Group
|
139
|
-
* JCGM: Joint Committee for Guides in Metrology / Comité commun pour les guides en métrologie
|
140
|
-
* JCRB: Joint Committee of the Regional Metrology Organizations and the BIPM / Comité mixte des organisations régionales de métrologie et du BIPM
|
141
|
-
* JCTLM: Joint Committee for Traceability in Laboratory Medicine / Comité commun pour la traçabilité en médecine de laboratoire
|
142
|
-
* INetQI: International Network on Quality Infrastructure
|
143
|
-
--
|
144
|
-
`:workgroup:`:: The name of the relevant workgroup (mandatory)
|
145
|
-
`:workgroup-acronym:`:: The acronym of the relevant workgroup (mandatory)
|
146
|
-
|
147
|
-
`:language:` :: The language of the document (`en` or `fr`) (mandatory)
|
148
|
-
|
149
|
-
`:comment-period-from:`:: Start of the period during which comments are allowed on the document draft
|
150
|
-
`:comment-period-to:`:: End of the period during which comments are allowed on the document draft (optional)
|
151
|
-
|
152
|
-
`:obsoleted-date:`:: The date a document was superseded
|
153
|
-
`:implemented-date:`:: The date a document became effective
|
154
|
-
|
155
|
-
`:meeting-note:`:: Note on when and where a guide was adopted.
|
156
|
-
|
157
|
-
`:role_{i}:`:: If provided and is other than "author" or "editor" (e.g. "WG-N co-chair"),
|
158
|
-
is treated as a subclass of "editor".
|
159
|
-
|
160
|
-
`:supersedes-date_{i}:`:: Date of the document draft or version which this document supersedes.
|
161
|
-
`:supersedes-draft_{i}:`:: Draft of the document which this document supersedes.
|
162
|
-
`:supersedes-version_{i}:``:: Version of the document which this document supersedes.
|
163
|
-
|
164
|
-
|
165
|
-
The attribute `:draft:`, if present, includes review notes in the XML output;
|
166
|
-
these are otherwise suppressed.
|
167
|
-
|
168
|
-
== Markup
|
169
|
-
|
170
|
-
Cross-references formatted as `<<{{anchor}},pagenumber%>>` are rendered in PDF as just the page number;
|
171
|
-
they are used for tables of content. In HTML output, they are treated as normal cross-references.
|
172
|
-
|
173
|
-
Clauses and annexes may be marked as `[%unnumbered]`, in which case they do not receive section numbering, and are cross-referenced by their title.
|
174
|
-
|
175
|
-
Unlike the Metanorma default, ordered lists do not have a fixed sequence of numbering styles: the type set for each ordered list (including nested lists) is respected. The default numbering style for ordered lists is always arabic.
|
176
|
-
|
177
46
|
== Data Models
|
178
47
|
|
179
48
|
The document model for BIPM is given in https://github.com/metanorma/metanorma-model-bipm[metanorma-model-bipm].
|
@@ -7,14 +7,13 @@
|
|
7
7
|
<license-statement>
|
8
8
|
<clause>
|
9
9
|
<title>Note concernant les droits d’auteur</title>
|
10
|
-
<p>Ce document est
|
10
|
+
<p>Ce document est distribué selon les termes et conditions de la licence Creative Commons Attribution 4.0 International (<link target="http://creativecommons.org/licenses/by/4.0/"/>), qui permet l’utilisation sans restriction, la distribution et la reproduction sur quelque support que soit, sous réserve de mentionner dûment l’auteur ou les auteurs originaux ainsi que la source de l’œuvre, d’intégrer un lien vers la licence Creative Commons et d’indiquer si des modifications ont été effectuées.</p>
|
11
11
|
</clause>
|
12
12
|
</license-statement>
|
13
13
|
<feedback-statement>
|
14
14
|
<p>BIPM<br/>
|
15
15
|
Pavillon de Breteuil<br/>
|
16
|
-
F-92312 Sèvres<br/>
|
17
|
-
Cedex<br/>
|
16
|
+
F-92312 Sèvres Cedex<br/>
|
18
17
|
FRANCE</p>
|
19
18
|
</feedback-statement>
|
20
19
|
</boilerplate>
|
@@ -30,8 +30,10 @@ module Asciidoctor
|
|
30
30
|
|
31
31
|
def metadata_committee2(node, a)
|
32
32
|
i = 2
|
33
|
-
while node.attr("committee-en_#{i}") ||
|
34
|
-
|
33
|
+
while node.attr("committee-en_#{i}") ||
|
34
|
+
node.attr("committee-fr_#{i}") do
|
35
|
+
a.committee **attr_code(acronym:
|
36
|
+
node.attr("committee-acronym_#{i}")) do |c|
|
35
37
|
e = node.attr("committee-en_#{i}") and
|
36
38
|
c.variant e, language: "en", script: "Latn"
|
37
39
|
e = node.attr("committee-fr_#{i}") and
|
@@ -99,6 +101,8 @@ module Asciidoctor
|
|
99
101
|
end
|
100
102
|
typed_title(node, xml, lang, "cover")
|
101
103
|
typed_title(node, xml, lang, "appendix")
|
104
|
+
typed_title(node, xml, lang, "part")
|
105
|
+
typed_title(node, xml, lang, "subpart")
|
102
106
|
end
|
103
107
|
end
|
104
108
|
|
@@ -137,7 +141,30 @@ module Asciidoctor
|
|
137
141
|
end
|
138
142
|
|
139
143
|
def ol_attrs(node)
|
140
|
-
super.merge(start: node.attr("start"))
|
144
|
+
super.merge(attr_code(start: node.attr("start")))
|
145
|
+
end
|
146
|
+
|
147
|
+
def section_names_terms_cleanup(x)
|
148
|
+
end
|
149
|
+
|
150
|
+
def committee_validate(xml)
|
151
|
+
committees = Array(configuration&.committees) || return
|
152
|
+
committees.empty? and return
|
153
|
+
xml.xpath("//bibdata/ext/editorialgroup/committee/variant").each do |c|
|
154
|
+
committees.include? c.text or
|
155
|
+
@log.add("Document Attributes", nil,
|
156
|
+
"#{c.text} is not a recognised committee")
|
157
|
+
end
|
158
|
+
xml.xpath("//bibdata/ext/editorialgroup/committee/@acronym").each do |c|
|
159
|
+
committees.include? c.text or
|
160
|
+
@log.add("Document Attributes", nil,
|
161
|
+
"#{c.text} is not a recognised committee")
|
162
|
+
end
|
163
|
+
end
|
164
|
+
|
165
|
+
def mathml_mi_italics
|
166
|
+
{ uppergreek: false, upperroman: false,
|
167
|
+
lowergreek: false, lowerroman: true }
|
141
168
|
end
|
142
169
|
|
143
170
|
def outputs(node, ret)
|
@@ -24,6 +24,14 @@
|
|
24
24
|
<start>
|
25
25
|
<ref name="standard-document"/>
|
26
26
|
</start>
|
27
|
+
<define name="doctype">
|
28
|
+
<element name="doctype">
|
29
|
+
<optional>
|
30
|
+
<attribute name="abbreviation"/>
|
31
|
+
</optional>
|
32
|
+
<ref name="DocumentType"/>
|
33
|
+
</element>
|
34
|
+
</define>
|
27
35
|
<define name="hyperlink">
|
28
36
|
<element name="link">
|
29
37
|
<attribute name="target">
|
@@ -141,6 +149,11 @@
|
|
141
149
|
<data type="boolean"/>
|
142
150
|
</attribute>
|
143
151
|
</optional>
|
152
|
+
<optional>
|
153
|
+
<attribute name="key">
|
154
|
+
<data type="boolean"/>
|
155
|
+
</attribute>
|
156
|
+
</optional>
|
144
157
|
<oneOrMore>
|
145
158
|
<ref name="dt"/>
|
146
159
|
<ref name="dd"/>
|
@@ -7,9 +7,16 @@ module IsoDoc
|
|
7
7
|
Metanorma::BIPM.configuration
|
8
8
|
end
|
9
9
|
|
10
|
-
def
|
11
|
-
|
12
|
-
|
10
|
+
def middle(isoxml, out)
|
11
|
+
middle_title(out)
|
12
|
+
middle_admonitions(isoxml, out)
|
13
|
+
clause isoxml, out
|
14
|
+
annex isoxml, out
|
15
|
+
bibliography isoxml, out
|
16
|
+
end
|
17
|
+
|
18
|
+
def middle_clause
|
19
|
+
"//sections/*"
|
13
20
|
end
|
14
21
|
end
|
15
22
|
end
|
@@ -22,7 +22,7 @@
|
|
22
22
|
|
23
23
|
<xsl:variable name="copyrightYear" select="//bipm:bipm-standard/bipm:bibdata/bipm:copyright/bipm:from"/>
|
24
24
|
|
25
|
-
<xsl:variable name="doc_first_language" select="(//bipm:bipm-standard)[1]/bipm:bibdata/bipm:language"/>
|
25
|
+
<xsl:variable name="doc_first_language" select="(//bipm:bipm-standard)[1]/bipm:bibdata/bipm:language[@current = 'true']"/>
|
26
26
|
|
27
27
|
<xsl:variable name="lang">
|
28
28
|
<xsl:call-template name="getLang"/>
|
@@ -38,7 +38,7 @@
|
|
38
38
|
<xsl:choose>
|
39
39
|
<xsl:when test="$doc_split_by_language = ''"><!-- all documents -->
|
40
40
|
<xsl:for-each select="//bipm:bipm-standard">
|
41
|
-
<xsl:variable name="lang" select="*[local-name()='bibdata']/*[local-name()='language']"/>
|
41
|
+
<xsl:variable name="lang" select="*[local-name()='bibdata']/*[local-name()='language'][@current = 'true']"/>
|
42
42
|
<xsl:variable name="num"><xsl:number level="any" count="bipm:bipm-standard"/></xsl:variable>
|
43
43
|
<xsl:variable name="current_document">
|
44
44
|
<xsl:apply-templates select="." mode="change_id">
|
@@ -56,8 +56,8 @@
|
|
56
56
|
</xsl:for-each>
|
57
57
|
</xsl:when>
|
58
58
|
<xsl:otherwise>
|
59
|
-
<xsl:for-each select="(//bipm:bipm-standard)[*[local-name()='bibdata']/*[local-name()='language'] = $doc_split_by_language]">
|
60
|
-
<xsl:variable name="lang" select="*[local-name()='bibdata']/*[local-name()='language']"/>
|
59
|
+
<xsl:for-each select="(//bipm:bipm-standard)[*[local-name()='bibdata']/*[local-name()='language'][@current = 'true'] = $doc_split_by_language]">
|
60
|
+
<xsl:variable name="lang" select="*[local-name()='bibdata']/*[local-name()='language'][@current = 'true']"/>
|
61
61
|
<xsl:variable name="num"><xsl:number level="any" count="bipm:bipm-standard"/></xsl:variable>
|
62
62
|
<xsl:variable name="current_document">
|
63
63
|
<xsl:apply-templates select="." mode="change_id">
|
@@ -89,9 +89,10 @@
|
|
89
89
|
|
90
90
|
</xsl:variable>
|
91
91
|
|
92
|
-
|
93
|
-
<xsl:variable name="independentAppendix" select="normalize-space(/bipm:bipm-standard/bipm:bibdata/bipm:title[@type = 'appendix'])"/>
|
92
|
+
<xsl:variable name="independentAppendix" select="normalize-space(/bipm:bipm-standard/bipm:bibdata/bipm:ext/bipm:structuredidentifier/bipm:appendix)"/>
|
93
|
+
<!-- <xsl:variable name="independentAppendix" select="normalize-space(/bipm:bipm-standard/bipm:bibdata/bipm:title[@type = 'appendix'])"/> -->
|
94
94
|
|
95
|
+
<xsl:variable name="doctype" select="//bipm:bipm-standard/bipm:bibdata/bipm:ext/bipm:doctype"/>
|
95
96
|
|
96
97
|
<xsl:template name="generateContents">
|
97
98
|
<contents>
|
@@ -136,14 +137,14 @@
|
|
136
137
|
<fo:simple-page-master master-name="document-odd" page-width="{$pageWidth}" page-height="{$pageHeight}">
|
137
138
|
<fo:region-body margin-top="25.4mm" margin-bottom="22mm" margin-left="31.7mm" margin-right="40mm"/>
|
138
139
|
<fo:region-before region-name="header-odd" extent="25.4mm"/>
|
139
|
-
<fo:region-after region-name="footer" extent="22mm"/>
|
140
|
+
<fo:region-after region-name="footer" extent="22mm"/> <!-- debug: background-color="green" -->
|
140
141
|
<fo:region-start region-name="left-region" extent="17mm"/>
|
141
142
|
<fo:region-end region-name="right-region" extent="26.5mm"/>
|
142
143
|
</fo:simple-page-master>
|
143
144
|
<fo:simple-page-master master-name="document-even" page-width="{$pageWidth}" page-height="{$pageHeight}">
|
144
145
|
<fo:region-body margin-top="25.4mm" margin-bottom="22mm" margin-left="31.7mm" margin-right="40mm"/>
|
145
146
|
<fo:region-before region-name="header-even" extent="25.4mm"/>
|
146
|
-
<fo:region-after region-name="footer" extent="22mm"/>
|
147
|
+
<fo:region-after region-name="footer" extent="22mm"/> <!-- debug: background-color="green" -->
|
147
148
|
<fo:region-start region-name="left-region" extent="17mm"/>
|
148
149
|
<fo:region-end region-name="right-region" extent="26.5mm"/>
|
149
150
|
</fo:simple-page-master>
|
@@ -199,14 +200,21 @@
|
|
199
200
|
<xsl:copy-of select="$contents"/>
|
200
201
|
</contents> -->
|
201
202
|
|
202
|
-
<xsl:
|
203
|
-
<xsl:call-template name="insertCoverPage"/>
|
204
|
-
<xsl:call-template name="insertInnerCoverPage"/>
|
205
|
-
</xsl:if>
|
203
|
+
<xsl:choose>
|
206
204
|
|
207
|
-
|
208
|
-
|
209
|
-
|
205
|
+
<xsl:when test="$doctype = 'guide'">
|
206
|
+
<xsl:call-template name="insertCoverPageAppendix"/>
|
207
|
+
</xsl:when>
|
208
|
+
|
209
|
+
<xsl:when test="$independentAppendix = ''">
|
210
|
+
<xsl:call-template name="insertCoverPage"/>
|
211
|
+
<xsl:call-template name="insertInnerCoverPage"/>
|
212
|
+
</xsl:when>
|
213
|
+
|
214
|
+
<xsl:when test="$independentAppendix != ''">
|
215
|
+
<xsl:call-template name="insertCoverPageAppendix"/>
|
216
|
+
</xsl:when>
|
217
|
+
</xsl:choose>
|
210
218
|
|
211
219
|
|
212
220
|
<xsl:choose>
|
@@ -216,7 +224,7 @@
|
|
216
224
|
<xsl:choose>
|
217
225
|
<xsl:when test="$doc_split_by_language = ''"><!-- all documents -->
|
218
226
|
<xsl:for-each select="//bipm:bipm-standard">
|
219
|
-
<xsl:variable name="lang" select="*[local-name()='bibdata']//*[local-name()='language']"/>
|
227
|
+
<xsl:variable name="lang" select="*[local-name()='bibdata']//*[local-name()='language'][@current = 'true']"/>
|
220
228
|
<xsl:variable name="num"><xsl:number level="any" count="bipm:bipm-standard"/></xsl:variable>
|
221
229
|
<!-- change id to prevent identical id in different documents in one container -->
|
222
230
|
<xsl:variable name="current_document">
|
@@ -238,8 +246,8 @@
|
|
238
246
|
</xsl:for-each>
|
239
247
|
</xsl:when>
|
240
248
|
<xsl:otherwise>
|
241
|
-
<xsl:for-each select="(//bipm:bipm-standard)[*[local-name()='bibdata']/*[local-name()='language'] = $doc_split_by_language]">
|
242
|
-
<xsl:variable name="lang" select="*[local-name()='bibdata']//*[local-name()='language']"/>
|
249
|
+
<xsl:for-each select="(//bipm:bipm-standard)[*[local-name()='bibdata']/*[local-name()='language'][@current = 'true'] = $doc_split_by_language]">
|
250
|
+
<xsl:variable name="lang" select="*[local-name()='bibdata']//*[local-name()='language'][@current = 'true']"/>
|
243
251
|
<xsl:variable name="num"><xsl:number level="any" count="bipm:bipm-standard"/></xsl:variable>
|
244
252
|
<!-- change id to prevent identical id in different documents in one container -->
|
245
253
|
<xsl:variable name="current_document">
|
@@ -280,7 +288,10 @@
|
|
280
288
|
</fo:root>
|
281
289
|
</xsl:template>
|
282
290
|
|
283
|
-
|
291
|
+
|
292
|
+
<!-- ================================= -->
|
293
|
+
<!-- Flattening xml for fit notes at page sides (margins) -->
|
294
|
+
<!-- ================================= -->
|
284
295
|
<xsl:template match="@*|node()" mode="flatxml">
|
285
296
|
<xsl:copy>
|
286
297
|
<xsl:if test="ancestor::bipm:quote">
|
@@ -290,12 +301,84 @@
|
|
290
301
|
</xsl:copy>
|
291
302
|
</xsl:template>
|
292
303
|
|
293
|
-
<!--
|
304
|
+
<!-- enclosing starting elements annex/... in clause -->
|
305
|
+
<xsl:template match="bipm:annex" mode="flatxml">
|
306
|
+
<xsl:copy>
|
307
|
+
<xsl:apply-templates select="@*" mode="flatxml"/>
|
308
|
+
|
309
|
+
<xsl:variable name="pos_first_clause_" select="count(bipm:clause[1]/preceding-sibling::*)"/>
|
310
|
+
<!-- pos_first_clause=<xsl:value-of select="$pos_first_clause"/> -->
|
311
|
+
|
312
|
+
<xsl:variable name="pos_first_clause">
|
313
|
+
<xsl:choose>
|
314
|
+
<xsl:when test="$pos_first_clause_ = 0">
|
315
|
+
<xsl:value-of select="count(*)"/>
|
316
|
+
</xsl:when>
|
317
|
+
<xsl:otherwise>
|
318
|
+
<xsl:value-of select="$pos_first_clause_"/>
|
319
|
+
</xsl:otherwise>
|
320
|
+
</xsl:choose>
|
321
|
+
</xsl:variable>
|
322
|
+
<xsl:choose>
|
323
|
+
|
324
|
+
<xsl:when test="$pos_first_clause > 0">
|
325
|
+
<xsl:element name="clause" namespace="https://www.metanorma.org/ns/bipm">
|
326
|
+
<xsl:attribute name="id"><xsl:value-of select="concat(@id,'_clause')"/></xsl:attribute>
|
327
|
+
<xsl:for-each select="*[position() > 0 and position() <= $pos_first_clause]">
|
328
|
+
<xsl:apply-templates select="." mode="flatxml"/>
|
329
|
+
</xsl:for-each>
|
330
|
+
</xsl:element>
|
331
|
+
<xsl:for-each select="*[position() > $pos_first_clause]">
|
332
|
+
<xsl:apply-templates select="." mode="flatxml"/>
|
333
|
+
</xsl:for-each>
|
334
|
+
</xsl:when>
|
335
|
+
<xsl:otherwise>
|
336
|
+
<xsl:apply-templates mode="flatxml"/>
|
337
|
+
</xsl:otherwise>
|
338
|
+
</xsl:choose>
|
339
|
+
|
340
|
+
</xsl:copy>
|
341
|
+
</xsl:template>
|
342
|
+
|
343
|
+
<xsl:template match="bipm:annex/bipm:title" mode="flatxml">
|
344
|
+
<xsl:copy>
|
345
|
+
<xsl:apply-templates select="@*" mode="flatxml"/>
|
346
|
+
<xsl:attribute name="depth">1</xsl:attribute>
|
347
|
+
<xsl:apply-templates mode="flatxml"/>
|
348
|
+
</xsl:copy>
|
349
|
+
</xsl:template>
|
350
|
+
|
351
|
+
|
352
|
+
<!-- flattening clauses from 2nd level -->
|
294
353
|
<!-- <xsl:template match="bipm:clause[not(parent::bipm:sections) and not(parent::bipm:annex) and not(parent::bipm:abstract) and not(ancestor::bipm:boilerplate)]" mode="flatxml"> -->
|
295
354
|
<xsl:template match="bipm:clause[not(parent::bipm:sections) and not(parent::bipm:annex) and not(parent::bipm:preface) and not(ancestor::bipm:boilerplate)]" mode="flatxml">
|
296
355
|
<xsl:copy>
|
297
356
|
<xsl:apply-templates select="@*" mode="flatxml"/>
|
298
|
-
|
357
|
+
|
358
|
+
<!-- add note_side inside empty clause to show near the title -->
|
359
|
+
<!-- <xsl:variable name="curr_id" select="@id"/>
|
360
|
+
<xsl:for-each select=".//bipm:quote[ancestor::bipm:clause[1][@id = $curr_id]]//bipm:fn">
|
361
|
+
<xsl:element name="note_side" namespace="https://www.metanorma.org/ns/bipm">
|
362
|
+
|
363
|
+
<xsl:attribute name="id">
|
364
|
+
<xsl:call-template name="fn_reference_to_xref_target"/>
|
365
|
+
</xsl:attribute>
|
366
|
+
|
367
|
+
<xsl:variable name="num" select="position()"/>
|
368
|
+
|
369
|
+
<xsl:variable name="asterisks">
|
370
|
+
<xsl:call-template name="repeat">
|
371
|
+
<xsl:with-param name="char" select="'*'"/>
|
372
|
+
<xsl:with-param name="count" select="$num + 1"/>
|
373
|
+
</xsl:call-template>
|
374
|
+
</xsl:variable>
|
375
|
+
<xsl:value-of select="$asterisks"/>
|
376
|
+
|
377
|
+
<xsl:text> </xsl:text>
|
378
|
+
<xsl:apply-templates mode="flatxml"/>
|
379
|
+
</xsl:element>
|
380
|
+
</xsl:for-each> -->
|
381
|
+
</xsl:copy>
|
299
382
|
<xsl:apply-templates mode="flatxml"/>
|
300
383
|
</xsl:template>
|
301
384
|
|
@@ -307,6 +390,12 @@
|
|
307
390
|
<xsl:for-each select="following-sibling::*[local-name() = 'note']">
|
308
391
|
<xsl:call-template name="change_note_kind"/>
|
309
392
|
</xsl:for-each>
|
393
|
+
<xsl:if test="@depth = 3 and local-name() = 'title' and ../bipm:clause/bipm:title/@depth = 4 and count(following-sibling::*[1][local-name() = 'note']) > 0"> <!-- it means that current node is title level is 3 with notes, next level is 4 -->
|
394
|
+
<!-- <put_note_side_level4_here/> -->
|
395
|
+
<xsl:for-each select="../bipm:clause//bipm:fn[ancestor::bipm:quote or not(ancestor::bipm:table)]"> <!-- move here footnotes from clause level 4 -->
|
396
|
+
<xsl:call-template name="fn_to_note_side"/>
|
397
|
+
</xsl:for-each>
|
398
|
+
</xsl:if>
|
310
399
|
</xsl:copy>
|
311
400
|
</xsl:template>
|
312
401
|
|
@@ -340,23 +429,93 @@
|
|
340
429
|
</xsl:template>
|
341
430
|
|
342
431
|
|
343
|
-
|
344
|
-
|
345
|
-
|
346
|
-
|
432
|
+
<!-- change fn to xref with asterisks --> <!-- all fn except fn in table (but not quote table) -->
|
433
|
+
<xsl:template match="bipm:fn[ancestor::bipm:quote or not(ancestor::bipm:table)]" mode="flatxml">
|
434
|
+
<xsl:choose>
|
435
|
+
<!-- see template above with @depth = 4 -->
|
436
|
+
<xsl:when test="ancestor::bipm:clause[1]/bipm:title/@depth = 4 and count(ancestor::bipm:clause[2]/bipm:title[@depth = 3]/following-sibling::*[1][local-name() = 'note']) > 0">
|
437
|
+
<xsl:apply-templates select="." mode="fn_to_xref"/>
|
438
|
+
</xsl:when>
|
439
|
+
<xsl:when test="ancestor::bipm:li">
|
440
|
+
<xsl:apply-templates select="." mode="fn_to_xref"/> <!-- displays asterisks with link to side note -->
|
441
|
+
</xsl:when>
|
442
|
+
<xsl:otherwise>
|
443
|
+
<xsl:apply-templates select="." mode="fn_to_xref"/> <!-- displays asterisks with link to side note -->
|
444
|
+
<xsl:call-template name="fn_to_note_side"/> <!-- convert footnote to side note with asterisk at start -->
|
445
|
+
<!-- <xsl:element name="note_side" namespace="https://www.metanorma.org/ns/bipm">
|
446
|
+
<xsl:apply-templates mode="flatxml"/>
|
447
|
+
</xsl:element> -->
|
448
|
+
</xsl:otherwise>
|
449
|
+
</xsl:choose>
|
347
450
|
</xsl:template>
|
348
451
|
|
349
|
-
|
350
|
-
|
351
|
-
|
452
|
+
<!-- change fn to xref with asterisks --> <!-- all fn except fn in table (but not quote table) -->
|
453
|
+
<xsl:template match="bipm:fn[ancestor::bipm:quote or not(ancestor::bipm:table)]" mode="flatxml_list">
|
454
|
+
<xsl:choose>
|
455
|
+
<!-- see template above with @depth = 4 -->
|
456
|
+
<xsl:when test="ancestor::bipm:clause[1]/bipm:title/@depth = 4 and count(ancestor::bipm:clause[2]/bipm:title[@depth = 3]/following-sibling::*[1][local-name() = 'note']) > 0">
|
457
|
+
<xsl:apply-templates select="." mode="fn_to_xref"/>
|
458
|
+
</xsl:when>
|
459
|
+
<xsl:when test="ancestor::bipm:li">
|
460
|
+
<xsl:apply-templates select="." mode="fn_to_xref"/> <!-- displays asterisks with link to side note -->
|
461
|
+
</xsl:when>
|
462
|
+
<xsl:otherwise>
|
463
|
+
<xsl:apply-templates select="." mode="fn_to_xref"/> <!-- displays asterisks with link to side note -->
|
464
|
+
<xsl:call-template name="fn_to_note_side"/> <!-- convert footnote to side note with asterisk at start -->
|
465
|
+
<!-- <xsl:element name="note_side" namespace="https://www.metanorma.org/ns/bipm">
|
466
|
+
<xsl:apply-templates mode="flatxml"/>
|
467
|
+
</xsl:element> -->
|
468
|
+
</xsl:otherwise>
|
469
|
+
</xsl:choose>
|
470
|
+
</xsl:template>
|
471
|
+
|
472
|
+
<xsl:template match="bipm:fn" mode="fn_to_xref">
|
473
|
+
<xsl:element name="xref" namespace="https://www.metanorma.org/ns/bipm">
|
474
|
+
|
475
|
+
<xsl:attribute name="target">
|
476
|
+
<xsl:call-template name="fn_reference_to_xref_target"/>
|
477
|
+
</xsl:attribute>
|
478
|
+
|
479
|
+
<xsl:variable name="curr_clause_id" select="normalize-space(ancestor::bipm:clause[1]/@id)"/>
|
480
|
+
<xsl:variable name="curr_annex_id" select="normalize-space(ancestor::bipm:annex[1]/@id)"/>
|
481
|
+
|
482
|
+
<xsl:variable name="number">
|
483
|
+
<xsl:choose>
|
484
|
+
<xsl:when test="$curr_clause_id != ''">
|
485
|
+
<xsl:number count="bipm:fn[ancestor::bipm:clause[1]/@id = $curr_clause_id][ancestor::bipm:quote or not(ancestor::bipm:table)]" level="any"/>
|
486
|
+
</xsl:when>
|
487
|
+
<xsl:otherwise>
|
488
|
+
<xsl:number count="bipm:fn[ancestor::bipm:annex[1]/@id = $curr_annex_id]"/>
|
489
|
+
</xsl:otherwise>
|
490
|
+
</xsl:choose>
|
491
|
+
</xsl:variable>
|
492
|
+
|
493
|
+
<!-- <xsl:variable name="asterisks">
|
494
|
+
<xsl:call-template name="repeat">
|
495
|
+
<xsl:with-param name="char" select="'*'"/>
|
496
|
+
<xsl:with-param name="count" select="$number + 1"/>
|
497
|
+
</xsl:call-template>
|
498
|
+
</xsl:variable>
|
499
|
+
<xsl:value-of select="$asterisks"/> -->
|
500
|
+
<xsl:element name="sup_fn" namespace="https://www.metanorma.org/ns/bipm">
|
501
|
+
<xsl:value-of select="concat('(',$number,')')"/>
|
502
|
+
</xsl:element>
|
503
|
+
<!-- <xsl:text> </xsl:text> -->
|
504
|
+
|
352
505
|
</xsl:element>
|
353
506
|
</xsl:template>
|
354
507
|
|
355
|
-
|
356
|
-
|
357
|
-
<xsl:
|
358
|
-
|
359
|
-
|
508
|
+
<xsl:template name="fn_reference_to_xref_target">
|
509
|
+
<xsl:variable name="lang" select="ancestor::bipm:bipm-standard/*[local-name()='bibdata']//*[local-name()='language'][@current = 'true']"/>
|
510
|
+
<xsl:variable name="gen_id" select="generate-id()"/>
|
511
|
+
<xsl:variable name="curr_clause_id" select="ancestor::bipm:clause[1]/@id"/>
|
512
|
+
<xsl:variable name="number">
|
513
|
+
<xsl:number count="bipm:fn[ancestor::bipm:clause[1]/@id = $curr_clause_id][ancestor::bipm:quote or not(ancestor::bipm:table)]" level="any"/>
|
514
|
+
</xsl:variable>
|
515
|
+
<xsl:value-of select="concat($lang, '_footnote_', @reference, '_', $number, '_', $gen_id)"/>
|
516
|
+
</xsl:template>
|
517
|
+
|
518
|
+
|
360
519
|
<xsl:template match="bipm:preface/bipm:clause[position() > 1]" mode="flatxml">
|
361
520
|
<xsl:copy-of select="."/>
|
362
521
|
</xsl:template>
|
@@ -380,44 +539,30 @@
|
|
380
539
|
</xsl:copy>
|
381
540
|
</xsl:template>
|
382
541
|
|
383
|
-
|
384
|
-
<!-- <xsl:template match="bipm:li[last()]" mode="flatxml_list">
|
385
|
-
<xsl:copy>
|
386
|
-
<xsl:apply-templates select="@*" mode="flatxml_list"/>
|
387
|
-
<xsl:attribute name="list_type">
|
388
|
-
<xsl:value-of select="local-name(..)"/>
|
389
|
-
</xsl:attribute>
|
390
|
-
<xsl:attribute name="label">
|
391
|
-
<xsl:call-template name="setListItemLabel"/>
|
392
|
-
</xsl:attribute>
|
393
|
-
<xsl:apply-templates select="node()" mode="flatxml_list"/>
|
394
|
-
<xsl:copy-of select="following-sibling::*"/>
|
395
|
-
</xsl:copy>
|
396
|
-
</xsl:template> -->
|
397
|
-
|
398
542
|
<!-- copy 'ol' 'ul' properties to each 'li' -->
|
399
|
-
<!-- move note for list (list level note) into latest 'li' -->
|
543
|
+
<!-- OBSOLETE: move note for list (list level note) into latest 'li' -->
|
400
544
|
<!-- move note for list (list level note) into first 'li' -->
|
401
|
-
|
545
|
+
<!-- move fn for list-item (list-item level footnote) into first 'li' -->
|
546
|
+
<xsl:template match="bipm:li" mode="flatxml_list">
|
402
547
|
<xsl:copy>
|
403
548
|
<xsl:apply-templates select="@*" mode="flatxml_list"/>
|
404
549
|
<xsl:attribute name="list_type">
|
405
550
|
<xsl:value-of select="local-name(..)"/>
|
406
551
|
</xsl:attribute>
|
407
|
-
<xsl:attribute name="label">
|
408
|
-
|
409
|
-
</xsl:attribute>
|
552
|
+
<!-- <xsl:attribute name="label"> -->
|
553
|
+
<xsl:call-template name="setListItemLabel"/>
|
554
|
+
<!-- </xsl:attribute> -->
|
410
555
|
<xsl:if test="ancestor::bipm:quote">
|
411
|
-
<xsl:attribute name="parent-type">quote</xsl:attribute>
|
556
|
+
<xsl:attribute name="parent-type">quote</xsl:attribute>
|
412
557
|
</xsl:if>
|
413
558
|
<xsl:apply-templates mode="flatxml_list"/>
|
414
559
|
|
415
|
-
|
560
|
+
|
416
561
|
<!-- if current li is first -->
|
417
562
|
<xsl:if test="not(preceding-sibling::*[local-name() = 'li'])">
|
418
563
|
<!-- <xsl:copy-of select="following-sibling::bipm:li[last()]/following-sibling::*"/> -->
|
419
564
|
|
420
|
-
|
565
|
+
<!-- move note for list (list level note) into first 'li' -->
|
421
566
|
<xsl:for-each select="following-sibling::bipm:li[last()]/following-sibling::*">
|
422
567
|
<xsl:choose>
|
423
568
|
<xsl:when test="local-name() = 'note'">
|
@@ -428,6 +573,27 @@
|
|
428
573
|
</xsl:otherwise>
|
429
574
|
</xsl:choose>
|
430
575
|
</xsl:for-each>
|
576
|
+
|
577
|
+
<xsl:if test="ancestor::bipm:quote or not(ancestor::bipm:table)">
|
578
|
+
|
579
|
+
<xsl:choose>
|
580
|
+
<!-- see template above with @depth = 4 -->
|
581
|
+
<xsl:when test="ancestor::bipm:clause[1]/bipm:title/@depth = 4 and count(ancestor::bipm:clause[2]/bipm:title[@depth = 3]/following-sibling::*[1][local-name() = 'note']) > 0"/>
|
582
|
+
<xsl:otherwise>
|
583
|
+
|
584
|
+
<!-- move all footnotes in the current list (not only current list item) into first 'li' -->
|
585
|
+
<xsl:variable name="curr_list_id" select="../@id"/>
|
586
|
+
<xsl:for-each select="..//bipm:fn[ancestor::bipm:ol[1]/@id = $curr_list_id or ancestor::bipm:ul[1]/@id = $curr_list_id]">
|
587
|
+
|
588
|
+
<xsl:call-template name="fn_to_note_side"/>
|
589
|
+
|
590
|
+
|
591
|
+
</xsl:for-each>
|
592
|
+
|
593
|
+
</xsl:otherwise>
|
594
|
+
</xsl:choose>
|
595
|
+
|
596
|
+
</xsl:if>
|
431
597
|
|
432
598
|
</xsl:if>
|
433
599
|
|
@@ -438,35 +604,100 @@
|
|
438
604
|
</xsl:copy>
|
439
605
|
</xsl:template>
|
440
606
|
|
441
|
-
<!-- remove latest element (after li), because they moved into latest 'li' -->
|
442
|
-
<xsl:template match="bipm:ul/*[not(local-name() = 'li') and not(following-sibling::*[local-name() = 'li'])]" mode="flatxml_list"/>
|
443
|
-
<xsl:template match="bipm:ol/*[not(local-name() = 'li') and not(following-sibling::*[local-name() = 'li'])]" mode="flatxml_list"/>
|
444
607
|
|
445
|
-
<xsl:template name="
|
446
|
-
<xsl:
|
447
|
-
|
448
|
-
<xsl:
|
449
|
-
|
608
|
+
<xsl:template name="fn_to_note_side">
|
609
|
+
<xsl:element name="note_side" namespace="https://www.metanorma.org/ns/bipm">
|
610
|
+
|
611
|
+
<xsl:attribute name="id">
|
612
|
+
<xsl:call-template name="fn_reference_to_xref_target"/>
|
613
|
+
</xsl:attribute>
|
614
|
+
|
615
|
+
<xsl:variable name="curr_clause_id" select="normalize-space(ancestor::bipm:clause[1]/@id)"/>
|
616
|
+
<xsl:variable name="curr_annex_id" select="normalize-space(ancestor::bipm:annex[1]/@id)"/>
|
617
|
+
|
618
|
+
<xsl:variable name="number">
|
450
619
|
<xsl:choose>
|
451
|
-
<xsl:when test="
|
452
|
-
<xsl:number
|
453
|
-
</xsl:when>
|
454
|
-
<xsl:when test="../@type = 'alphabet'">
|
455
|
-
<xsl:number format="a)"/>
|
456
|
-
</xsl:when>
|
457
|
-
<xsl:when test="../@type = 'alphabet_upper'">
|
458
|
-
<xsl:number format="A)"/>
|
459
|
-
</xsl:when>
|
460
|
-
<xsl:when test="../@type = 'roman'">
|
461
|
-
<xsl:number format="i)"/>
|
620
|
+
<xsl:when test="$curr_clause_id != ''">
|
621
|
+
<xsl:number count="bipm:fn[ancestor::bipm:clause[1]/@id = $curr_clause_id][ancestor::bipm:quote or not(ancestor::bipm:table)]" level="any"/>
|
462
622
|
</xsl:when>
|
463
623
|
<xsl:otherwise>
|
464
|
-
<xsl:number
|
624
|
+
<xsl:number count="bipm:fn[ancestor::bipm:annex[1]/@id = $curr_annex_id]"/>
|
465
625
|
</xsl:otherwise>
|
466
626
|
</xsl:choose>
|
467
|
-
</xsl:
|
627
|
+
</xsl:variable>
|
628
|
+
|
629
|
+
<!-- <xsl:variable name="asterisks">
|
630
|
+
<xsl:call-template name="repeat">
|
631
|
+
<xsl:with-param name="char" select="'*'"/>
|
632
|
+
<xsl:with-param name="count" select="$number + 1"/>
|
633
|
+
</xsl:call-template>
|
634
|
+
</xsl:variable>
|
635
|
+
<xsl:value-of select="$asterisks"/> -->
|
636
|
+
<xsl:element name="sup_fn" namespace="https://www.metanorma.org/ns/bipm">
|
637
|
+
<xsl:value-of select="concat('(',$number,')')"/>
|
638
|
+
</xsl:element>
|
639
|
+
<xsl:text> </xsl:text>
|
640
|
+
|
641
|
+
<xsl:apply-templates mode="flatxml"/>
|
642
|
+
</xsl:element>
|
643
|
+
</xsl:template>
|
644
|
+
|
645
|
+
<!-- remove latest elements (after li), because they moved into latest 'li' -->
|
646
|
+
<xsl:template match="bipm:ul/*[not(local-name() = 'li') and not(following-sibling::*[local-name() = 'li'])]" mode="flatxml_list"/>
|
647
|
+
<xsl:template match="bipm:ol/*[not(local-name() = 'li') and not(following-sibling::*[local-name() = 'li'])]" mode="flatxml_list"/>
|
648
|
+
|
649
|
+
<xsl:template name="setListItemLabel">
|
650
|
+
<xsl:attribute name="label">
|
651
|
+
<xsl:choose>
|
652
|
+
<xsl:when test="local-name(..) = 'ul' and ../ancestor::bipm:ul">−</xsl:when> <!-- − - minus sign. — - dash -->
|
653
|
+
<xsl:when test="local-name(..) = 'ul'">•</xsl:when> <!-- — dash -->
|
654
|
+
<xsl:otherwise> <!-- for ordered lists -->
|
655
|
+
<xsl:variable name="start_value">
|
656
|
+
<xsl:choose>
|
657
|
+
<xsl:when test="normalize-space(../@start) != ''">
|
658
|
+
<xsl:value-of select="number(../@start) - 1"/><!-- if start="3" then start_value=2 + xsl:number(1) = 3 -->
|
659
|
+
</xsl:when>
|
660
|
+
<xsl:otherwise>0</xsl:otherwise>
|
661
|
+
</xsl:choose>
|
662
|
+
</xsl:variable>
|
663
|
+
|
664
|
+
<xsl:variable name="curr_value">
|
665
|
+
<xsl:number/>
|
666
|
+
</xsl:variable>
|
667
|
+
|
668
|
+
<xsl:variable name="format">
|
669
|
+
<xsl:choose>
|
670
|
+
<xsl:when test="../@type = 'arabic'">1.</xsl:when>
|
671
|
+
<xsl:when test="../@type = 'alphabet'">a)</xsl:when>
|
672
|
+
<!-- <xsl:choose>
|
673
|
+
<xsl:when test="$independentAppendix = ''">a)</xsl:when>
|
674
|
+
<xsl:otherwise>(a)</xsl:otherwise>
|
675
|
+
</xsl:choose>
|
676
|
+
</xsl:when> -->
|
677
|
+
<xsl:when test="../@type = 'alphabet_upper'">A.</xsl:when>
|
678
|
+
<xsl:when test="../@type = 'roman'">(i)</xsl:when>
|
679
|
+
<xsl:when test="../@type = 'roman_upper'">I.</xsl:when>
|
680
|
+
<xsl:otherwise>1.</xsl:otherwise>
|
681
|
+
</xsl:choose>
|
682
|
+
</xsl:variable>
|
683
|
+
|
684
|
+
<xsl:number value="$start_value + $curr_value" format="{$format}"/>
|
685
|
+
|
686
|
+
</xsl:otherwise>
|
687
|
+
</xsl:choose>
|
688
|
+
</xsl:attribute>
|
689
|
+
<xsl:choose>
|
690
|
+
<xsl:when test="local-name(..) = 'ul' and ../ancestor::bipm:ul"/> <!-- — dash -->
|
691
|
+
<xsl:when test="local-name(..) = 'ul'">
|
692
|
+
<xsl:attribute name="font-size">15pt</xsl:attribute>
|
693
|
+
</xsl:when>
|
468
694
|
</xsl:choose>
|
469
695
|
</xsl:template>
|
696
|
+
<!-- ================================= -->
|
697
|
+
<!-- END: Flattening xml for fit notes at page sides (margins) -->
|
698
|
+
<!-- ================================= -->
|
699
|
+
|
700
|
+
|
470
701
|
|
471
702
|
|
472
703
|
<xsl:template match="bipm:bipm-standard"/>
|
@@ -479,7 +710,7 @@
|
|
479
710
|
<xsl:call-template name="namespaceCheck"/>
|
480
711
|
</xsl:for-each>
|
481
712
|
|
482
|
-
<xsl:variable name="curr_lang" select="bipm:bibdata/bipm:language"/>
|
713
|
+
<xsl:variable name="curr_lang" select="bipm:bibdata/bipm:language[@current = 'true']"/>
|
483
714
|
|
484
715
|
<xsl:if test="$debug = 'true'">
|
485
716
|
<xsl:text disable-output-escaping="yes"><!--</xsl:text>
|
@@ -490,7 +721,7 @@
|
|
490
721
|
|
491
722
|
|
492
723
|
<xsl:choose>
|
493
|
-
<xsl:when test="$independentAppendix = ''">
|
724
|
+
<xsl:when test="$independentAppendix = '' and not($doctype = 'guide')">
|
494
725
|
|
495
726
|
<!-- Document pages -->
|
496
727
|
<fo:page-sequence master-reference="document" force-page-count="no-force">
|
@@ -557,9 +788,12 @@
|
|
557
788
|
|
558
789
|
<fo:block-container absolute-position="fixed" top="200mm" height="69mm" font-family="Times New Roman" text-align="center" display-align="after">
|
559
790
|
<xsl:apply-templates select="bipm:boilerplate/bipm:feedback-statement"/>
|
560
|
-
<
|
561
|
-
|
562
|
-
|
791
|
+
<xsl:variable name="ISBN" select="normalize-space(bipm:bibdata/bipm:docidentifier[@type='ISBN'])"/>
|
792
|
+
<xsl:if test="$ISBN != ''">
|
793
|
+
<fo:block margin-top="15mm">
|
794
|
+
<xsl:text>ISBN </xsl:text><xsl:value-of select="$ISBN"/>
|
795
|
+
</fo:block>
|
796
|
+
</xsl:if>
|
563
797
|
</fo:block-container>
|
564
798
|
|
565
799
|
</fo:flow>
|
@@ -567,7 +801,21 @@
|
|
567
801
|
|
568
802
|
<fo:page-sequence master-reference="document" force-page-count="no-force">
|
569
803
|
<xsl:call-template name="insertFootnoteSeparator"/>
|
570
|
-
|
804
|
+
|
805
|
+
<xsl:variable name="header-title">
|
806
|
+
<xsl:choose>
|
807
|
+
<xsl:when test="bipm:preface/*[1]/bipm:title[1]/*[local-name() = 'tab']">
|
808
|
+
<xsl:apply-templates select="bipm:preface/*[1]/bipm:title[1]/*[local-name() = 'tab'][1]/following-sibling::node()" mode="header"/>
|
809
|
+
</xsl:when>
|
810
|
+
<xsl:otherwise>
|
811
|
+
<xsl:apply-templates select="bipm:preface/*[1]/bipm:title[1]" mode="header"/>
|
812
|
+
</xsl:otherwise>
|
813
|
+
</xsl:choose>
|
814
|
+
</xsl:variable>
|
815
|
+
<xsl:call-template name="insertHeaderFooter">
|
816
|
+
<xsl:with-param name="header-title" select="$header-title"/>
|
817
|
+
</xsl:call-template>
|
818
|
+
|
571
819
|
<fo:flow flow-name="xsl-region-body">
|
572
820
|
<fo:block line-height="135%">
|
573
821
|
<!-- <xsl:apply-templates select="bipm:preface/bipm:abstract" /> -->
|
@@ -584,18 +832,24 @@
|
|
584
832
|
|
585
833
|
<fo:page-sequence master-reference="document" force-page-count="no-force">
|
586
834
|
<xsl:call-template name="insertFootnoteSeparator"/>
|
587
|
-
|
835
|
+
|
836
|
+
<xsl:variable name="title-toc">
|
837
|
+
<fo:inline>
|
838
|
+
<xsl:call-template name="getTitle">
|
839
|
+
<xsl:with-param name="name" select="'title-toc'"/>
|
840
|
+
</xsl:call-template>
|
841
|
+
</fo:inline>
|
842
|
+
</xsl:variable>
|
843
|
+
<xsl:call-template name="insertHeaderFooter">
|
844
|
+
<xsl:with-param name="header-title"><xsl:value-of select="$title-toc"/></xsl:with-param>
|
845
|
+
</xsl:call-template>
|
846
|
+
|
588
847
|
<fo:flow flow-name="xsl-region-body">
|
589
848
|
|
590
849
|
<fo:block-container margin-left="-14mm" margin-right="0mm">
|
591
850
|
<fo:block-container margin-left="0mm" margin-right="0mm">
|
592
|
-
<fo:block font-family="Arial" font-size="16pt" font-weight="bold" text-align-last="justify" margin-bottom="
|
593
|
-
<
|
594
|
-
<xsl:call-template name="getTitle">
|
595
|
-
<xsl:with-param name="name" select="'title-toc'"/>
|
596
|
-
</xsl:call-template>
|
597
|
-
</xsl:variable>
|
598
|
-
<fo:marker marker-class-name="header-title"><xsl:value-of select="$title-toc"/></fo:marker>
|
851
|
+
<fo:block font-family="Arial" font-size="16pt" font-weight="bold" text-align-last="justify" margin-bottom="82pt">
|
852
|
+
<!-- <fo:marker marker-class-name="header-title"><xsl:value-of select="$title-toc"/></fo:marker> -->
|
599
853
|
<fo:inline><xsl:value-of select="//bipm:bipm-standard/bipm:bibdata/bipm:title[@language = $curr_lang and @type='main']"/></fo:inline>
|
600
854
|
<fo:inline keep-together.within-line="always">
|
601
855
|
<fo:leader leader-pattern="space"/>
|
@@ -611,12 +865,28 @@
|
|
611
865
|
<fo:block>
|
612
866
|
<!-- <xsl:copy-of select="$contents"/> -->
|
613
867
|
|
614
|
-
<xsl:
|
615
|
-
<
|
616
|
-
|
617
|
-
|
618
|
-
|
619
|
-
|
868
|
+
<xsl:if test="xalan:nodeset($contents)/doc[@id = $docid]//item[@display='true']">
|
869
|
+
<fo:table table-layout="fixed" width="100%">
|
870
|
+
<fo:table-column column-width="127mm"/>
|
871
|
+
<fo:table-column column-width="12mm"/>
|
872
|
+
<fo:table-body>
|
873
|
+
<xsl:for-each select="xalan:nodeset($contents)/doc[@id = $docid]//item[@display='true' and not(@type = 'annex') and not(@parent = 'annex')]">
|
874
|
+
<xsl:call-template name="insertContentItem"/>
|
875
|
+
</xsl:for-each>
|
876
|
+
<xsl:if test="$doctype ='brochure'">
|
877
|
+
<!-- insert page break between main sections and appendixes in ToC -->
|
878
|
+
<fo:table-row>
|
879
|
+
<fo:table-cell number-columns-spanned="2">
|
880
|
+
<fo:block break-after="page"/>
|
881
|
+
</fo:table-cell>
|
882
|
+
</fo:table-row>
|
883
|
+
</xsl:if>
|
884
|
+
<xsl:for-each select="xalan:nodeset($contents)/doc[@id = $docid]//item[@display='true' and (@type = 'annex')]"> <!-- or (@level = 2 and @parent = 'annex') -->
|
885
|
+
<xsl:call-template name="insertContentItem"/>
|
886
|
+
</xsl:for-each>
|
887
|
+
</fo:table-body>
|
888
|
+
</fo:table>
|
889
|
+
</xsl:if>
|
620
890
|
</fo:block>
|
621
891
|
</fo:block-container>
|
622
892
|
|
@@ -639,47 +909,6 @@
|
|
639
909
|
<!-- Normative references -->
|
640
910
|
<xsl:apply-templates select="bipm:bibliography/bipm:references[@normative='true']" mode="sections"/>
|
641
911
|
|
642
|
-
|
643
|
-
<!-- Table of Contents for Annexes -->
|
644
|
-
<!-- <fo:page-sequence master-reference="document" force-page-count="no-force">
|
645
|
-
<xsl:call-template name="insertHeaderFooter"/>
|
646
|
-
<fo:flow flow-name="xsl-region-body">
|
647
|
-
|
648
|
-
<fo:block-container margin-left="-18mm" margin-right="-1mm">
|
649
|
-
<fo:block-container margin-left="0mm" margin-right="0mm">
|
650
|
-
<fo:block font-family="Arial" font-size="16pt" font-weight="bold" text-align-last="justify" margin-bottom="84pt">
|
651
|
-
<xsl:variable name="title-toc">
|
652
|
-
<xsl:call-template name="getTitle">
|
653
|
-
<xsl:with-param name="name" select="'title-toc'"/>
|
654
|
-
</xsl:call-template>
|
655
|
-
</xsl:variable>
|
656
|
-
<fo:marker marker-class-name="header-title"><xsl:value-of select="$title-toc"/></fo:marker>
|
657
|
-
<fo:inline><xsl:value-of select="$title-fr"/></fo:inline>
|
658
|
-
<fo:inline keep-together.within-line="always">
|
659
|
-
<fo:leader leader-pattern="space"/>
|
660
|
-
<fo:inline>
|
661
|
-
<xsl:value-of select="$title-toc"/>
|
662
|
-
</fo:inline>
|
663
|
-
</fo:inline>
|
664
|
-
</fo:block>
|
665
|
-
</fo:block-container>
|
666
|
-
</fo:block-container>
|
667
|
-
|
668
|
-
<fo:block-container line-height="130%">
|
669
|
-
<fo:block>
|
670
|
-
<xsl:for-each select="xalan:nodeset($contents)/doc[@id = $docid]//item[@display='true' and @type = 'annex']">
|
671
|
-
|
672
|
-
<xsl:call-template name="insertContentItem"/>
|
673
|
-
|
674
|
-
</xsl:for-each>
|
675
|
-
</fo:block>
|
676
|
-
</fo:block-container>
|
677
|
-
|
678
|
-
</fo:flow>
|
679
|
-
|
680
|
-
</fo:page-sequence> -->
|
681
|
-
|
682
|
-
|
683
912
|
<xsl:apply-templates select="bipm:annex" mode="sections"/>
|
684
913
|
|
685
914
|
<!-- Bibliography -->
|
@@ -747,12 +976,60 @@
|
|
747
976
|
</fo:block-container>
|
748
977
|
|
749
978
|
<fo:block-container font-size="18pt" font-weight="bold" text-align="center">
|
750
|
-
<fo:block>
|
751
|
-
|
979
|
+
<fo:block>
|
980
|
+
|
981
|
+
<xsl:variable name="title">
|
982
|
+
<xsl:choose>
|
983
|
+
<xsl:when test="$independentAppendix != ''">
|
984
|
+
<xsl:value-of select="//bipm:bipm-standard/bipm:bibdata/bipm:title[@language = $curr_lang and @type='appendix']"/>
|
985
|
+
</xsl:when>
|
986
|
+
<xsl:otherwise> <!-- doctype = 'guide' -->
|
987
|
+
<xsl:value-of select="//bipm:bipm-standard/bipm:bibdata/bipm:title[@language = $curr_lang and @type='main']"/>
|
988
|
+
</xsl:otherwise>
|
989
|
+
</xsl:choose>
|
990
|
+
</xsl:variable>
|
991
|
+
|
992
|
+
<xsl:variable name="mep_text" select="'Mise en pratique'"/>
|
993
|
+
|
994
|
+
<xsl:choose>
|
995
|
+
<xsl:when test="$curr_lang = 'en' and contains($title, $mep_text)">
|
996
|
+
<xsl:value-of select="substring-before($title, $mep_text)"/>
|
997
|
+
<xsl:text> </xsl:text><fo:inline font-style="italic"><xsl:value-of select="$mep_text"/></fo:inline><xsl:text> </xsl:text>
|
998
|
+
<xsl:value-of select="substring-after($title, $mep_text)"/>
|
999
|
+
</xsl:when>
|
1000
|
+
<xsl:otherwise>
|
1001
|
+
<xsl:value-of select="$title"/>
|
1002
|
+
</xsl:otherwise>
|
1003
|
+
</xsl:choose>
|
1004
|
+
|
752
1005
|
</fo:block>
|
1006
|
+
|
1007
|
+
|
1008
|
+
<xsl:variable name="part_num" select="normalize-space(/bipm:bipm-standard/bipm:bibdata/bipm:ext/bipm:structuredidentifier/bipm:part)"/>
|
1009
|
+
<xsl:if test="/bipm:bipm-standard/bipm:bibdata/bipm:title[@language = $curr_lang and @type = 'part']">
|
1010
|
+
<fo:block>
|
1011
|
+
<xsl:if test="$part_num != ''">
|
1012
|
+
<xsl:value-of select="java:replaceAll(java:java.lang.String.new($titles/title-part[@lang=$curr_lang]),'#',$part_num)"/>
|
1013
|
+
</xsl:if>
|
1014
|
+
<xsl:text>: </xsl:text>
|
1015
|
+
<xsl:value-of select="/bipm:bipm-standard/bipm:bibdata/bipm:title[@language = $curr_lang and @type = 'part']"/>
|
1016
|
+
</fo:block>
|
1017
|
+
</xsl:if>
|
1018
|
+
<xsl:variable name="subpart_num" select="normalize-space(/bipm:bipm-standard/bipm:bibdata/bipm:ext/bipm:structuredidentifier/bipm:subpart)"/>
|
1019
|
+
<xsl:if test="/bipm:bipm-standard/bipm:bibdata/bipm:title[@language = $curr_lang and @type = 'subpart']">
|
1020
|
+
<fo:block>
|
1021
|
+
<xsl:if test="$subpart_num != ''">
|
1022
|
+
<xsl:value-of select="java:replaceAll(java:java.lang.String.new($titles/title-subpart[@lang=$curr_lang]),'#',$subpart_num)"/>
|
1023
|
+
</xsl:if>
|
1024
|
+
<xsl:text>: </xsl:text>
|
1025
|
+
<xsl:value-of select="/bipm:bipm-standard/bipm:bibdata/bipm:title[@language = $curr_lang and @type = 'subpart']"/>
|
1026
|
+
</fo:block>
|
1027
|
+
</xsl:if>
|
1028
|
+
|
1029
|
+
|
753
1030
|
<fo:block> </fo:block>
|
754
1031
|
<fo:block font-size="9pt">
|
755
|
-
<xsl:value-of select="/bipm:bipm-standard/bipm:bibdata/bipm:ext/bipm:editorialgroup/bipm:committee"/>
|
1032
|
+
<xsl:value-of select="/bipm:bipm-standard/bipm:bibdata/bipm:ext/bipm:editorialgroup/bipm:committee/bipm:variant[@language = $curr_lang]"/>
|
756
1033
|
</fo:block>
|
757
1034
|
</fo:block-container>
|
758
1035
|
|
@@ -774,11 +1051,15 @@
|
|
774
1051
|
<fo:block> </fo:block>
|
775
1052
|
<fo:block> </fo:block>
|
776
1053
|
<fo:block text-align-last="justify">
|
777
|
-
<
|
778
|
-
<xsl:
|
779
|
-
|
780
|
-
|
781
|
-
|
1054
|
+
<fo:inline>
|
1055
|
+
<xsl:if test="/bipm:bipm-standard/bipm:bibdata/bipm:ext/bipm:structuredidentifier/bipm:appendix">
|
1056
|
+
<xsl:choose>
|
1057
|
+
<xsl:when test="$lang = 'fr'">Annexe </xsl:when>
|
1058
|
+
<xsl:otherwise>Appendix </xsl:otherwise>
|
1059
|
+
</xsl:choose>
|
1060
|
+
<xsl:value-of select="/bipm:bipm-standard/bipm:bibdata/bipm:ext/bipm:structuredidentifier/bipm:appendix"/>
|
1061
|
+
</xsl:if>
|
1062
|
+
</fo:inline>
|
782
1063
|
<fo:inline keep-together.within-line="always">
|
783
1064
|
<fo:leader leader-pattern="space"/>
|
784
1065
|
<xsl:call-template name="printRevisionDate">
|
@@ -802,6 +1083,7 @@
|
|
802
1083
|
<!-- Document Pages -->
|
803
1084
|
|
804
1085
|
<xsl:apply-templates select="bipm:sections/*" mode="sections"/>
|
1086
|
+
<!-- <xsl:call-template name="sections_appendix"/> --> <!-- without pagebreaks -->
|
805
1087
|
|
806
1088
|
<!-- Normative references -->
|
807
1089
|
<xsl:apply-templates select="bipm:bibliography/bipm:references[@normative='true']" mode="sections"/>
|
@@ -908,8 +1190,10 @@
|
|
908
1190
|
<xsl:variable name="weight-bold">500</xsl:variable>
|
909
1191
|
|
910
1192
|
<fo:block-container absolute-position="fixed" left="12.5mm" top="60mm">
|
911
|
-
|
912
|
-
<fo:block font-size="22.2pt" font-weight="{$weight-
|
1193
|
+
|
1194
|
+
<fo:block font-size="22.2pt" font-weight="{$weight-normal}"><xsl:value-of select="/bipm:bipm-standard/bipm:bibdata/bipm:title[@language = 'fr' and @type = 'main']"/></fo:block>
|
1195
|
+
<fo:block font-size="22.2pt" font-weight="{$weight-bold}" margin-top="1mm"><xsl:value-of select="/bipm:bipm-standard/bipm:bibdata/bipm:title[@language = 'en' and @type = 'main']"/></fo:block>
|
1196
|
+
|
913
1197
|
<xsl:variable name="edition_str">édition</xsl:variable>
|
914
1198
|
<!-- <xsl:choose>
|
915
1199
|
<xsl:when test="$lang = 'fr'">édition</xsl:when>
|
@@ -920,17 +1204,115 @@
|
|
920
1204
|
</fo:block-container>
|
921
1205
|
|
922
1206
|
<fo:block-container height="98%" display-align="center">
|
1207
|
+
|
1208
|
+
<!-- Appendix titles processing -->
|
923
1209
|
<xsl:variable name="appendix_num" select="normalize-space(/bipm:bipm-standard/bipm:bibdata/bipm:ext/bipm:structuredidentifier/bipm:appendix)"/>
|
924
1210
|
<xsl:if test="$appendix_num != ''">
|
925
1211
|
<fo:block font-size="17pt" font-weight="{$weight-normal}">Annexe <xsl:value-of select="$appendix_num"/></fo:block>
|
926
1212
|
<fo:block font-size="17pt" font-weight="{$weight-bold}">Appendix <xsl:value-of select="$appendix_num"/></fo:block>
|
927
1213
|
</xsl:if>
|
928
|
-
|
929
|
-
|
930
|
-
<fo:block font-
|
931
|
-
|
932
|
-
|
933
|
-
|
1214
|
+
|
1215
|
+
<xsl:if test="/bipm:bipm-standard/bipm:bibdata/bipm:title[@type = 'appendix']">
|
1216
|
+
<fo:block font-size="30.4pt">
|
1217
|
+
<fo:block> </fo:block>
|
1218
|
+
<fo:block font-weight="{$weight-normal}"><xsl:value-of select="/bipm:bipm-standard/bipm:bibdata/bipm:title[@language = 'fr' and @type = 'appendix']"/></fo:block>
|
1219
|
+
<fo:block> </fo:block>
|
1220
|
+
<fo:block font-weight="{$weight-bold}">
|
1221
|
+
<xsl:variable name="title_en" select="/bipm:bipm-standard/bipm:bibdata/bipm:title[@language = 'en' and @type = 'appendix']"/>
|
1222
|
+
<xsl:variable name="mep_text" select="'Mise en pratique'"/>
|
1223
|
+
<xsl:choose>
|
1224
|
+
<xsl:when test="contains($title_en, $mep_text)">
|
1225
|
+
<xsl:value-of select="substring-before($title_en, $mep_text)"/>
|
1226
|
+
<xsl:text> </xsl:text><fo:inline font-style="italic"><xsl:value-of select="$mep_text"/></fo:inline><xsl:text> </xsl:text>
|
1227
|
+
<xsl:value-of select="substring-after($title_en, $mep_text)"/>
|
1228
|
+
</xsl:when>
|
1229
|
+
<xsl:otherwise>
|
1230
|
+
<xsl:value-of select="$title_en"/>
|
1231
|
+
</xsl:otherwise>
|
1232
|
+
</xsl:choose>
|
1233
|
+
</fo:block>
|
1234
|
+
</fo:block>
|
1235
|
+
</xsl:if>
|
1236
|
+
<!-- End Appendix titles processing -->
|
1237
|
+
|
1238
|
+
|
1239
|
+
<!-- Part titles processing -->
|
1240
|
+
<xsl:if test="/bipm:bipm-standard/bipm:bibdata/bipm:title[@type = 'part']">
|
1241
|
+
<xsl:variable name="part_num" select="normalize-space(/bipm:bipm-standard/bipm:bibdata/bipm:ext/bipm:structuredidentifier/bipm:part)"/>
|
1242
|
+
<xsl:if test="$part_num != ''">
|
1243
|
+
<!-- Part -->
|
1244
|
+
<fo:block font-size="17pt" font-weight="{$weight-normal}"><xsl:value-of select="java:replaceAll(java:java.lang.String.new($titles/title-part[@lang='fr']),'#',$part_num)"/></fo:block>
|
1245
|
+
<!-- Partie -->
|
1246
|
+
<fo:block font-size="17pt" font-weight="{$weight-bold}"><xsl:value-of select="java:replaceAll(java:java.lang.String.new($titles/title-part[@lang='en']),'#',$part_num)"/></fo:block>
|
1247
|
+
</xsl:if>
|
1248
|
+
|
1249
|
+
<fo:block font-size="30.4pt">
|
1250
|
+
|
1251
|
+
<xsl:if test="/bipm:bipm-standard/bipm:bibdata/bipm:title[@language = 'fr' and @type = 'part']">
|
1252
|
+
<fo:block> </fo:block>
|
1253
|
+
<fo:block font-weight="{$weight-normal}"><xsl:value-of select="/bipm:bipm-standard/bipm:bibdata/bipm:title[@language = 'fr' and @type = 'part']"/></fo:block>
|
1254
|
+
</xsl:if>
|
1255
|
+
|
1256
|
+
<xsl:if test="/bipm:bipm-standard/bipm:bibdata/bipm:title[@language = 'en' and @type = 'part']">
|
1257
|
+
<fo:block> </fo:block>
|
1258
|
+
<fo:block font-weight="{$weight-bold}">
|
1259
|
+
<xsl:variable name="title_en" select="/bipm:bipm-standard/bipm:bibdata/bipm:title[@language = 'en' and @type = 'part']"/>
|
1260
|
+
<xsl:variable name="mep_text" select="'Mise en pratique'"/>
|
1261
|
+
<xsl:choose>
|
1262
|
+
<xsl:when test="contains($title_en, $mep_text)">
|
1263
|
+
<xsl:value-of select="substring-before($title_en, $mep_text)"/>
|
1264
|
+
<xsl:text> </xsl:text><fo:inline font-style="italic"><xsl:value-of select="$mep_text"/></fo:inline><xsl:text> </xsl:text>
|
1265
|
+
<xsl:value-of select="substring-after($title_en, $mep_text)"/>
|
1266
|
+
</xsl:when>
|
1267
|
+
<xsl:otherwise>
|
1268
|
+
<xsl:value-of select="$title_en"/>
|
1269
|
+
</xsl:otherwise>
|
1270
|
+
</xsl:choose>
|
1271
|
+
</fo:block>
|
1272
|
+
</xsl:if>
|
1273
|
+
</fo:block>
|
1274
|
+
</xsl:if>
|
1275
|
+
<!-- End Part titles processing -->
|
1276
|
+
|
1277
|
+
<!-- Sub-part titles processing -->
|
1278
|
+
<xsl:if test="/bipm:bipm-standard/bipm:bibdata/bipm:title[@type = 'subpart']">
|
1279
|
+
<xsl:variable name="subpart_num" select="normalize-space(/bipm:bipm-standard/bipm:bibdata/bipm:ext/bipm:structuredidentifier/bipm:subpart)"/>
|
1280
|
+
<xsl:if test="$subpart_num != ''">
|
1281
|
+
<!-- Sub-part -->
|
1282
|
+
<fo:block font-size="17pt" font-weight="{$weight-normal}"><xsl:value-of select="java:replaceAll(java:java.lang.String.new($titles/title-subpart[@lang='fr']),'#',$subpart_num)"/> <xsl:value-of select="$subpart_num"/></fo:block>
|
1283
|
+
<!-- Partie de sub -->
|
1284
|
+
<fo:block font-size="17pt" font-weight="{$weight-bold}"><xsl:value-of select="java:replaceAll(java:java.lang.String.new($titles/title-subpart[@lang='en']),'#',$subpart_num)"/> <xsl:value-of select="$subpart_num"/></fo:block>
|
1285
|
+
</xsl:if>
|
1286
|
+
|
1287
|
+
<fo:block font-size="30.4pt">
|
1288
|
+
|
1289
|
+
<xsl:if test="/bipm:bipm-standard/bipm:bibdata/bipm:title[@language = 'fr' and @type = 'subpart']">
|
1290
|
+
<fo:block> </fo:block>
|
1291
|
+
<fo:block font-weight="{$weight-normal}"><xsl:value-of select="/bipm:bipm-standard/bipm:bibdata/bipm:title[@language = 'fr' and @type = 'subpart']"/></fo:block>
|
1292
|
+
</xsl:if>
|
1293
|
+
|
1294
|
+
<xsl:if test="/bipm:bipm-standard/bipm:bibdata/bipm:title[@language = 'en' and @type = 'subpart']">
|
1295
|
+
<fo:block> </fo:block>
|
1296
|
+
<fo:block font-weight="{$weight-bold}">
|
1297
|
+
<xsl:variable name="title_en" select="/bipm:bipm-standard/bipm:bibdata/bipm:title[@language = 'en' and @type = 'subpart']"/>
|
1298
|
+
<xsl:variable name="mep_text" select="'Mise en pratique'"/>
|
1299
|
+
<xsl:choose>
|
1300
|
+
<xsl:when test="contains($title_en, $mep_text)">
|
1301
|
+
<xsl:value-of select="substring-before($title_en, $mep_text)"/>
|
1302
|
+
<xsl:text> </xsl:text><fo:inline font-style="italic"><xsl:value-of select="$mep_text"/></fo:inline><xsl:text> </xsl:text>
|
1303
|
+
<xsl:value-of select="substring-after($title_en, $mep_text)"/>
|
1304
|
+
</xsl:when>
|
1305
|
+
<xsl:otherwise>
|
1306
|
+
<xsl:value-of select="$title_en"/>
|
1307
|
+
</xsl:otherwise>
|
1308
|
+
</xsl:choose>
|
1309
|
+
</fo:block>
|
1310
|
+
</xsl:if>
|
1311
|
+
</fo:block>
|
1312
|
+
</xsl:if>
|
1313
|
+
<!-- End Sub-part titles processing -->
|
1314
|
+
|
1315
|
+
|
934
1316
|
</fo:block-container>
|
935
1317
|
|
936
1318
|
<!-- <fo:block-container>
|
@@ -959,10 +1341,10 @@
|
|
959
1341
|
</fo:block>
|
960
1342
|
</fo:block-container> -->
|
961
1343
|
|
962
|
-
<fo:block-container absolute-position="fixed" left="12mm" top="242mm" height="42mm" display-align="after">
|
1344
|
+
<fo:block-container absolute-position="fixed" left="12mm" top="242mm" height="42mm" width="140mm" display-align="after">
|
963
1345
|
<fo:block font-size="12pt">
|
964
|
-
<fo:block
|
965
|
-
<fo:block><xsl:value-of select="/bipm:bipm-standard/bipm:bibdata/bipm:ext/bipm:editorialgroup/bipm:committee"/></fo:block>
|
1346
|
+
<fo:block><xsl:value-of select="/bipm:bipm-standard/bipm:bibdata/bipm:ext/bipm:editorialgroup/bipm:committee/bipm:variant[@language = 'fr']"/></fo:block>
|
1347
|
+
<fo:block><xsl:value-of select="/bipm:bipm-standard/bipm:bibdata/bipm:ext/bipm:editorialgroup/bipm:committee/bipm:variant[@language = 'en']"/></fo:block>
|
966
1348
|
<fo:block> </fo:block>
|
967
1349
|
<!-- <fo:block>BIPM SI MEP S1</fo:block> -->
|
968
1350
|
<fo:block>
|
@@ -1107,7 +1489,7 @@
|
|
1107
1489
|
<xsl:choose>
|
1108
1490
|
<xsl:when test="$doc_split_by_language = ''"><!-- all documents -->
|
1109
1491
|
<xsl:for-each select="//bipm:bipm-standard/bipm:bibdata">
|
1110
|
-
<lang><xsl:value-of select="bipm:language"/></lang>
|
1492
|
+
<lang><xsl:value-of select="bipm:language[@current = 'true']"/></lang>
|
1111
1493
|
</xsl:for-each>
|
1112
1494
|
<!-- <xsl:choose>
|
1113
1495
|
<xsl:when test="count(//bipm:bipm-standard) = 1">
|
@@ -1131,87 +1513,123 @@
|
|
1131
1513
|
</xsl:template>
|
1132
1514
|
|
1133
1515
|
<xsl:template name="insertContentItem">
|
1134
|
-
<fo:
|
1135
|
-
<xsl:
|
1136
|
-
<xsl:
|
1137
|
-
|
1138
|
-
<xsl:attribute name="font-size">10pt</xsl:attribute>
|
1139
|
-
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
1140
|
-
<xsl:if test="@type = 'annex'">
|
1141
|
-
<xsl:attribute name="space-before">14pt</xsl:attribute>
|
1142
|
-
<xsl:attribute name="space-after">0pt</xsl:attribute>
|
1516
|
+
<fo:table-row>
|
1517
|
+
<xsl:variable name="space-before">
|
1518
|
+
<xsl:if test="@level = 1">
|
1519
|
+
<xsl:if test="@type = 'annex'">14pt</xsl:if>
|
1143
1520
|
</xsl:if>
|
1144
|
-
</xsl:
|
1145
|
-
<xsl:
|
1146
|
-
<xsl:
|
1147
|
-
|
1148
|
-
|
1149
|
-
|
1150
|
-
|
1151
|
-
|
1152
|
-
|
1153
|
-
</xsl:if>
|
1154
|
-
<xsl:if test="@level >= 2 and @parent = 'annex'">
|
1155
|
-
<xsl:attribute name="font-family">Arial</xsl:attribute>
|
1156
|
-
<xsl:attribute name="font-size">8pt</xsl:attribute>
|
1157
|
-
<xsl:attribute name="margin-left">25mm</xsl:attribute>
|
1158
|
-
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
1159
|
-
</xsl:if>
|
1160
|
-
|
1161
|
-
<xsl:if test="@level = 2 and not(following-sibling::item[@display='true']) and not(item[@display='true'])">
|
1162
|
-
<xsl:attribute name="space-after">12pt</xsl:attribute>
|
1163
|
-
</xsl:if>
|
1164
|
-
<xsl:if test="@level = 3 and not(following-sibling::item[@display='true']) and not(../following-sibling::item[@display='true'])">
|
1165
|
-
<xsl:attribute name="space-after">12pt</xsl:attribute>
|
1166
|
-
</xsl:if>
|
1521
|
+
</xsl:variable>
|
1522
|
+
<xsl:variable name="space-after">
|
1523
|
+
<xsl:choose>
|
1524
|
+
<xsl:when test="@level = 1 and @type = 'annex'">0pt</xsl:when>
|
1525
|
+
<xsl:when test="@level = 1">6pt</xsl:when>
|
1526
|
+
<xsl:when test="@level = 2 and not(following-sibling::item[@display='true']) and not(item[@display='true']) and not(position() = last())">12pt</xsl:when>
|
1527
|
+
<xsl:when test="@level = 3 and not(following-sibling::item[@display='true']) and not(../following-sibling::item[@display='true']) and not(position() = last())">12pt</xsl:when>
|
1528
|
+
</xsl:choose>
|
1529
|
+
</xsl:variable>
|
1167
1530
|
|
1168
|
-
<fo:
|
1169
|
-
<xsl:
|
1170
|
-
<xsl:
|
1171
|
-
|
1172
|
-
|
1173
|
-
|
1174
|
-
|
1175
|
-
|
1176
|
-
|
1177
|
-
|
1178
|
-
|
1179
|
-
|
1180
|
-
|
1181
|
-
<
|
1182
|
-
<xsl:
|
1183
|
-
|
1184
|
-
|
1185
|
-
|
1186
|
-
|
1187
|
-
|
1188
|
-
|
1189
|
-
|
1190
|
-
|
1191
|
-
|
1192
|
-
|
1193
|
-
|
1194
|
-
|
1195
|
-
|
1196
|
-
|
1197
|
-
|
1198
|
-
|
1199
|
-
|
1200
|
-
|
1201
|
-
|
1202
|
-
|
1203
|
-
|
1204
|
-
|
1205
|
-
|
1206
|
-
|
1207
|
-
|
1208
|
-
|
1209
|
-
|
1210
|
-
|
1211
|
-
|
1212
|
-
|
1213
|
-
|
1214
|
-
|
1531
|
+
<fo:table-cell>
|
1532
|
+
<xsl:if test="normalize-space($space-before) != ''">
|
1533
|
+
<xsl:attribute name="padding-top"><xsl:value-of select="normalize-space($space-before)"/></xsl:attribute>
|
1534
|
+
</xsl:if>
|
1535
|
+
<xsl:if test="normalize-space($space-after) != ''">
|
1536
|
+
<xsl:attribute name="padding-bottom"><xsl:value-of select="normalize-space($space-after)"/></xsl:attribute>
|
1537
|
+
</xsl:if>
|
1538
|
+
<fo:block>
|
1539
|
+
<xsl:if test="@level = 1">
|
1540
|
+
<!-- <xsl:attribute name="space-after">6pt</xsl:attribute> -->
|
1541
|
+
<xsl:attribute name="font-family">Arial</xsl:attribute>
|
1542
|
+
<xsl:attribute name="font-size">10pt</xsl:attribute>
|
1543
|
+
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
1544
|
+
<!-- <xsl:if test="@type = 'annex'">
|
1545
|
+
<xsl:attribute name="space-before">14pt</xsl:attribute>
|
1546
|
+
<xsl:attribute name="space-after">0pt</xsl:attribute>
|
1547
|
+
</xsl:if> -->
|
1548
|
+
</xsl:if>
|
1549
|
+
<xsl:if test="@level >= 2 and not(@parent = 'annex')">
|
1550
|
+
<xsl:attribute name="font-size">10.5pt</xsl:attribute>
|
1551
|
+
</xsl:if>
|
1552
|
+
<xsl:if test="@level = 2">
|
1553
|
+
<xsl:attribute name="margin-left">8mm</xsl:attribute>
|
1554
|
+
</xsl:if>
|
1555
|
+
<xsl:if test="@level > 2">
|
1556
|
+
<xsl:attribute name="margin-left">9mm</xsl:attribute>
|
1557
|
+
</xsl:if>
|
1558
|
+
<xsl:if test="@level >= 2 and @parent = 'annex'">
|
1559
|
+
<xsl:attribute name="font-family">Arial</xsl:attribute>
|
1560
|
+
<xsl:attribute name="font-size">8pt</xsl:attribute>
|
1561
|
+
<xsl:attribute name="margin-left">25mm</xsl:attribute>
|
1562
|
+
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
1563
|
+
</xsl:if>
|
1564
|
+
|
1565
|
+
<!-- <xsl:if test="@level = 2 and not(following-sibling::item[@display='true']) and not(item[@display='true'])">
|
1566
|
+
<xsl:attribute name="space-after">12pt</xsl:attribute>
|
1567
|
+
</xsl:if>
|
1568
|
+
<xsl:if test="@level = 3 and not(following-sibling::item[@display='true']) and not(../following-sibling::item[@display='true'])">
|
1569
|
+
<xsl:attribute name="space-after">12pt</xsl:attribute>
|
1570
|
+
</xsl:if> -->
|
1571
|
+
|
1572
|
+
<fo:list-block>
|
1573
|
+
<xsl:attribute name="provisional-distance-between-starts">
|
1574
|
+
<xsl:choose>
|
1575
|
+
<xsl:when test="@section = '' or @level > 3">0mm</xsl:when>
|
1576
|
+
<xsl:when test="@level = 2 and @parent = 'annex'">0mm</xsl:when>
|
1577
|
+
<xsl:when test="@level = 2">8mm</xsl:when>
|
1578
|
+
<xsl:when test="@type = 'annex' and @level = 1">25mm</xsl:when>
|
1579
|
+
<xsl:otherwise>7mm</xsl:otherwise>
|
1580
|
+
</xsl:choose>
|
1581
|
+
</xsl:attribute>
|
1582
|
+
|
1583
|
+
<fo:list-item>
|
1584
|
+
<fo:list-item-label end-indent="label-end()">
|
1585
|
+
<fo:block>
|
1586
|
+
<xsl:if test="@level = 1 or (@level = 2 and not(@parent = 'annex'))">
|
1587
|
+
<xsl:value-of select="@section"/>
|
1588
|
+
</xsl:if>
|
1589
|
+
<!-- <fo:inline font-size="10pt" color="white">Z</fo:inline> --> <!-- for baseline alignment in string -->
|
1590
|
+
</fo:block>
|
1591
|
+
</fo:list-item-label>
|
1592
|
+
<fo:list-item-body start-indent="body-start()">
|
1593
|
+
<fo:block> <!-- text-align-last="justify" -->
|
1594
|
+
<xsl:if test="@level >= 3">
|
1595
|
+
<xsl:attribute name="margin-left">11mm</xsl:attribute>
|
1596
|
+
<xsl:attribute name="text-indent">-11mm</xsl:attribute>
|
1597
|
+
</xsl:if>
|
1598
|
+
<fo:basic-link internal-destination="{@id}" fox:alt-text="{title}">
|
1599
|
+
<xsl:if test="@level >= 3">
|
1600
|
+
<fo:inline padding-right="2mm"><xsl:value-of select="@section"/></fo:inline>
|
1601
|
+
</xsl:if>
|
1602
|
+
<xsl:variable name="sectionTitle">
|
1603
|
+
<xsl:apply-templates select="title"/>
|
1604
|
+
</xsl:variable>
|
1605
|
+
<fo:inline>
|
1606
|
+
<xsl:value-of select="$sectionTitle"/>
|
1607
|
+
</fo:inline>
|
1608
|
+
<!-- <xsl:text> </xsl:text> -->
|
1609
|
+
<!-- keep-together.within-line="always" -->
|
1610
|
+
<!-- <fo:inline >
|
1611
|
+
<fo:leader leader-pattern="space"/>
|
1612
|
+
<fo:inline font-family="Arial" font-weight="bold" font-size="10pt"><fo:page-number-citation ref-id="{@id}"/>35</fo:inline>
|
1613
|
+
</fo:inline> -->
|
1614
|
+
</fo:basic-link>
|
1615
|
+
</fo:block>
|
1616
|
+
</fo:list-item-body>
|
1617
|
+
</fo:list-item>
|
1618
|
+
</fo:list-block>
|
1619
|
+
</fo:block>
|
1620
|
+
</fo:table-cell>
|
1621
|
+
<fo:table-cell text-align="right">
|
1622
|
+
<xsl:if test="normalize-space($space-before) != ''">
|
1623
|
+
<xsl:attribute name="padding-top"><xsl:value-of select="normalize-space($space-before)"/></xsl:attribute>
|
1624
|
+
</xsl:if>
|
1625
|
+
<xsl:if test="normalize-space($space-after) != ''">
|
1626
|
+
<xsl:attribute name="padding-bottom"><xsl:value-of select="normalize-space($space-after)"/></xsl:attribute>
|
1627
|
+
</xsl:if>
|
1628
|
+
<fo:block>
|
1629
|
+
<fo:inline font-family="Arial" font-weight="bold" font-size="10pt"><fo:page-number-citation ref-id="{@id}"/></fo:inline>
|
1630
|
+
</fo:block>
|
1631
|
+
</fo:table-cell>
|
1632
|
+
</fo:table-row>
|
1215
1633
|
</xsl:template>
|
1216
1634
|
|
1217
1635
|
|
@@ -1281,7 +1699,52 @@
|
|
1281
1699
|
<xsl:template match="node()" mode="sections">
|
1282
1700
|
<fo:page-sequence master-reference="document" force-page-count="no-force">
|
1283
1701
|
<xsl:call-template name="insertFootnoteSeparator"/>
|
1284
|
-
|
1702
|
+
|
1703
|
+
<xsl:variable name="header-title">
|
1704
|
+
<xsl:choose>
|
1705
|
+
|
1706
|
+
<xsl:when test="local-name(..) = 'sections'">
|
1707
|
+
<xsl:choose>
|
1708
|
+
<xsl:when test="./bipm:title[1]/*[local-name() = 'tab']">
|
1709
|
+
<xsl:apply-templates select="./bipm:title[1]/*[local-name() = 'tab'][1]/following-sibling::node()" mode="header"/>
|
1710
|
+
</xsl:when>
|
1711
|
+
<xsl:otherwise>
|
1712
|
+
<xsl:apply-templates select="./bipm:title[1]" mode="header"/>
|
1713
|
+
</xsl:otherwise>
|
1714
|
+
</xsl:choose>
|
1715
|
+
</xsl:when>
|
1716
|
+
|
1717
|
+
<xsl:when test="local-name() = 'annex'">
|
1718
|
+
<xsl:choose>
|
1719
|
+
<xsl:when test="./*[1]/bipm:title[1]/*[local-name() = 'tab']">
|
1720
|
+
<xsl:variable name="title_annex">
|
1721
|
+
<xsl:value-of select="normalize-space(./*[1]/bipm:title[1]/*[local-name() = 'tab'][1]/preceding-sibling::node())"/>
|
1722
|
+
</xsl:variable>
|
1723
|
+
<xsl:choose>
|
1724
|
+
<xsl:when test="substring($title_annex, string-length($title_annex)) = '.'">
|
1725
|
+
<xsl:value-of select="substring($title_annex, 1, string-length($title_annex) - 1)"/>
|
1726
|
+
</xsl:when>
|
1727
|
+
<xsl:otherwise>
|
1728
|
+
<xsl:value-of select="$title_annex"/>
|
1729
|
+
</xsl:otherwise>
|
1730
|
+
</xsl:choose>
|
1731
|
+
</xsl:when>
|
1732
|
+
<xsl:otherwise>
|
1733
|
+
<xsl:apply-templates select="./*[1]/bipm:title[1]" mode="header"/>
|
1734
|
+
</xsl:otherwise>
|
1735
|
+
</xsl:choose>
|
1736
|
+
</xsl:when>
|
1737
|
+
|
1738
|
+
<xsl:otherwise>
|
1739
|
+
<xsl:apply-templates select="./bipm:title[1]" mode="header"/>
|
1740
|
+
</xsl:otherwise>
|
1741
|
+
|
1742
|
+
</xsl:choose>
|
1743
|
+
</xsl:variable>
|
1744
|
+
<xsl:call-template name="insertHeaderFooter">
|
1745
|
+
<xsl:with-param name="header-title" select="$header-title"/>
|
1746
|
+
</xsl:call-template>
|
1747
|
+
|
1285
1748
|
<fo:flow flow-name="xsl-region-body">
|
1286
1749
|
<fo:block line-height="125%">
|
1287
1750
|
<xsl:apply-templates select="."/>
|
@@ -1290,6 +1753,34 @@
|
|
1290
1753
|
</fo:page-sequence>
|
1291
1754
|
</xsl:template>
|
1292
1755
|
|
1756
|
+
<xsl:template name="sections_appendix">
|
1757
|
+
<fo:page-sequence master-reference="document" force-page-count="no-force">
|
1758
|
+
<xsl:call-template name="insertFootnoteSeparator"/>
|
1759
|
+
|
1760
|
+
<xsl:variable name="curr_lang" select="/bipm:bipm-standard/bipm:bibdata/bipm:language[@current = 'true']"/>
|
1761
|
+
|
1762
|
+
<xsl:variable name="header-title">
|
1763
|
+
<xsl:choose>
|
1764
|
+
<xsl:when test="$lang = 'fr'">Annexe </xsl:when>
|
1765
|
+
<xsl:otherwise>Appendix </xsl:otherwise>
|
1766
|
+
</xsl:choose>
|
1767
|
+
<xsl:value-of select="/bipm:bipm-standard/bipm:bibdata/bipm:ext/bipm:structuredidentifier/bipm:appendix"/>
|
1768
|
+
</xsl:variable>
|
1769
|
+
<xsl:call-template name="insertHeaderFooter">
|
1770
|
+
<xsl:with-param name="header-title" select="$header-title"/>
|
1771
|
+
</xsl:call-template>
|
1772
|
+
|
1773
|
+
<fo:flow flow-name="xsl-region-body">
|
1774
|
+
<fo:block line-height="125%">
|
1775
|
+
|
1776
|
+
<xsl:for-each select=" bipm:sections/*">
|
1777
|
+
<xsl:apply-templates select="."/>
|
1778
|
+
</xsl:for-each>
|
1779
|
+
</fo:block>
|
1780
|
+
</fo:flow>
|
1781
|
+
</fo:page-sequence>
|
1782
|
+
</xsl:template>
|
1783
|
+
|
1293
1784
|
<xsl:template match="bipm:bipm-standard/bipm:bibdata/bipm:edition">
|
1294
1785
|
<xsl:param name="font-size" select="'65%'"/>
|
1295
1786
|
<xsl:param name="baseline-shift" select="'30%'"/>
|
@@ -1328,7 +1819,7 @@
|
|
1328
1819
|
</xsl:template>
|
1329
1820
|
|
1330
1821
|
<xsl:template match="bipm:license-statement">
|
1331
|
-
<fo:block font-size="10.
|
1822
|
+
<fo:block font-size="10.5pt" font-family="Times New Roman">
|
1332
1823
|
<xsl:apply-templates/>
|
1333
1824
|
</fo:block>
|
1334
1825
|
</xsl:template>
|
@@ -1395,6 +1886,7 @@
|
|
1395
1886
|
<xsl:when test="$level = 2 and ancestor::bipm:annex">10.5pt</xsl:when>
|
1396
1887
|
<xsl:when test="$level = 2">14pt</xsl:when>
|
1397
1888
|
<xsl:when test="$level = 3 and ancestor::bipm:annex">10pt</xsl:when>
|
1889
|
+
<xsl:when test="$level = 4 and ancestor::bipm:annex">9pt</xsl:when>
|
1398
1890
|
<xsl:when test="$level = 3">12pt</xsl:when>
|
1399
1891
|
<xsl:otherwise>11pt</xsl:otherwise>
|
1400
1892
|
</xsl:choose>
|
@@ -1409,32 +1901,47 @@
|
|
1409
1901
|
</xsl:variable>
|
1410
1902
|
|
1411
1903
|
<fo:block-container margin-left="-14mm" font-family="Arial" font-size="{$font-size}" font-weight="bold" keep-with-next="always" line-height="130%"> <!-- line-height="145%" -->
|
1904
|
+
<xsl:if test="local-name(preceding-sibling::*[1]) = 'clause'">
|
1905
|
+
<xsl:attribute name="id"><xsl:value-of select="preceding-sibling::*[1]/@id"/></xsl:attribute>
|
1906
|
+
</xsl:if>
|
1412
1907
|
<xsl:attribute name="margin-bottom">
|
1413
1908
|
<xsl:choose>
|
1414
|
-
<xsl:when test="$level = 1 and (parent::bipm:annex or parent::bipm:abstract or ancestor::bipm:preface)">84pt</xsl:when>
|
1909
|
+
<xsl:when test="$level = 1 and (parent::bipm:annex or ancestor::bipm:annex or parent::bipm:abstract or ancestor::bipm:preface)">84pt</xsl:when>
|
1415
1910
|
<xsl:when test="$level = 1">6pt</xsl:when>
|
1416
|
-
<xsl:when test="$level = 2 and ancestor::bipm:annex">6pt</xsl:when>
|
1911
|
+
<xsl:when test="$level = 2 and ancestor::bipm:annex">6pt</xsl:when> <!-- 6pt 12pt -->
|
1417
1912
|
<!-- <xsl:when test="$level = 2 and $independentAppendix != ''">6pt</xsl:when> -->
|
1418
1913
|
<xsl:when test="$level = 2">10pt</xsl:when>
|
1419
1914
|
<xsl:otherwise>6pt</xsl:otherwise>
|
1420
1915
|
</xsl:choose>
|
1421
1916
|
</xsl:attribute>
|
1422
1917
|
<!-- <xsl:if test="$level = 1 and $independentAppendix != ''">
|
1423
|
-
<xsl:attribute name="
|
1424
|
-
</xsl:if>
|
1425
|
-
<xsl:if test="$level = 2 and $independentAppendix != ''">
|
1918
|
+
<xsl:attribute name="space-before">24pt</xsl:attribute>
|
1919
|
+
</xsl:if> -->
|
1920
|
+
<!-- <xsl:if test="$level = 2 and $independentAppendix != ''">
|
1426
1921
|
<xsl:attribute name="margin-top">36pt</xsl:attribute>
|
1427
1922
|
</xsl:if> -->
|
1428
|
-
<xsl:if test="$level = 2">
|
1429
|
-
<xsl:attribute name="margin-top">24pt</xsl:attribute>
|
1923
|
+
<xsl:if test="$level = 2 and ancestor::bipm:annex">
|
1924
|
+
<!-- <xsl:attribute name="margin-top">24pt</xsl:attribute> -->
|
1925
|
+
<xsl:attribute name="space-before">18pt</xsl:attribute> <!-- 24 pt -->
|
1926
|
+
</xsl:if>
|
1927
|
+
<xsl:if test="$level = 2 and not(ancestor::bipm:annex)">
|
1928
|
+
<xsl:attribute name="space-before">30pt</xsl:attribute>
|
1929
|
+
</xsl:if>
|
1930
|
+
<xsl:if test="$level = 3 and ancestor::bipm:annex">
|
1931
|
+
<xsl:attribute name="space-before">12pt</xsl:attribute> <!-- 6pt -->
|
1932
|
+
</xsl:if>
|
1933
|
+
<xsl:if test="$level = 4 and ancestor::bipm:annex">
|
1934
|
+
<xsl:attribute name="space-before">12pt</xsl:attribute>
|
1430
1935
|
</xsl:if>
|
1431
1936
|
<xsl:if test="$level = 3 and not(ancestor::bipm:annex)">
|
1432
|
-
<xsl:attribute name="margin-top">20pt</xsl:attribute>
|
1937
|
+
<!-- <xsl:attribute name="margin-top">20pt</xsl:attribute> -->
|
1938
|
+
<xsl:attribute name="space-before">20pt</xsl:attribute>
|
1433
1939
|
</xsl:if>
|
1434
1940
|
|
1435
1941
|
<fo:block-container margin-left="0mm">
|
1436
1942
|
|
1437
|
-
|
1943
|
+
<!-- marker not working for math -->
|
1944
|
+
<!-- <xsl:if test="$level = 1">
|
1438
1945
|
<fo:marker marker-class-name="header-title">
|
1439
1946
|
<xsl:choose>
|
1440
1947
|
<xsl:when test="*[local-name() = 'tab']">
|
@@ -1445,7 +1952,7 @@
|
|
1445
1952
|
</xsl:otherwise>
|
1446
1953
|
</xsl:choose>
|
1447
1954
|
</fo:marker>
|
1448
|
-
</xsl:if>
|
1955
|
+
</xsl:if> -->
|
1449
1956
|
|
1450
1957
|
<xsl:choose>
|
1451
1958
|
<xsl:when test="*[local-name() = 'tab'] and not(ancestor::bipm:annex) "><!-- split number and title --> <!-- and $independentAppendix = '' -->
|
@@ -1485,6 +1992,10 @@
|
|
1485
1992
|
</fo:instream-foreign-object>
|
1486
1993
|
</fo:inline>
|
1487
1994
|
</xsl:if>
|
1995
|
+
<xsl:if test="$level = 4">
|
1996
|
+
<xsl:attribute name="margin-left">14mm</xsl:attribute>
|
1997
|
+
<xsl:attribute name="text-align">center</xsl:attribute>
|
1998
|
+
</xsl:if>
|
1488
1999
|
<xsl:call-template name="extractTitle"/>
|
1489
2000
|
</xsl:when>
|
1490
2001
|
<xsl:otherwise>
|
@@ -1518,7 +2029,7 @@
|
|
1518
2029
|
</xsl:template>
|
1519
2030
|
|
1520
2031
|
<xsl:template match="*[local-name() = 'stem']" mode="header">
|
1521
|
-
<xsl:apply-templates
|
2032
|
+
<xsl:apply-templates/>
|
1522
2033
|
</xsl:template>
|
1523
2034
|
|
1524
2035
|
<xsl:template match="*[local-name() = 'br']" mode="header">
|
@@ -1689,123 +2200,100 @@
|
|
1689
2200
|
<xsl:template match="bipm:sections/bipm:clause | bipm:annex/bipm:clause" priority="3">
|
1690
2201
|
<!-- <xsl:choose>
|
1691
2202
|
<xsl:when test="$independentAppendix = ''"> -->
|
1692
|
-
|
1693
|
-
|
1694
|
-
|
1695
|
-
<
|
1696
|
-
<
|
1697
|
-
<
|
1698
|
-
|
1699
|
-
|
1700
|
-
|
1701
|
-
|
1702
|
-
|
1703
|
-
|
1704
|
-
|
1705
|
-
|
1706
|
-
|
1707
|
-
|
1708
|
-
|
1709
|
-
|
1710
|
-
|
1711
|
-
|
1712
|
-
|
1713
|
-
|
1714
|
-
|
1715
|
-
|
1716
|
-
|
1717
|
-
|
1718
|
-
|
1719
|
-
|
1720
|
-
|
1721
|
-
|
1722
|
-
|
1723
|
-
|
1724
|
-
|
1725
|
-
|
1726
|
-
|
1727
|
-
|
1728
|
-
|
1729
|
-
|
1730
|
-
|
1731
|
-
|
1732
|
-
|
1733
|
-
|
1734
|
-
|
1735
|
-
|
1736
|
-
|
1737
|
-
|
1738
|
-
|
1739
|
-
|
1740
|
-
|
1741
|
-
|
1742
|
-
|
1743
|
-
|
1744
|
-
|
1745
|
-
|
1746
|
-
|
1747
|
-
|
1748
|
-
|
1749
|
-
|
1750
|
-
|
1751
|
-
|
1752
|
-
|
1753
|
-
|
1754
|
-
|
1755
|
-
|
1756
|
-
|
1757
|
-
|
1758
|
-
|
1759
|
-
|
1760
|
-
|
1761
|
-
|
1762
|
-
|
1763
|
-
|
1764
|
-
|
1765
|
-
|
1766
|
-
|
1767
|
-
|
1768
|
-
|
1769
|
-
|
1770
|
-
|
1771
|
-
|
1772
|
-
|
1773
|
-
|
1774
|
-
|
1775
|
-
|
1776
|
-
|
1777
|
-
|
1778
|
-
|
1779
|
-
|
1780
|
-
|
1781
|
-
|
1782
|
-
|
1783
|
-
|
1784
|
-
|
1785
|
-
|
1786
|
-
<xsl:for-each select="xalan:nodeset($rows_with_notes)/row_num">
|
1787
|
-
<xsl:variable name="num" select="number(.)"/>
|
1788
|
-
<xsl:choose>
|
1789
|
-
<xsl:when test="position() = last()">
|
1790
|
-
<num span_start="{$num}" span_num="{$total_rows - $num + 1}" display-align="before"/>
|
1791
|
-
</xsl:when>
|
1792
|
-
<xsl:otherwise><!-- 2nd, 3rd, ... Nth-1 -->
|
1793
|
-
<xsl:variable name="next_num" select="number(following-sibling::*/text())"/>
|
1794
|
-
<num span_start="{$num}" span_num="{$next_num - $num}" display-align="before"/>
|
1795
|
-
</xsl:otherwise>
|
1796
|
-
</xsl:choose>
|
1797
|
-
</xsl:for-each>
|
1798
|
-
</xsl:variable>
|
1799
|
-
|
1800
|
-
<!-- rows=<xsl:copy-of select="$rows"/> -->
|
1801
|
-
|
1802
|
-
|
1803
|
-
<xsl:apply-templates mode="clause_table">
|
1804
|
-
<xsl:with-param name="rows" select="$rows"/>
|
1805
|
-
</xsl:apply-templates>
|
1806
|
-
|
1807
|
-
</fo:table-body>
|
1808
|
-
</fo:table>
|
2203
|
+
|
2204
|
+
<xsl:variable name="space-before"> <!-- margin-top for title, see bipm:title -->
|
2205
|
+
<xsl:if test="local-name(*[1]) = 'title'">
|
2206
|
+
<xsl:if test="*[1]/@depth = 1 and not(*[1]/ancestor::bipm:annex) and $independentAppendix != ''">30pt</xsl:if>
|
2207
|
+
<xsl:if test="*[1]/@depth = 2 and not(*[1]/ancestor::bipm:annex)">30pt</xsl:if>
|
2208
|
+
<xsl:if test="*[1]/@depth = 2 and *[1]/ancestor::bipm:annex">18pt</xsl:if> <!-- 24pt -->
|
2209
|
+
<xsl:if test="*[1]/@depth = 3 and not(*[1]/ancestor::bipm:annex)">20pt</xsl:if>
|
2210
|
+
<xsl:if test="*[1]/@depth = 3 and *[1]/ancestor::bipm:annex">6pt</xsl:if> <!-- 6pt-->
|
2211
|
+
<xsl:if test="*[1]/@depth = 4 and *[1]/ancestor::bipm:annex">12pt</xsl:if> <!-- 6pt-->
|
2212
|
+
</xsl:if>
|
2213
|
+
</xsl:variable>
|
2214
|
+
<xsl:variable name="space-before-value" select="normalize-space($space-before)"/>
|
2215
|
+
|
2216
|
+
<fo:table table-layout="fixed" width="174mm" line-height="135%">
|
2217
|
+
<xsl:call-template name="setId"/>
|
2218
|
+
<xsl:if test="$space-before-value != ''">
|
2219
|
+
<xsl:attribute name="space-before"><xsl:value-of select="$space-before-value"/></xsl:attribute>
|
2220
|
+
</xsl:if>
|
2221
|
+
<fo:table-column column-width="137mm"/>
|
2222
|
+
<fo:table-column column-width="5mm"/>
|
2223
|
+
<fo:table-column column-width="32mm"/>
|
2224
|
+
<fo:table-body>
|
2225
|
+
|
2226
|
+
<xsl:variable name="total_rows" select="count(*)"/>
|
2227
|
+
|
2228
|
+
<xsl:variable name="rows_with_notes">
|
2229
|
+
<xsl:for-each select="*">
|
2230
|
+
<!-- <xsl:if test=".//bipm:note[not(ancestor::bipm:table)]"> -->
|
2231
|
+
<xsl:if test=".//bipm:note_side"> <!-- virtual element note_side --> <!-- [not(ancestor::bipm:table)] -->
|
2232
|
+
<row_num><xsl:value-of select="position()"/></row_num>
|
2233
|
+
</xsl:if>
|
2234
|
+
</xsl:for-each>
|
2235
|
+
</xsl:variable>
|
2236
|
+
<!-- rows_with_notes<xsl:copy-of select="$rows_with_notes"/> -->
|
2237
|
+
|
2238
|
+
<xsl:variable name="rows3">
|
2239
|
+
<xsl:for-each select="xalan:nodeset($rows_with_notes)/row_num">
|
2240
|
+
<xsl:variable name="num" select="number(.)"/>
|
2241
|
+
<xsl:choose>
|
2242
|
+
<xsl:when test="position() = 1">
|
2243
|
+
<num span_start="1" span_num="{$num}" display-align="after"/>
|
2244
|
+
</xsl:when>
|
2245
|
+
<xsl:when test="position() = last()">
|
2246
|
+
<num span_start="{$num}" span_num="{$total_rows - $num + 1}" display-align="before"/>
|
2247
|
+
</xsl:when>
|
2248
|
+
<xsl:otherwise><!-- 2nd, 3rd, ... Nth-1 -->
|
2249
|
+
<xsl:variable name="prev_num" select="number(preceding-sibling::*/text())"/>
|
2250
|
+
<num span_start="{$prev_num + 1}" span_num="{$num - $prev_num}" display-align="after"/>
|
2251
|
+
</xsl:otherwise>
|
2252
|
+
</xsl:choose>
|
2253
|
+
</xsl:for-each>
|
2254
|
+
</xsl:variable>
|
2255
|
+
|
2256
|
+
<xsl:variable name="rows">
|
2257
|
+
|
2258
|
+
<xsl:variable name="first_num" select="normalize-space(xalan:nodeset($rows_with_notes)/row_num[1])"/>
|
2259
|
+
<xsl:choose>
|
2260
|
+
<xsl:when test="$first_num = ''">
|
2261
|
+
<num span_start="1" span_num="{$total_rows}" display-align="before"/>
|
2262
|
+
</xsl:when>
|
2263
|
+
<xsl:when test="number($first_num) != 1">
|
2264
|
+
<num span_start="1" span_num="{$first_num -1}" display-align="before"/>
|
2265
|
+
</xsl:when>
|
2266
|
+
</xsl:choose>
|
2267
|
+
|
2268
|
+
<xsl:for-each select="xalan:nodeset($rows_with_notes)/row_num">
|
2269
|
+
<xsl:variable name="num" select="number(.)"/>
|
2270
|
+
<xsl:choose>
|
2271
|
+
<xsl:when test="position() = last()">
|
2272
|
+
<num span_start="{$num}" span_num="{$total_rows - $num + 1}" display-align="before"/>
|
2273
|
+
</xsl:when>
|
2274
|
+
<xsl:otherwise><!-- 2nd, 3rd, ... Nth-1 -->
|
2275
|
+
<xsl:variable name="next_num" select="number(following-sibling::*/text())"/>
|
2276
|
+
<num span_start="{$num}" span_num="{$next_num - $num}" display-align="before"/>
|
2277
|
+
</xsl:otherwise>
|
2278
|
+
</xsl:choose>
|
2279
|
+
</xsl:for-each>
|
2280
|
+
</xsl:variable>
|
2281
|
+
|
2282
|
+
<!-- rows=<xsl:copy-of select="$rows"/> -->
|
2283
|
+
|
2284
|
+
<!-- updated strategy: consolidated show all block with note, instead of spanned rows -->
|
2285
|
+
|
2286
|
+
<xsl:call-template name="insertClauses">
|
2287
|
+
<xsl:with-param name="rows" select="$rows"/>
|
2288
|
+
</xsl:call-template>
|
2289
|
+
|
2290
|
+
|
2291
|
+
<!-- <xsl:apply-templates mode="clause_table">
|
2292
|
+
<xsl:with-param name="rows" select="$rows"/>
|
2293
|
+
</xsl:apply-templates> -->
|
2294
|
+
|
2295
|
+
</fo:table-body>
|
2296
|
+
</fo:table>
|
1809
2297
|
|
1810
2298
|
<!-- </xsl:when>
|
1811
2299
|
<xsl:otherwise>
|
@@ -1819,6 +2307,78 @@
|
|
1819
2307
|
</xsl:template>
|
1820
2308
|
|
1821
2309
|
|
2310
|
+
<xsl:template name="insertClauses">
|
2311
|
+
<xsl:param name="rows"/>
|
2312
|
+
<xsl:param name="curr_row_num" select="1"/>
|
2313
|
+
|
2314
|
+
<xsl:if test="$curr_row_num <= count(xalan:nodeset($rows)/num)">
|
2315
|
+
<xsl:variable name="start_row" select="xalan:nodeset($rows)/num[$curr_row_num]/@span_start"/>
|
2316
|
+
<xsl:variable name="end_row" select="$start_row + xalan:nodeset($rows)/num[$curr_row_num]/@span_num - 1"/>
|
2317
|
+
<fo:table-row> <!-- DEBUG border-top="1.5pt solid blue" border-bottom="1.5pt solid blue" -->
|
2318
|
+
<xsl:if test="local-name(*[$end_row]) = 'title'"> <!-- if last element is title, then keep row with next--> <!-- or local-name(*[$end_row]) = 'clause' or clause, then keep row with next -->
|
2319
|
+
<xsl:attribute name="keep-with-next.within-page">always</xsl:attribute>
|
2320
|
+
</xsl:if>
|
2321
|
+
|
2322
|
+
|
2323
|
+
<xsl:variable name="start_row_next" select="normalize-space(xalan:nodeset($rows)/num[$curr_row_num + 1]/@span_start)"/>
|
2324
|
+
<xsl:variable name="start_row_next_num" select="number($start_row_next)"/>
|
2325
|
+
|
2326
|
+
<xsl:variable name="table-row-padding-bottom">
|
2327
|
+
<xsl:if test="$start_row_next != '' and local-name(*[$start_row_next_num]) = 'title'">
|
2328
|
+
<xsl:if test="*[$start_row_next_num]/@depth = 2 and not(*[$start_row_next_num]/ancestor::bipm:annex)">30pt</xsl:if>
|
2329
|
+
<xsl:if test="*[$start_row_next_num]/@depth = 2 and *[$start_row_next_num]/ancestor::bipm:annex">18pt</xsl:if> <!-- 24pt -->
|
2330
|
+
<!-- <xsl:attribute name="padding-bottom">20pt</xsl:attribute> -->
|
2331
|
+
<xsl:if test="*[$start_row_next_num]/@depth = 3 and not(*[$start_row_next_num]/ancestor::bipm:annex)">20pt</xsl:if>
|
2332
|
+
<xsl:if test="*[$start_row_next_num]/@depth = 3 and *[$start_row_next_num]/ancestor::bipm:annex">6pt</xsl:if> <!-- 6pt -->
|
2333
|
+
<xsl:if test="*[$start_row_next_num]/@depth = 4 and *[$start_row_next_num]/ancestor::bipm:annex">12pt</xsl:if> <!-- 6pt -->
|
2334
|
+
</xsl:if>
|
2335
|
+
</xsl:variable>
|
2336
|
+
|
2337
|
+
<xsl:variable name="table-row-padding-bottom-value" select="normalize-space($table-row-padding-bottom)"/>
|
2338
|
+
|
2339
|
+
<fo:table-cell>
|
2340
|
+
|
2341
|
+
<xsl:if test="$table-row-padding-bottom-value != ''">
|
2342
|
+
<xsl:attribute name="padding-bottom"><xsl:value-of select="$table-row-padding-bottom-value"/></xsl:attribute>
|
2343
|
+
</xsl:if>
|
2344
|
+
|
2345
|
+
<!-- <fo:block>$end_row=<xsl:value-of select="$end_row"/>,local-name(*[$end_row])=<xsl:value-of select="local-name(*[$end_row]) "/></fo:block> -->
|
2346
|
+
|
2347
|
+
<fo:block>
|
2348
|
+
<!-- insert elements from sections/clause annex/clause -->
|
2349
|
+
<xsl:apply-templates select="*[position() >= number($start_row) and position() <= $end_row]"/>
|
2350
|
+
</fo:block>
|
2351
|
+
</fo:table-cell>
|
2352
|
+
<fo:table-cell>
|
2353
|
+
<xsl:if test="$table-row-padding-bottom-value != ''">
|
2354
|
+
<xsl:attribute name="padding-bottom"><xsl:value-of select="$table-row-padding-bottom-value"/></xsl:attribute>
|
2355
|
+
</xsl:if>
|
2356
|
+
<fo:block> </fo:block>
|
2357
|
+
</fo:table-cell> <!-- <fo:block/> <fo:block> </fo:block> -->
|
2358
|
+
<fo:table-cell font-size="8pt" line-height="120%" display-align="before" padding-bottom="6pt">
|
2359
|
+
<xsl:if test="$table-row-padding-bottom-value != ''">
|
2360
|
+
<xsl:attribute name="padding-bottom"><xsl:value-of select="$table-row-padding-bottom-value"/></xsl:attribute>
|
2361
|
+
</xsl:if>
|
2362
|
+
|
2363
|
+
<xsl:attribute name="display-align">
|
2364
|
+
<xsl:value-of select="xalan:nodeset($rows)/num[$curr_row_num]/@display-align"/>
|
2365
|
+
</xsl:attribute>
|
2366
|
+
|
2367
|
+
<fo:block>
|
2368
|
+
<xsl:for-each select="*[position() >= $start_row and position() <= $end_row]//bipm:note_side">
|
2369
|
+
<xsl:apply-templates select="." mode="note_side"/>
|
2370
|
+
</xsl:for-each>
|
2371
|
+
</fo:block>
|
2372
|
+
</fo:table-cell>
|
2373
|
+
</fo:table-row>
|
2374
|
+
<xsl:call-template name="insertClauses">
|
2375
|
+
<xsl:with-param name="rows" select="$rows"/>
|
2376
|
+
<xsl:with-param name="curr_row_num" select="$curr_row_num + 1"/>
|
2377
|
+
</xsl:call-template>
|
2378
|
+
</xsl:if>
|
2379
|
+
|
2380
|
+
</xsl:template>
|
2381
|
+
|
1822
2382
|
<xsl:template match="bipm:sections/bipm:clause/* | bipm:annex/bipm:clause/*" mode="clause_table">
|
1823
2383
|
<xsl:param name="rows"/>
|
1824
2384
|
|
@@ -1826,35 +2386,13 @@
|
|
1826
2386
|
<xsl:variable name="current_row"><xsl:number count="*"/></xsl:variable>
|
1827
2387
|
|
1828
2388
|
|
1829
|
-
<fo:table-row> <!-- border="1pt solid black" -->
|
1830
|
-
<fo:table-cell> <!-- border="1pt solid black" -->
|
2389
|
+
<fo:table-row> <!-- border="1pt solid black" -->
|
2390
|
+
<fo:table-cell> <!-- border="1pt solid black" -->
|
1831
2391
|
<fo:block>
|
1832
|
-
<xsl:apply-templates select="."/>
|
2392
|
+
<xsl:apply-templates select="."/>
|
1833
2393
|
</fo:block>
|
1834
2394
|
</fo:table-cell>
|
1835
|
-
<fo:table-cell><fo:block> </fo:block></fo:table-cell>
|
1836
|
-
|
1837
|
-
|
1838
|
-
<!-- DEBUG -->
|
1839
|
-
<!-- <fo:table-cell font-size="8pt" line-height="120%" display-align="before" padding-bottom="6pt">
|
1840
|
-
|
1841
|
-
<xsl:variable name="number-rows-spanned" select="xalan:nodeset($rows)/num[@span_start = $current_row]/@span_num"/>
|
1842
|
-
|
1843
|
-
|
1844
|
-
<xsl:variable name="start_row" select="$current_row"/>
|
1845
|
-
|
1846
|
-
<xsl:if test=".//bipm:note">
|
1847
|
-
<fo:block>Note</fo:block>
|
1848
|
-
</xsl:if>
|
1849
|
-
<fo:block font-size="6pt" color="red">
|
1850
|
-
<fo:block>current_row=<xsl:value-of select="$current_row"/></fo:block>
|
1851
|
-
<xsl:for-each select="xalan:nodeset($rows)/num">
|
1852
|
-
<fo:block>span_start=<xsl:value-of select="@span_start"/></fo:block>
|
1853
|
-
<fo:block>span_num=<xsl:value-of select="@span_num"/></fo:block>
|
1854
|
-
</xsl:for-each>
|
1855
|
-
</fo:block>
|
1856
|
-
|
1857
|
-
</fo:table-cell> -->
|
2395
|
+
<fo:table-cell><fo:block> </fo:block></fo:table-cell> <!-- <fo:block/> <fo:block> </fo:block> -->
|
1858
2396
|
|
1859
2397
|
|
1860
2398
|
<xsl:if test="xalan:nodeset($rows)/num[@span_start = $current_row]">
|
@@ -1885,27 +2423,38 @@
|
|
1885
2423
|
|
1886
2424
|
</fo:table-cell>
|
1887
2425
|
</xsl:if>
|
1888
|
-
|
1889
|
-
|
1890
|
-
|
1891
|
-
|
1892
|
-
|
1893
|
-
|
1894
|
-
|
1895
|
-
|
1896
|
-
|
1897
|
-
|
2426
|
+
|
2427
|
+
</fo:table-row>
|
2428
|
+
</xsl:template>
|
2429
|
+
|
2430
|
+
<!-- from common.xsl -->
|
2431
|
+
<xsl:template match="*[local-name() = 'clause']" priority="2">
|
2432
|
+
<xsl:choose>
|
2433
|
+
<xsl:when test="count(./node()) = 0"> <!-- if empty clause, then move id into next title -->
|
2434
|
+
<xsl:choose>
|
2435
|
+
<xsl:when test="local-name(following-sibling::*[1]) = 'title'"/> <!-- id will set in title -->
|
2436
|
+
<xsl:otherwise>
|
1898
2437
|
<fo:block>
|
1899
|
-
<xsl:
|
1900
|
-
|
1901
|
-
</xsl:for-each>
|
2438
|
+
<xsl:call-template name="setId"/>
|
2439
|
+
<xsl:apply-templates/>
|
1902
2440
|
</fo:block>
|
1903
|
-
</
|
1904
|
-
</xsl:
|
1905
|
-
</xsl:
|
1906
|
-
|
2441
|
+
</xsl:otherwise>
|
2442
|
+
</xsl:choose>
|
2443
|
+
</xsl:when>
|
2444
|
+
<xsl:otherwise>
|
2445
|
+
<fo:block>
|
2446
|
+
<xsl:call-template name="setId"/>
|
2447
|
+
<xsl:apply-templates/>
|
2448
|
+
</fo:block>
|
2449
|
+
</xsl:otherwise>
|
2450
|
+
</xsl:choose>
|
2451
|
+
|
2452
|
+
<!-- <xsl:if test="$namespace = 'bipm'">
|
2453
|
+
<xsl:attribute name="keep-with-next">always</xsl:attribute>
|
2454
|
+
</xsl:if> -->
|
1907
2455
|
</xsl:template>
|
1908
2456
|
|
2457
|
+
|
1909
2458
|
<!-- skip, because it process in note_side template -->
|
1910
2459
|
<!-- <xsl:template match="bipm:preface/bipm:abstract//bipm:note[not(ancestor::bipm:table)]" priority="3"/> -->
|
1911
2460
|
<!-- <xsl:template match="bipm:preface/bipm:abstract//bipm:note_side" priority="3"/> -->
|
@@ -1924,8 +2473,23 @@
|
|
1924
2473
|
|
1925
2474
|
<!-- <xsl:template match="bipm:note" mode="note_side"> -->
|
1926
2475
|
<xsl:template match="bipm:note_side" mode="note_side">
|
1927
|
-
<fo:block line-height-shift-adjustment="disregard-shifts">
|
1928
|
-
<xsl:
|
2476
|
+
<fo:block line-height-shift-adjustment="disregard-shifts" space-after="4pt">
|
2477
|
+
<xsl:call-template name="setId"/>
|
2478
|
+
|
2479
|
+
<xsl:if test="ancestor::bipm:table"><!-- move table note lower than title -->
|
2480
|
+
<xsl:variable name="table_id" select="ancestor::bipm:table[1]/@id"/>
|
2481
|
+
<xsl:variable name="num">
|
2482
|
+
<xsl:number count="//bipm:table[@id = $table_id]//bipm:note_side" level="any"/>
|
2483
|
+
</xsl:variable>
|
2484
|
+
<xsl:if test="$num = 1 and ancestor::bipm:table[1]/bipm:name/bipm:tab">
|
2485
|
+
<xsl:attribute name="margin-top">48pt</xsl:attribute>
|
2486
|
+
</xsl:if>
|
2487
|
+
<!-- <fo:inline>num=<xsl:value-of select="$num"/></fo:inline> -->
|
2488
|
+
</xsl:if>
|
2489
|
+
|
2490
|
+
<!-- if note relates to title, but not fn -->
|
2491
|
+
<xsl:if test="ancestor::bipm:title and not(bipm:sup_fn)"><fo:inline>* </fo:inline></xsl:if>
|
2492
|
+
|
1929
2493
|
<xsl:apply-templates mode="note_side"/>
|
1930
2494
|
</fo:block>
|
1931
2495
|
</xsl:template>
|
@@ -1964,7 +2528,7 @@
|
|
1964
2528
|
<xsl:number count="bipm:fn[not(ancestor::bipm:table)]" level="any"/>
|
1965
2529
|
</xsl:variable>
|
1966
2530
|
<xsl:variable name="gen_id" select="generate-id()"/>
|
1967
|
-
<xsl:variable name="lang" select="ancestor::bipm:bipm-standard/*[local-name()='bibdata']//*[local-name()='language']"/>
|
2531
|
+
<xsl:variable name="lang" select="ancestor::bipm:bipm-standard/*[local-name()='bibdata']//*[local-name()='language'][@current = 'true']"/>
|
1968
2532
|
<fo:inline font-size="65%" keep-with-previous.within-line="always" vertical-align="super">
|
1969
2533
|
<fo:basic-link internal-destination="{$lang}_footnote_{@reference}_{$number}_{$gen_id}" fox:alt-text="footnote {@reference}">
|
1970
2534
|
<xsl:value-of select="$number"/><!-- + count(//bipm:bibitem/bipm:note) -->
|
@@ -2014,6 +2578,7 @@
|
|
2014
2578
|
<xsl:otherwise>justify</xsl:otherwise>
|
2015
2579
|
</xsl:choose>
|
2016
2580
|
</xsl:attribute>
|
2581
|
+
<xsl:copy-of select="@font-family"/>
|
2017
2582
|
<xsl:if test="not(ancestor::bipm:table)">
|
2018
2583
|
<xsl:attribute name="margin-bottom">6pt</xsl:attribute>
|
2019
2584
|
</xsl:if>
|
@@ -2029,6 +2594,9 @@
|
|
2029
2594
|
<xsl:if test="@align = 'center'">
|
2030
2595
|
<xsl:attribute name="keep-with-next">always</xsl:attribute>
|
2031
2596
|
</xsl:if>
|
2597
|
+
<xsl:if test="local-name(*[1]) = 'strong' and normalize-space(.) = normalize-space(*[1])">
|
2598
|
+
<xsl:attribute name="keep-with-next">always</xsl:attribute>
|
2599
|
+
</xsl:if>
|
2032
2600
|
<xsl:if test="@parent-type = 'quote'">
|
2033
2601
|
<xsl:attribute name="font-family">Arial</xsl:attribute>
|
2034
2602
|
<xsl:attribute name="font-size">9pt</xsl:attribute>
|
@@ -2069,18 +2637,31 @@
|
|
2069
2637
|
|
2070
2638
|
<!-- process list item as individual list --> <!-- flat list -->
|
2071
2639
|
<xsl:template match="bipm:li">
|
2072
|
-
<fo:block-container margin-left="0mm">
|
2640
|
+
<fo:block-container margin-left="0mm"> <!-- debug: border="0.5pt solid black" -->
|
2073
2641
|
<xsl:if test="ancestor::bipm:li">
|
2074
|
-
<xsl:attribute name="margin-left">
|
2642
|
+
<xsl:attribute name="margin-left">6.5mm</xsl:attribute><!-- 8 mm -->
|
2075
2643
|
</xsl:if>
|
2076
2644
|
<xsl:if test="@parent-type = 'quote'">
|
2077
2645
|
<xsl:attribute name="font-family">Arial</xsl:attribute>
|
2078
2646
|
<xsl:attribute name="font-size">9pt</xsl:attribute>
|
2079
2647
|
<xsl:attribute name="line-height">130%</xsl:attribute>
|
2080
2648
|
</xsl:if>
|
2649
|
+
|
2650
|
+
<!-- last item -->
|
2651
|
+
<xsl:if test="not(following-sibling::*[1][local-name() = 'li'])">
|
2652
|
+
<xsl:attribute name="space-after">6pt</xsl:attribute>
|
2653
|
+
<xsl:if test="../ancestor::bipm:ul | ../ancestor::bipm:ol">
|
2654
|
+
<xsl:attribute name="space-after">0pt</xsl:attribute>
|
2655
|
+
</xsl:if>
|
2656
|
+
<xsl:if test="../following-sibling::*[1][local-name() = 'ul' or local-name() = 'ol']">
|
2657
|
+
<xsl:attribute name="space-after">0pt</xsl:attribute>
|
2658
|
+
</xsl:if>
|
2659
|
+
</xsl:if>
|
2660
|
+
|
2081
2661
|
<fo:block-container margin-left="0mm">
|
2082
|
-
<fo:list-block provisional-distance-between-starts="
|
2083
|
-
|
2662
|
+
<fo:list-block provisional-distance-between-starts="6.5mm"> <!-- debug: border="0.5pt solid blue" -->
|
2663
|
+
<!-- last item -->
|
2664
|
+
<!-- <xsl:if test="not(following-sibling::*[1][local-name() = 'li'])">
|
2084
2665
|
<xsl:attribute name="margin-bottom">6pt</xsl:attribute>
|
2085
2666
|
<xsl:if test="../ancestor::bipm:ul | ../ancestor::bipm:ol">
|
2086
2667
|
<xsl:attribute name="margin-bottom">0pt</xsl:attribute>
|
@@ -2088,7 +2669,7 @@
|
|
2088
2669
|
<xsl:if test="../following-sibling::*[1][local-name() = 'ul' or local-name() = 'ol']">
|
2089
2670
|
<xsl:attribute name="margin-bottom">0pt</xsl:attribute>
|
2090
2671
|
</xsl:if>
|
2091
|
-
</xsl:if>
|
2672
|
+
</xsl:if> -->
|
2092
2673
|
<!-- <xsl:if test="../ancestor::bipm:note"> -->
|
2093
2674
|
<xsl:if test="ancestor::bipm:note_side">
|
2094
2675
|
<xsl:attribute name="provisional-distance-between-starts">0mm</xsl:attribute>
|
@@ -2096,10 +2677,12 @@
|
|
2096
2677
|
|
2097
2678
|
<fo:list-item id="{@id}">
|
2098
2679
|
<fo:list-item-label end-indent="label-end()">
|
2099
|
-
<fo:block>
|
2680
|
+
<fo:block> <!-- debug: border="0.5pt solid green" -->
|
2100
2681
|
<fo:inline>
|
2101
|
-
<xsl:if test="@list_type = 'ul'">
|
2102
|
-
<xsl:attribute name="font-size">15pt</xsl:attribute>
|
2682
|
+
<!-- <xsl:if test="@list_type = 'ul'">
|
2683
|
+
<xsl:attribute name="font-size">15pt</xsl:attribute> -->
|
2684
|
+
<xsl:if test="@font-size">
|
2685
|
+
<xsl:attribute name="font-size"><xsl:value-of select="@font-size"/></xsl:attribute>
|
2103
2686
|
<!-- <xsl:attribute name="baseline-shift">-10%</xsl:attribute> -->
|
2104
2687
|
</xsl:if>
|
2105
2688
|
<xsl:value-of select="@label"/>
|
@@ -2129,7 +2712,7 @@
|
|
2129
2712
|
</fo:block>
|
2130
2713
|
</fo:list-item-label>
|
2131
2714
|
<fo:list-item-body start-indent="body-start()" line-height-shift-adjustment="disregard-shifts">
|
2132
|
-
<fo:block margin-bottom="0pt">
|
2715
|
+
<fo:block margin-bottom="0pt"> <!-- debug: border="0.5pt solid red" -->
|
2133
2716
|
<xsl:if test="@list_type = 'ol'">
|
2134
2717
|
<xsl:attribute name="margin-bottom">6pt</xsl:attribute>
|
2135
2718
|
</xsl:if>
|
@@ -2147,6 +2730,10 @@
|
|
2147
2730
|
</fo:block-container>
|
2148
2731
|
</fo:block-container>
|
2149
2732
|
|
2733
|
+
<xsl:if test="not(following-sibling::*[1][local-name() = 'li']) and not(../ancestor::bipm:ul | ../ancestor::bipm:ol) and not (../following-sibling::*[1][local-name() = 'ul' or local-name() = 'ol'])">
|
2734
|
+
<fo:block/>
|
2735
|
+
</xsl:if>
|
2736
|
+
|
2150
2737
|
</xsl:template>
|
2151
2738
|
|
2152
2739
|
<xsl:template match="bipm:ul2/bipm:note | bipm:ol2/bipm:note" priority="2">
|
@@ -2219,7 +2806,8 @@
|
|
2219
2806
|
<xsl:if test=".//bipm:fn">
|
2220
2807
|
<xsl:attribute name="line-height-shift-adjustment">disregard-shifts</xsl:attribute>
|
2221
2808
|
</xsl:if>
|
2222
|
-
<xsl:call-template name="processBibitem"/>
|
2809
|
+
<!-- <xsl:call-template name="processBibitem"/> -->
|
2810
|
+
<xsl:apply-templates/>
|
2223
2811
|
</fo:block>
|
2224
2812
|
</xsl:template>
|
2225
2813
|
|
@@ -2277,7 +2865,8 @@
|
|
2277
2865
|
</fo:list-item-label>
|
2278
2866
|
<fo:list-item-body start-indent="body-start()">
|
2279
2867
|
<fo:block>
|
2280
|
-
<xsl:call-template name="processBibitem"/>
|
2868
|
+
<!-- <xsl:call-template name="processBibitem"/> -->
|
2869
|
+
<xsl:apply-templates/>
|
2281
2870
|
</fo:block>
|
2282
2871
|
</fo:list-item-body>
|
2283
2872
|
</fo:list-item>
|
@@ -2322,13 +2911,10 @@
|
|
2322
2911
|
<xsl:when test="starts-with(normalize-space(following-sibling::node()[1]), ')')">
|
2323
2912
|
<!-- add , see p. N -->
|
2324
2913
|
<!-- add , voir p. N -->
|
2325
|
-
<xsl:apply-templates/>
|
2326
|
-
<xsl:variable name="curr_lang" select="ancestor::bipm:bipm-standard/bipm:bibdata/bipm:language"/>
|
2914
|
+
<xsl:apply-templates/>
|
2327
2915
|
<xsl:text>, </xsl:text>
|
2328
|
-
<xsl:
|
2329
|
-
|
2330
|
-
<xsl:otherwise>see</xsl:otherwise>
|
2331
|
-
</xsl:choose>
|
2916
|
+
<xsl:variable name="curr_lang" select="ancestor::bipm:bipm-standard/bipm:bibdata/bipm:language[@current = 'true']"/>
|
2917
|
+
<xsl:value-of select="ancestor::bipm:bipm-standard/bipm:localized-strings/bipm:localized-string[@key='see' and @language=$curr_lang]"/>
|
2332
2918
|
<xsl:text> p. </xsl:text>
|
2333
2919
|
<fo:page-number-citation ref-id="{@target}"/>
|
2334
2920
|
</xsl:when>
|
@@ -2342,9 +2928,14 @@
|
|
2342
2928
|
<xsl:template match="bipm:note[not(ancestor::bipm:preface)]/bipm:name" priority="2" mode="presentation">
|
2343
2929
|
<xsl:choose>
|
2344
2930
|
<xsl:when test="not(../preceding-sibling::bipm:note) and not((../following-sibling::bipm:note))">
|
2345
|
-
<xsl:variable name="curr_lang" select="ancestor::bipm:bipm-standard/bipm:bibdata/bipm:language"/>
|
2931
|
+
<xsl:variable name="curr_lang" select="ancestor::bipm:bipm-standard/bipm:bibdata/bipm:language[@current = 'true']"/>
|
2346
2932
|
<xsl:choose>
|
2347
|
-
<xsl:when test="$curr_lang = 'fr'">
|
2933
|
+
<xsl:when test="$curr_lang = 'fr'">
|
2934
|
+
<xsl:choose>
|
2935
|
+
<xsl:when test="ancestor::bipm:li">Remarque: </xsl:when>
|
2936
|
+
<xsl:otherwise>Note: </xsl:otherwise>
|
2937
|
+
</xsl:choose>
|
2938
|
+
</xsl:when>
|
2348
2939
|
<xsl:otherwise>Note: </xsl:otherwise>
|
2349
2940
|
</xsl:choose>
|
2350
2941
|
</xsl:when>
|
@@ -2366,12 +2957,49 @@
|
|
2366
2957
|
|
2367
2958
|
</xsl:template>
|
2368
2959
|
|
2960
|
+
<xsl:template match="*[local-name() = 'sup_fn']">
|
2961
|
+
<fo:inline font-size="65%" keep-with-previous.within-line="always" vertical-align="super">
|
2962
|
+
<xsl:apply-templates/>
|
2963
|
+
</fo:inline>
|
2964
|
+
</xsl:template>
|
2965
|
+
|
2966
|
+
<!-- for chemical expressions, when prefix superscripted -->
|
2967
|
+
<xsl:template match="mathml:msup[count(*) = 2 and count(mathml:mrow) = 2]/mathml:mrow[1][count(*) = 1 and mathml:mtext and (mathml:mtext/text() = '' or not(mathml:mtext/text()))]/mathml:mtext" mode="mathml" priority="2">
|
2968
|
+
<mathml:mspace height="1ex"/>
|
2969
|
+
</xsl:template>
|
2970
|
+
<xsl:template match="mathml:msup[count(*) = 2 and count(mathml:mrow) = 2]/mathml:mrow[1][count(*) = 1 and mathml:mtext and (mathml:mtext/text() = ' ' or mathml:mtext/text() = ' ')]/mathml:mtext" mode="mathml" priority="2">
|
2971
|
+
<mathml:mspace width="1ex" height="1ex"/>
|
2972
|
+
</xsl:template>
|
2973
|
+
|
2974
|
+
<!-- set height for sup -->
|
2975
|
+
<!-- <xsl:template match="mathml:msup[count(*) = 2 and count(mathml:mrow) = 2]/mathml:mrow[1][count(*) = 1 and mathml:mtext and (mathml:mtext/text() != '' and mathml:mtext/text() != ' ' and mathml:mtext/text() != ' ')]/mathml:mtext" mode="mtext"> -->
|
2976
|
+
<xsl:template match="mathml:msup[count(*) = 2 and count(mathml:mrow) = 2]/mathml:mrow[1][count(*) = 1]/*" mode="mathml" priority="2">
|
2977
|
+
<xsl:copy>
|
2978
|
+
<xsl:apply-templates select="@*|node()" mode="mathml"/>
|
2979
|
+
</xsl:copy>
|
2980
|
+
<!-- <xsl:copy-of select="."/> -->
|
2981
|
+
<mathml:mspace height="1.4ex"/>
|
2982
|
+
</xsl:template>
|
2983
|
+
|
2984
|
+
<!-- set script minimal font-size -->
|
2985
|
+
<xsl:template match="mathml:math" mode="mathml" priority="2">
|
2986
|
+
<xsl:copy>
|
2987
|
+
<xsl:apply-templates select="@*" mode="mathml"/>
|
2988
|
+
<mathml:mstyle scriptminsize="6pt">
|
2989
|
+
<xsl:apply-templates select="node()" mode="mathml"/>
|
2990
|
+
</mathml:mstyle>
|
2991
|
+
</xsl:copy>
|
2992
|
+
</xsl:template>
|
2993
|
+
|
2369
2994
|
<xsl:template name="insertHeaderFooter">
|
2370
|
-
|
2995
|
+
<xsl:param name="header-title"/>
|
2371
2996
|
<fo:static-content flow-name="header-odd">
|
2372
2997
|
<fo:block-container font-family="Arial" font-size="8pt" padding-top="12.5mm">
|
2373
|
-
<fo:block text-align="right">
|
2374
|
-
<
|
2998
|
+
<fo:block text-align="right">
|
2999
|
+
<xsl:copy-of select="$header-title"/>
|
3000
|
+
<!-- <fo:retrieve-marker retrieve-class-name="header-title"
|
3001
|
+
retrieve-boundary="page-sequence"
|
3002
|
+
retrieve-position="first-starting-within-page"/> -->
|
2375
3003
|
<xsl:text> </xsl:text>
|
2376
3004
|
<fo:inline font-size="13pt" baseline-shift="-15%">•</fo:inline>
|
2377
3005
|
<xsl:text> </xsl:text>
|
@@ -2388,8 +3016,11 @@
|
|
2388
3016
|
<fo:inline font-weight="bold"><fo:page-number/></fo:inline>
|
2389
3017
|
<xsl:text> </xsl:text>
|
2390
3018
|
<fo:inline font-size="13pt" baseline-shift="-15%">•</fo:inline>
|
2391
|
-
<xsl:text> </xsl:text>
|
2392
|
-
<
|
3019
|
+
<xsl:text> </xsl:text>
|
3020
|
+
<xsl:copy-of select="$header-title"/>
|
3021
|
+
<!-- <fo:retrieve-marker retrieve-class-name="header-title"
|
3022
|
+
retrieve-boundary="page-sequence"
|
3023
|
+
retrieve-position="first-starting-within-page"/> -->
|
2393
3024
|
</fo:block>
|
2394
3025
|
<fo:block-container font-size="1pt" border-top="0.5pt solid black" width="86.6mm">
|
2395
3026
|
<fo:block> </fo:block>
|
@@ -2398,7 +3029,7 @@
|
|
2398
3029
|
</fo:static-content>
|
2399
3030
|
</xsl:template>
|
2400
3031
|
|
2401
|
-
<xsl:template name="insertHeaderFooterAppendix">
|
3032
|
+
<!-- <xsl:template name="insertHeaderFooterAppendix">
|
2402
3033
|
<fo:static-content flow-name="header-appendix">
|
2403
3034
|
<fo:block-container font-size="11pt" padding-top="12.7mm">
|
2404
3035
|
|
@@ -2435,7 +3066,7 @@
|
|
2435
3066
|
<fo:block text-align="center" padding-bottom="12.7mm"><fo:page-number/>/<fo:page-number-citation ref-id="theLastPage"/></fo:block>
|
2436
3067
|
</fo:block-container>
|
2437
3068
|
</fo:static-content>
|
2438
|
-
</xsl:template>
|
3069
|
+
</xsl:template> -->
|
2439
3070
|
|
2440
3071
|
<xsl:template name="printRevisionDate">
|
2441
3072
|
<xsl:param name="date"/>
|
@@ -2501,7 +3132,7 @@
|
|
2501
3132
|
</fo:static-content>
|
2502
3133
|
</xsl:template>
|
2503
3134
|
|
2504
|
-
|
3135
|
+
<!-- <xsl:template name="insertIndexPages">
|
2505
3136
|
<fo:page-sequence master-reference="index" force-page-count="no-force">
|
2506
3137
|
<xsl:call-template name="insertHeaderFooter"/>
|
2507
3138
|
<fo:flow flow-name="xsl-region-body">
|
@@ -2518,13 +3149,13 @@
|
|
2518
3149
|
<fo:block>atmosphère normale, 52</fo:block>
|
2519
3150
|
<fo:block>atome gramme, 104</fo:block>
|
2520
3151
|
<fo:block>atome de césium, niveaux hyperfins, 15, 17, 18, 56, 58, 83, 85, 92, 94, 97, 98, 102</fo:block>
|
2521
|
-
<xsl:if test="position() != last()"><fo:block
|
3152
|
+
<xsl:if test="position() != last()"><fo:block> </fo:block></xsl:if>
|
2522
3153
|
</xsl:for-each>
|
2523
3154
|
|
2524
3155
|
</fo:flow>
|
2525
3156
|
</fo:page-sequence>
|
2526
3157
|
</xsl:template>
|
2527
|
-
|
3158
|
+
-->
|
2528
3159
|
|
2529
3160
|
<xsl:variable name="Image-Logo-BIPM">
|
2530
3161
|
<xsl:text>iVBORw0KGgoAAAANSUhEUgAAAaIAAADRCAYAAACOyra0AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2dpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMDE0IDc5LjE1Njc5NywgMjAxNC8wOC8yMC0wOTo1MzowMiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDpGOTdGMTE3NDA3MjA2ODExODIyQUJFNEQ3OTI1MkI2OSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpCMTdGMTkxM0YzNEIxMUVBOEZCREQ0ODFDQjY0QzlCNyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpCMTdGMTkxMkYzNEIxMUVBOEZCREQ0ODFDQjY0QzlCNyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBJbkRlc2lnbiBDUzYgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0idXVpZDoyNGQ2ZDM1ZS1kNDc4LTcxNGItYjYwZi1iMDMyYWFmYzM3OTYiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5pZDoxNjcwQkZBMDExMjA2ODExODIyQUJFNEQ3OTI1MkI2OSIvPiA8L3JkZjpEZXNjcmlw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</xsl:text>
|
@@ -2940,13 +3571,30 @@
|
|
2940
3571
|
<title-part lang="en">
|
2941
3572
|
|
2942
3573
|
|
3574
|
+
|
3575
|
+
<xsl:text>Part #</xsl:text>
|
3576
|
+
|
2943
3577
|
</title-part>
|
2944
3578
|
<title-part lang="fr">
|
2945
3579
|
|
2946
3580
|
|
3581
|
+
|
3582
|
+
<xsl:text>Partie #</xsl:text>
|
3583
|
+
|
2947
3584
|
</title-part>
|
2948
3585
|
<title-part lang="zh">第 # 部分:</title-part>
|
2949
3586
|
|
3587
|
+
<title-subpart lang="en">
|
3588
|
+
|
3589
|
+
<xsl:text>Sub-part #</xsl:text>
|
3590
|
+
|
3591
|
+
</title-subpart>
|
3592
|
+
<title-subpart lang="fr">
|
3593
|
+
|
3594
|
+
<xsl:text>Partie de sub #</xsl:text>
|
3595
|
+
|
3596
|
+
</title-subpart>
|
3597
|
+
|
2950
3598
|
<title-modified lang="en">modified</title-modified>
|
2951
3599
|
<title-modified lang="fr">modifiée</title-modified>
|
2952
3600
|
|
@@ -3155,7 +3803,7 @@
|
|
3155
3803
|
|
3156
3804
|
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
3157
3805
|
<xsl:attribute name="text-align">left</xsl:attribute>
|
3158
|
-
<xsl:attribute name="margin-top">
|
3806
|
+
<xsl:attribute name="margin-top">24pt</xsl:attribute>
|
3159
3807
|
<xsl:attribute name="margin-left">25mm</xsl:attribute>
|
3160
3808
|
<xsl:attribute name="text-indent">-25mm</xsl:attribute>
|
3161
3809
|
<xsl:attribute name="margin-bottom">6pt</xsl:attribute>
|
@@ -3367,9 +4015,9 @@
|
|
3367
4015
|
|
3368
4016
|
|
3369
4017
|
|
3370
|
-
|
3371
|
-
<fo:block
|
3372
|
-
|
4018
|
+
<!-- <xsl:if test="$namespace = 'bipm'">
|
4019
|
+
<fo:block> </fo:block>
|
4020
|
+
</xsl:if> -->
|
3373
4021
|
|
3374
4022
|
<!-- $namespace = 'iso' or -->
|
3375
4023
|
|
@@ -3551,6 +4199,11 @@
|
|
3551
4199
|
<xsl:if test="normalize-space() != ''">
|
3552
4200
|
<fo:block xsl:use-attribute-sets="table-name-style">
|
3553
4201
|
|
4202
|
+
|
4203
|
+
<xsl:if test="not(*[local-name()='tab'])"> <!-- table without number -->
|
4204
|
+
<xsl:attribute name="margin-top">0pt</xsl:attribute>
|
4205
|
+
</xsl:if>
|
4206
|
+
|
3554
4207
|
<xsl:apply-templates/>
|
3555
4208
|
</fo:block>
|
3556
4209
|
</xsl:if>
|
@@ -3918,6 +4571,14 @@
|
|
3918
4571
|
|
3919
4572
|
|
3920
4573
|
|
4574
|
+
|
4575
|
+
<xsl:if test="count(*) = 1 and local-name(*[1]) = 'th'">
|
4576
|
+
<xsl:attribute name="keep-with-next.within-page">always</xsl:attribute>
|
4577
|
+
</xsl:if>
|
4578
|
+
<xsl:if test="not(ancestor::*[local-name()='note_side'])">
|
4579
|
+
<xsl:attribute name="min-height">5mm</xsl:attribute>
|
4580
|
+
</xsl:if>
|
4581
|
+
|
3921
4582
|
<!-- <xsl:if test="$namespace = 'bipm'">
|
3922
4583
|
<xsl:attribute name="height">8mm</xsl:attribute>
|
3923
4584
|
</xsl:if> -->
|
@@ -4023,7 +4684,12 @@
|
|
4023
4684
|
</xsl:attribute>
|
4024
4685
|
</xsl:if>
|
4025
4686
|
<xsl:call-template name="display-align"/>
|
4026
|
-
<fo:block>
|
4687
|
+
<fo:block>
|
4688
|
+
|
4689
|
+
<xsl:if test="not(.//bipm:image)">
|
4690
|
+
<xsl:attribute name="line-stacking-strategy">font-height</xsl:attribute>
|
4691
|
+
</xsl:if>
|
4692
|
+
|
4027
4693
|
<xsl:apply-templates/>
|
4028
4694
|
</fo:block>
|
4029
4695
|
</fo:table-cell>
|
@@ -4270,7 +4936,16 @@
|
|
4270
4936
|
<xsl:apply-templates/>
|
4271
4937
|
</fo:inline>
|
4272
4938
|
</xsl:template><xsl:template match="*[local-name()='dl']">
|
4273
|
-
<fo:block-container
|
4939
|
+
<fo:block-container>
|
4940
|
+
|
4941
|
+
|
4942
|
+
<xsl:if test="not(ancestor::*[local-name() = 'li'])">
|
4943
|
+
<xsl:attribute name="margin-left">0mm</xsl:attribute>
|
4944
|
+
</xsl:if>
|
4945
|
+
<xsl:if test="ancestor::*[local-name() = 'li']">
|
4946
|
+
<xsl:attribute name="margin-left">6.5mm</xsl:attribute><!-- 8 mm -->
|
4947
|
+
</xsl:if>
|
4948
|
+
|
4274
4949
|
<xsl:if test="parent::*[local-name() = 'note']">
|
4275
4950
|
<xsl:attribute name="margin-left">
|
4276
4951
|
<xsl:choose>
|
@@ -4280,8 +4955,13 @@
|
|
4280
4955
|
</xsl:attribute>
|
4281
4956
|
|
4282
4957
|
</xsl:if>
|
4283
|
-
<fo:block-container
|
4284
|
-
|
4958
|
+
<fo:block-container>
|
4959
|
+
|
4960
|
+
|
4961
|
+
<!-- <xsl:if test="not(ancestor::*[local-name() = 'li'])"> -->
|
4962
|
+
<xsl:attribute name="margin-left">0mm</xsl:attribute>
|
4963
|
+
<!-- </xsl:if> -->
|
4964
|
+
|
4285
4965
|
<xsl:variable name="parent" select="local-name(..)"/>
|
4286
4966
|
|
4287
4967
|
<xsl:variable name="key_iso">
|
@@ -4295,9 +4975,12 @@
|
|
4295
4975
|
<fo:block margin-bottom="12pt" text-align="left">
|
4296
4976
|
|
4297
4977
|
<xsl:variable name="title-where">
|
4298
|
-
|
4299
|
-
|
4300
|
-
|
4978
|
+
|
4979
|
+
|
4980
|
+
<xsl:call-template name="getTitle">
|
4981
|
+
<xsl:with-param name="name" select="'title-where'"/>
|
4982
|
+
</xsl:call-template>
|
4983
|
+
|
4301
4984
|
</xsl:variable>
|
4302
4985
|
<xsl:value-of select="$title-where"/><xsl:text> </xsl:text>
|
4303
4986
|
<xsl:apply-templates select="*[local-name()='dt']/*"/>
|
@@ -4313,9 +4996,12 @@
|
|
4313
4996
|
|
4314
4997
|
|
4315
4998
|
<xsl:variable name="title-where">
|
4316
|
-
|
4317
|
-
|
4318
|
-
|
4999
|
+
|
5000
|
+
|
5001
|
+
<xsl:call-template name="getTitle">
|
5002
|
+
<xsl:with-param name="name" select="'title-where'"/>
|
5003
|
+
</xsl:call-template>
|
5004
|
+
|
4319
5005
|
</xsl:variable>
|
4320
5006
|
<xsl:value-of select="$title-where"/>
|
4321
5007
|
</fo:block>
|
@@ -4326,9 +5012,12 @@
|
|
4326
5012
|
|
4327
5013
|
|
4328
5014
|
<xsl:variable name="title-key">
|
4329
|
-
|
4330
|
-
|
4331
|
-
|
5015
|
+
|
5016
|
+
|
5017
|
+
<xsl:call-template name="getTitle">
|
5018
|
+
<xsl:with-param name="name" select="'title-key'"/>
|
5019
|
+
</xsl:call-template>
|
5020
|
+
|
4332
5021
|
</xsl:variable>
|
4333
5022
|
<xsl:value-of select="$title-key"/>
|
4334
5023
|
</fo:block>
|
@@ -4902,7 +5591,18 @@
|
|
4902
5591
|
<xsl:with-param name="previousRow" select="$newRow"/>
|
4903
5592
|
</xsl:apply-templates>
|
4904
5593
|
</xsl:template><xsl:template name="getLang">
|
4905
|
-
<xsl:variable name="
|
5594
|
+
<xsl:variable name="language_current" select="normalize-space(//*[local-name()='bibdata']//*[local-name()='language'][@current = 'true'])"/>
|
5595
|
+
<xsl:variable name="language">
|
5596
|
+
<xsl:choose>
|
5597
|
+
<xsl:when test="$language_current != ''">
|
5598
|
+
<xsl:value-of select="$language_current"/>
|
5599
|
+
</xsl:when>
|
5600
|
+
<xsl:otherwise>
|
5601
|
+
<xsl:value-of select="//*[local-name()='bibdata']//*[local-name()='language']"/>
|
5602
|
+
</xsl:otherwise>
|
5603
|
+
</xsl:choose>
|
5604
|
+
</xsl:variable>
|
5605
|
+
|
4906
5606
|
<xsl:choose>
|
4907
5607
|
<xsl:when test="$language = 'English'">en</xsl:when>
|
4908
5608
|
<xsl:otherwise><xsl:value-of select="$language"/></xsl:otherwise>
|
@@ -4937,6 +5637,11 @@
|
|
4937
5637
|
<xsl:value-of select="substring($str, 2)"/>
|
4938
5638
|
</xsl:template><xsl:template match="mathml:math">
|
4939
5639
|
<fo:inline font-family="STIX Two Math"> <!-- -->
|
5640
|
+
|
5641
|
+
<xsl:if test="ancestor::*[local-name()='table']">
|
5642
|
+
<xsl:attribute name="font-size">95%</xsl:attribute> <!-- base font in table is 10pt -->
|
5643
|
+
</xsl:if>
|
5644
|
+
|
4940
5645
|
<xsl:variable name="mathml">
|
4941
5646
|
<xsl:apply-templates select="." mode="mathml"/>
|
4942
5647
|
</xsl:variable>
|
@@ -5019,10 +5724,14 @@
|
|
5019
5724
|
</fo:inline>
|
5020
5725
|
</xsl:template><xsl:template match="*[local-name() = 'modification']">
|
5021
5726
|
<xsl:variable name="title-modified">
|
5022
|
-
|
5023
|
-
|
5024
|
-
|
5727
|
+
|
5728
|
+
|
5729
|
+
<xsl:call-template name="getTitle">
|
5730
|
+
<xsl:with-param name="name" select="'title-modified'"/>
|
5731
|
+
</xsl:call-template>
|
5732
|
+
|
5025
5733
|
</xsl:variable>
|
5734
|
+
|
5026
5735
|
<xsl:choose>
|
5027
5736
|
<xsl:when test="$lang = 'zh'"><xsl:text>、</xsl:text><xsl:value-of select="$title-modified"/><xsl:text>—</xsl:text></xsl:when>
|
5028
5737
|
<xsl:otherwise><xsl:text>, </xsl:text><xsl:value-of select="$title-modified"/><xsl:text> — </xsl:text></xsl:otherwise>
|
@@ -5756,9 +6465,14 @@
|
|
5756
6465
|
|
5757
6466
|
<fo:inline>
|
5758
6467
|
|
5759
|
-
|
5760
|
-
|
5761
|
-
|
6468
|
+
|
6469
|
+
|
6470
|
+
|
6471
|
+
<xsl:call-template name="getTitle">
|
6472
|
+
<xsl:with-param name="name" select="'title-source'"/>
|
6473
|
+
</xsl:call-template>
|
6474
|
+
|
6475
|
+
|
5762
6476
|
<xsl:text>: </xsl:text>
|
5763
6477
|
</fo:inline>
|
5764
6478
|
|
@@ -5910,9 +6624,12 @@
|
|
5910
6624
|
</fo:block>
|
5911
6625
|
</xsl:template><xsl:template match="*[local-name() = 'deprecates']">
|
5912
6626
|
<xsl:variable name="title-deprecated">
|
5913
|
-
|
5914
|
-
|
5915
|
-
|
6627
|
+
|
6628
|
+
|
6629
|
+
<xsl:call-template name="getTitle">
|
6630
|
+
<xsl:with-param name="name" select="'title-deprecated'"/>
|
6631
|
+
</xsl:call-template>
|
6632
|
+
|
5916
6633
|
</xsl:variable>
|
5917
6634
|
<fo:block xsl:use-attribute-sets="deprecates-style">
|
5918
6635
|
<xsl:value-of select="$title-deprecated"/>: <xsl:apply-templates/>
|
@@ -6279,13 +6996,22 @@
|
|
6279
6996
|
</xsl:template><xsl:template name="split">
|
6280
6997
|
<xsl:param name="pText" select="."/>
|
6281
6998
|
<xsl:param name="sep" select="','"/>
|
6999
|
+
<xsl:param name="normalize-space" select="'true'"/>
|
6282
7000
|
<xsl:if test="string-length($pText) >0">
|
6283
7001
|
<item>
|
6284
|
-
<xsl:
|
7002
|
+
<xsl:choose>
|
7003
|
+
<xsl:when test="$normalize-space = 'true'">
|
7004
|
+
<xsl:value-of select="normalize-space(substring-before(concat($pText, $sep), $sep))"/>
|
7005
|
+
</xsl:when>
|
7006
|
+
<xsl:otherwise>
|
7007
|
+
<xsl:value-of select="substring-before(concat($pText, $sep), $sep)"/>
|
7008
|
+
</xsl:otherwise>
|
7009
|
+
</xsl:choose>
|
6285
7010
|
</item>
|
6286
7011
|
<xsl:call-template name="split">
|
6287
7012
|
<xsl:with-param name="pText" select="substring-after($pText, $sep)"/>
|
6288
7013
|
<xsl:with-param name="sep" select="$sep"/>
|
7014
|
+
<xsl:with-param name="normalize-space" select="$normalize-space"/>
|
6289
7015
|
</xsl:call-template>
|
6290
7016
|
</xsl:if>
|
6291
7017
|
</xsl:template><xsl:template name="getDocumentId">
|
@@ -6351,4 +7077,23 @@
|
|
6351
7077
|
<xsl:with-param name="letter-spacing" select="$letter-spacing"/>
|
6352
7078
|
</xsl:call-template>
|
6353
7079
|
</xsl:if>
|
7080
|
+
</xsl:template><xsl:template name="repeat">
|
7081
|
+
<xsl:param name="char" select="'*'"/>
|
7082
|
+
<xsl:param name="count"/>
|
7083
|
+
<xsl:if test="$count > 0">
|
7084
|
+
<xsl:value-of select="$char"/>
|
7085
|
+
<xsl:call-template name="repeat">
|
7086
|
+
<xsl:with-param name="char" select="$char"/>
|
7087
|
+
<xsl:with-param name="count" select="$count - 1"/>
|
7088
|
+
</xsl:call-template>
|
7089
|
+
</xsl:if>
|
7090
|
+
</xsl:template><xsl:template name="getLocalizedString">
|
7091
|
+
<xsl:param name="key"/>
|
7092
|
+
|
7093
|
+
<xsl:variable name="curr_lang">
|
7094
|
+
<xsl:call-template name="getLang"/>
|
7095
|
+
</xsl:variable>
|
7096
|
+
|
7097
|
+
<xsl:value-of select="/*/*[local-name() = 'localized-strings']/*[local-name() = 'localized-string'][@key = $key and @language = $curr_lang]"/>
|
7098
|
+
|
6354
7099
|
</xsl:template></xsl:stylesheet>
|