metanorma-iso 1.8.1 → 1.8.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/rake.yml +3 -13
  3. data/.hound.yml +3 -1
  4. data/.rubocop.yml +4 -8
  5. data/lib/asciidoctor/iso/base.rb +1 -0
  6. data/lib/asciidoctor/iso/biblio.rng +1 -0
  7. data/lib/asciidoctor/iso/cleanup.rb +17 -5
  8. data/lib/asciidoctor/iso/front.rb +3 -1
  9. data/lib/asciidoctor/iso/front_id.rb +66 -50
  10. data/lib/asciidoctor/iso/isodoc.rng +209 -4
  11. data/lib/asciidoctor/iso/isostandard-amd.rng +3 -0
  12. data/lib/asciidoctor/iso/isostandard.rng +12 -0
  13. data/lib/asciidoctor/iso/section.rb +2 -1
  14. data/lib/asciidoctor/iso/validate_section.rb +16 -9
  15. data/lib/isodoc/iso/base_convert.rb +13 -13
  16. data/lib/isodoc/iso/html/isodoc.css +475 -20
  17. data/lib/isodoc/iso/html/isodoc.scss +456 -23
  18. data/lib/isodoc/iso/html/wordstyle.css +202 -31
  19. data/lib/isodoc/iso/html/wordstyle.scss +194 -32
  20. data/lib/isodoc/iso/iso.amendment.xsl +679 -473
  21. data/lib/isodoc/iso/iso.international-standard.xsl +679 -473
  22. data/lib/isodoc/iso/metadata.rb +3 -2
  23. data/lib/isodoc/iso/presentation_xml_convert.rb +18 -9
  24. data/lib/isodoc/iso/sts_convert.rb +10 -13
  25. data/lib/isodoc/iso/word_convert.rb +153 -39
  26. data/lib/isodoc/iso/xref.rb +42 -27
  27. data/lib/metanorma/iso/version.rb +1 -1
  28. data/metanorma-iso.gemspec +4 -4
  29. data/spec/asciidoctor/base_spec.rb +426 -334
  30. data/spec/asciidoctor/blocks_spec.rb +96 -34
  31. data/spec/asciidoctor/cleanup_spec.rb +383 -25
  32. data/spec/asciidoctor/section_spec.rb +0 -14
  33. data/spec/asciidoctor/validate_spec.rb +119 -39
  34. data/spec/isodoc/amd_spec.rb +193 -201
  35. data/spec/isodoc/blocks_spec.rb +100 -88
  36. data/spec/isodoc/i18n_spec.rb +36 -36
  37. data/spec/isodoc/inline_spec.rb +282 -2
  38. data/spec/isodoc/iso_spec.rb +86 -138
  39. data/spec/isodoc/postproc_spec.rb +492 -442
  40. data/spec/isodoc/ref_spec.rb +6 -6
  41. data/spec/isodoc/section_spec.rb +301 -306
  42. data/spec/isodoc/table_spec.rb +166 -231
  43. data/spec/isodoc/terms_spec.rb +11 -8
  44. data/spec/isodoc/xref_spec.rb +147 -118
  45. data/spec/spec_helper.rb +16 -15
  46. metadata +9 -9
@@ -83,6 +83,9 @@
83
83
  </define>
84
84
  <define name="BibDataExtensionType">
85
85
  <ref name="doctype"/>
86
+ <optional>
87
+ <ref name="docsubtype"/>
88
+ </optional>
86
89
  <ref name="editorialgroup"/>
87
90
  <zeroOrMore>
88
91
  <ref name="ics"/>
@@ -38,6 +38,9 @@
38
38
  </define>
39
39
  <define name="BibDataExtensionType">
40
40
  <ref name="doctype"/>
41
+ <optional>
42
+ <ref name="docsubtype"/>
43
+ </optional>
41
44
  <optional>
42
45
  <ref name="horizontal"/>
43
46
  </optional>
@@ -256,6 +259,15 @@
256
259
  <value>guide</value>
257
260
  <value>amendment</value>
258
261
  <value>technical-corrigendum</value>
262
+ <value>directive</value>
263
+ </choice>
264
+ </define>
265
+ <define name="DocumentSubtype">
266
+ <choice>
267
+ <value>specification</value>
268
+ <value>method-of-test</value>
269
+ <value>vocabulary</value>
270
+ <value>code-of-practice</value>
259
271
  </choice>
260
272
  </define>
261
273
  <define name="structuredidentifier">
@@ -10,7 +10,7 @@ module Asciidoctor
10
10
  end
11
11
 
12
12
  def scope_parse(attrs, xml, node)
13
- attrs = attrs.merge(type: "scope") unless @amd
13
+ attrs = attrs.merge(type: "scope") unless @amd
14
14
  clause_parse(attrs, xml, node)
15
15
  end
16
16
 
@@ -32,6 +32,7 @@ module Asciidoctor
32
32
 
33
33
  def sectiontype(node, level = true)
34
34
  return nil if @amd
35
+
35
36
  super
36
37
  end
37
38
  end
@@ -99,6 +99,7 @@ module Asciidoctor
99
99
  "//clause[descendant::references][not(parent::clause)]".freeze
100
100
 
101
101
  def sections_sequence_validate(root)
102
+ vocab = root&.at("//bibdata/ext/subdoctype")&.text == "vocabulary"
102
103
  names = root.xpath(SECTIONS_XPATH)
103
104
  names = seqcheck(names, SEQ[0][:msg], SEQ[0][:val])
104
105
  n = names[0]
@@ -112,21 +113,27 @@ module Asciidoctor
112
113
  n = names.shift
113
114
  end
114
115
  if n.nil? || n.name != "clause"
115
- @log.add("Style", nil, "Document must contain at least one clause")
116
+ @log.add("Style", n, "Document must contain at least one clause")
116
117
  end
117
118
  n&.at("./self::clause") ||
118
- @log.add("Style", nil, "Document must contain clause after "\
119
+ @log.add("Style", n, "Document must contain clause after "\
119
120
  "Terms and Definitions")
120
121
  n&.at("./self::clause[@type = 'scope']") &&
121
- @log.add("Style", nil, "Scope must occur before Terms and Definitions")
122
+ @log.add("Style", n, "Scope must occur before Terms and Definitions")
122
123
  n = names.shift
123
- while n&.name == "clause"
124
+ while n&.name == "clause" || (vocab && n&.name == "terms")
124
125
  n&.at("./self::clause[@type = 'scope']")
125
- @log.add("Style", nil, "Scope must occur before Terms and Definitions")
126
+ @log.add("Style", n, "Scope must occur before Terms and Definitions")
126
127
  n = names.shift
127
128
  end
128
- unless %w(annex references).include? n&.name
129
- @log.add("Style", nil, "Only annexes and references can follow clauses")
129
+ if vocab
130
+ unless %w(annex references terms).include? n&.name
131
+ @log.add("Style", n, "Only terms, annexes and references can follow clauses")
132
+ end
133
+ else
134
+ unless %w(annex references).include? n&.name
135
+ @log.add("Style", n, "Only annexes and references can follow clauses")
136
+ end
130
137
  end
131
138
  while n&.name == "annex"
132
139
  n = names.shift
@@ -140,9 +147,9 @@ module Asciidoctor
140
147
  "Normative References")
141
148
  n = names&.shift
142
149
  n&.at("./self::references[@normative = 'false']") ||
143
- @log.add("Style", nil, "Final section must be (references) Bibliography")
150
+ @log.add("Style", n, "Final section must be (references) Bibliography")
144
151
  names.empty? ||
145
- @log.add("Style", nil, "There are sections after the final Bibliography")
152
+ @log.add("Style", n, "There are sections after the final Bibliography")
146
153
  end
147
154
 
148
155
  def style_warning(node, msg, text = nil)
@@ -13,8 +13,8 @@ module IsoDoc
13
13
  super
14
14
  end
15
15
 
16
- def implicit_reference(b)
17
- return true if b&.at(ns("./docidentifier"))&.text == "IEV"
16
+ def implicit_reference(bib)
17
+ return true if bib&.at(ns("./docidentifier"))&.text == "IEV"
18
18
 
19
19
  super
20
20
  end
@@ -32,7 +32,7 @@ module IsoDoc
32
32
  return if name.nil?
33
33
 
34
34
  div.span **{ class: "example_label" } do |p|
35
- name.children.each { |n| parse(n, div) }
35
+ name.children.each { |n| parse(n, p) }
36
36
  end
37
37
  end
38
38
 
@@ -89,7 +89,7 @@ module IsoDoc
89
89
  return unless insert = node.at(ns("./definition"))
90
90
 
91
91
  insert = insertall_after_here(node, insert, "termexample")
92
- insert = insertall_after_here(node, insert, "termnote")
92
+ insertall_after_here(node, insert, "termnote")
93
93
  end
94
94
 
95
95
  def termdef_parse(node, out)
@@ -110,18 +110,18 @@ module IsoDoc
110
110
  end
111
111
  end
112
112
 
113
- def formula_where(dl, out)
114
- return if dl.nil?
115
- return super unless (dl&.xpath(ns("./dt"))&.size == 1 &&
116
- dl&.at(ns("./dd"))&.elements&.size == 1 &&
117
- dl&.at(ns("./dd/p")))
113
+ def formula_where(dlist, out)
114
+ return if dlist.nil?
115
+ return super unless (dlist&.xpath(ns("./dt"))&.size == 1 &&
116
+ dlist&.at(ns("./dd"))&.elements&.size == 1 &&
117
+ dlist&.at(ns("./dd/p")))
118
118
 
119
119
  out.span **{ class: "zzMoveToFollowing" } do |s|
120
120
  s << "#{@i18n.where} "
121
- dl.at(ns("./dt")).children.each { |n| parse(n, s) }
121
+ dlist.at(ns("./dt")).children.each { |n| parse(n, s) }
122
122
  s << " "
123
123
  end
124
- parse(dl.at(ns("./dd/p")), out)
124
+ parse(dlist.at(ns("./dd/p")), out)
125
125
  end
126
126
 
127
127
  def admonition_parse(node, out)
@@ -153,9 +153,9 @@ module IsoDoc
153
153
  div << " &mdash; "
154
154
  end
155
155
 
156
- def figure_name_parse(node, div, name)
156
+ def figure_name_parse(_node, div, name)
157
157
  div.p **{ class: "FigureTitle", style: "text-align:center;" } do |p|
158
- name&.children&.each { |n| parse(n, div) }
158
+ name&.children&.each { |n| parse(n, p) }
159
159
  end
160
160
  end
161
161
 
@@ -1,3 +1,4 @@
1
+ @charset "UTF-8";
1
2
  p.Sourcecode, li.Sourcecode, div.Sourcecode, pre.Sourcecode {
2
3
  mso-style-unhide: no;
3
4
  mso-style-qformat: yes;
@@ -70,18 +71,23 @@ p.NormRef, li.NormRef, div.NormRef {
70
71
  mso-bidi-font-family: {{bodyfont}};
71
72
  mso-ansi-language: EN-GB; }
72
73
 
73
- p.FigureTitle {
74
+ p.FigureTitle, li.FigureTitle, div.FigureTitle {
75
+ mso-style-name: "Figure Title";
74
76
  mso-style-unhide: no;
75
77
  mso-style-qformat: yes;
76
78
  mso-style-parent: "";
79
+ mso-style-parent: "List Paragraph";
80
+ mso-style-link: "Figure Title Char";
77
81
  margin-top: 0cm;
78
82
  margin-right: 0cm;
79
83
  margin-bottom: 6.0pt;
80
- margin-left: 0cm;
84
+ margin-left: 36.0pt;
85
+ mso-add-space: auto;
81
86
  text-align: center;
87
+ text-indent: -30.35pt;
82
88
  line-height: 12.0pt;
83
- page-break-before: avoid;
84
89
  mso-pagination: widow-orphan;
90
+ /*mso-list:l9 level1 lfo17;*/
85
91
  tab-stops: 20.15pt;
86
92
  font-size: {{normalfontsize}};
87
93
  font-family: {{bodyfont}};
@@ -90,6 +96,246 @@ p.FigureTitle {
90
96
  mso-bidi-font-family: {{bodyfont}};
91
97
  mso-ansi-language: EN-GB; }
92
98
 
99
+ p.FigureTitleCxSpFirst, li.FigureTitleCxSpFirst, div.FigureTitleCxSpFirst {
100
+ mso-style-name: "Figure TitleCxSpFirst";
101
+ mso-style-unhide: no;
102
+ mso-style-qformat: yes;
103
+ mso-style-parent: "List Paragraph";
104
+ mso-style-link: "Figure Title Char";
105
+ mso-style-type: export-only;
106
+ margin-top: 0cm;
107
+ margin-right: 0cm;
108
+ margin-bottom: 0cm;
109
+ margin-left: 36.0pt;
110
+ mso-add-space: auto;
111
+ text-align: center;
112
+ text-indent: -30.35pt;
113
+ line-height: 12.0pt;
114
+ mso-pagination: widow-orphan;
115
+ /*mso-list:l9 level1 lfo17;*/
116
+ tab-stops: 20.15pt;
117
+ font-size: {{normalfontsize}};
118
+ font-family: {{bodyfont}};
119
+ mso-fareast-font-family: Calibri;
120
+ mso-bidi-font-family: "Times New Roman";
121
+ mso-ansi-language: EN-GB;
122
+ mso-fareast-language: EN-US;
123
+ font-weight: bold; }
124
+
125
+ p.FigureTitleCxSpMiddle, li.FigureTitleCxSpMiddle, div.FigureTitleCxSpMiddle {
126
+ mso-style-name: "Figure TitleCxSpMiddle";
127
+ mso-style-unhide: no;
128
+ mso-style-qformat: yes;
129
+ mso-style-parent: "List Paragraph";
130
+ mso-style-link: "Figure Title Char";
131
+ mso-style-type: export-only;
132
+ margin-top: 0cm;
133
+ margin-right: 0cm;
134
+ margin-bottom: 0cm;
135
+ margin-left: 36.0pt;
136
+ mso-add-space: auto;
137
+ text-align: center;
138
+ text-indent: -30.35pt;
139
+ line-height: 12.0pt;
140
+ mso-pagination: widow-orphan;
141
+ /*mso-list:l9 level1 lfo17;*/
142
+ tab-stops: 20.15pt;
143
+ font-size: {{normalfontsize}};
144
+ font-family: {{bodyfont}};
145
+ mso-fareast-font-family: Calibri;
146
+ mso-bidi-font-family: "Times New Roman";
147
+ mso-ansi-language: EN-GB;
148
+ mso-fareast-language: EN-US;
149
+ font-weight: bold; }
150
+
151
+ p.FigureTitleCxSpLast, li.FigureTitleCxSpLast, div.FigureTitleCxSpLast {
152
+ mso-style-name: "Figure TitleCxSpLast";
153
+ mso-style-unhide: no;
154
+ mso-style-qformat: yes;
155
+ mso-style-parent: "List Paragraph";
156
+ mso-style-link: "Figure Title Char";
157
+ mso-style-type: export-only;
158
+ margin-top: 0cm;
159
+ margin-right: 0cm;
160
+ margin-bottom: 6.0pt;
161
+ margin-left: 36.0pt;
162
+ mso-add-space: auto;
163
+ text-align: center;
164
+ text-indent: -30.35pt;
165
+ line-height: 12.0pt;
166
+ mso-pagination: widow-orphan;
167
+ /*mso-list:l9 level1 lfo17;*/
168
+ tab-stops: 20.15pt;
169
+ font-size: {{normalfontsize}};
170
+ font-family: {{bodyfont}};
171
+ mso-fareast-font-family: Calibri;
172
+ mso-bidi-font-family: "Times New Roman";
173
+ mso-ansi-language: EN-GB;
174
+ mso-fareast-language: EN-US;
175
+ font-weight: bold; }
176
+
177
+ span.NoteChar {
178
+ mso-style-name: "Note Char";
179
+ mso-style-unhide: no;
180
+ mso-style-locked: yes;
181
+ mso-style-link: Note;
182
+ mso-ansi-language: EN-GB; }
183
+
184
+ p.AnnexFigureTitle, li.AnnexFigureTitle, div.AnnexFigureTitle {
185
+ mso-style-name: "Annex Figure Title";
186
+ mso-style-unhide: no;
187
+ mso-style-qformat: yes;
188
+ mso-style-link: "Annex Figure Title Char";
189
+ margin-top: 0cm;
190
+ margin-right: 0cm;
191
+ margin-bottom: 6.0pt;
192
+ margin-left: 17.0pt;
193
+ text-align: center;
194
+ text-indent: -11.35pt;
195
+ line-height: 12.0pt;
196
+ mso-pagination: widow-orphan;
197
+ /* mso-list:l6 level1 lfo13; */
198
+ tab-stops: list 5.65pt left 20.15pt;
199
+ font-size: {{normalfontsize}};
200
+ font-family: {{bodyfont}};
201
+ mso-fareast-font-family: Calibri;
202
+ mso-bidi-font-family: "Times New Roman";
203
+ mso-ansi-language: EN-GB;
204
+ mso-fareast-language: EN-US;
205
+ font-weight: bold; }
206
+
207
+ p.AnnexTableTitle, li.AnnexTableTitle, div.AnnexTableTitle {
208
+ mso-style-name: "Annex Table Title";
209
+ mso-style-unhide: no;
210
+ mso-style-qformat: yes;
211
+ mso-style-parent: "Παράγραφος λίστας";
212
+ mso-style-link: "Annex Table Title Char";
213
+ margin-top: 0cm;
214
+ margin-right: 0cm;
215
+ margin-bottom: 6.0pt;
216
+ margin-left: 0cm;
217
+ mso-add-space: auto;
218
+ text-align: center;
219
+ text-indent: 0cm;
220
+ line-height: 12.0pt;
221
+ page-break-before: always;
222
+ mso-pagination: widow-orphan;
223
+ page-break-after: avoid;
224
+ /* mso-list:l4 level1 lfo15; */
225
+ tab-stops: list 0cm left 20.15pt;
226
+ font-size: {{normalfontsize}};
227
+ font-family: {{bodyfont}};
228
+ mso-fareast-font-family: Calibri;
229
+ mso-bidi-font-family: "Times New Roman";
230
+ mso-ansi-language: EN-GB;
231
+ mso-fareast-language: EN-US;
232
+ font-weight: bold;
233
+ mso-bidi-font-weight: normal; }
234
+
235
+ p.AnnexTableTitleCxSpFirst, li.AnnexTableTitleCxSpFirst, div.AnnexTableTitleCxSpFirst {
236
+ mso-style-name: "Annex Table TitleCxSpFirst";
237
+ mso-style-unhide: no;
238
+ mso-style-qformat: yes;
239
+ mso-style-parent: "List Paragraph";
240
+ mso-style-link: "Annex Table Title Char";
241
+ mso-style-type: export-only;
242
+ margin: 0cm;
243
+ mso-add-space: auto;
244
+ text-align: center;
245
+ text-indent: 0cm;
246
+ line-height: 12.0pt;
247
+ page-break-before: always;
248
+ mso-pagination: widow-orphan;
249
+ page-break-after: avoid;
250
+ /* mso-list:l4 level1 lfo15; */
251
+ tab-stops: list 0cm left 20.15pt;
252
+ font-size: {{normalfontsize}};
253
+ font-family: {{bodyfont}};
254
+ mso-fareast-font-family: Calibri;
255
+ mso-bidi-font-family: "Times New Roman";
256
+ mso-ansi-language: EN-GB;
257
+ mso-fareast-language: EN-US;
258
+ font-weight: bold;
259
+ mso-bidi-font-weight: normal; }
260
+
261
+ p.AnnexTableTitleCxSpMiddle, li.AnnexTableTitleCxSpMiddle, div.AnnexTableTitleCxSpMiddle {
262
+ mso-style-name: "Annex Table TitleCxSpMiddle";
263
+ mso-style-unhide: no;
264
+ mso-style-qformat: yes;
265
+ mso-style-parent: "List Paragraph";
266
+ mso-style-link: "Annex Table Title Char";
267
+ mso-style-type: export-only;
268
+ margin: 0cm;
269
+ mso-add-space: auto;
270
+ text-align: center;
271
+ text-indent: 0cm;
272
+ line-height: 12.0pt;
273
+ page-break-before: always;
274
+ mso-pagination: widow-orphan;
275
+ page-break-after: avoid;
276
+ /* mso-list:l4 level1 lfo15; */
277
+ tab-stops: list 0cm left 20.15pt;
278
+ font-size: {{normalfontsize}};
279
+ font-family: {{bodyfont}};
280
+ mso-fareast-font-family: Calibri;
281
+ mso-bidi-font-family: "Times New Roman";
282
+ mso-ansi-language: EN-GB;
283
+ mso-fareast-language: EN-US;
284
+ font-weight: bold;
285
+ mso-bidi-font-weight: normal; }
286
+
287
+ p.AnnexTableTitleCxSpLast, li.AnnexTableTitleCxSpLast, div.AnnexTableTitleCxSpLast {
288
+ mso-style-name: "Annex Table TitleCxSpLast";
289
+ mso-style-unhide: no;
290
+ mso-style-qformat: yes;
291
+ mso-style-parent: "List Paragraph";
292
+ mso-style-link: "Annex Table Title Char";
293
+ mso-style-type: export-only;
294
+ margin-top: 0cm;
295
+ margin-right: 0cm;
296
+ margin-bottom: 6.0pt;
297
+ margin-left: 0cm;
298
+ mso-add-space: auto;
299
+ text-align: center;
300
+ text-indent: 0cm;
301
+ line-height: 12.0pt;
302
+ page-break-before: always;
303
+ mso-pagination: widow-orphan;
304
+ page-break-after: avoid;
305
+ /* mso-list:l4 level1 lfo15; */
306
+ tab-stops: list 0cm left 20.15pt;
307
+ font-size: {{normalfontsize}};
308
+ font-family: {{bodyfont}};
309
+ mso-fareast-font-family: Calibri;
310
+ mso-bidi-font-family: "Times New Roman";
311
+ mso-ansi-language: EN-GB;
312
+ mso-fareast-language: EN-US;
313
+ font-weight: bold;
314
+ mso-bidi-font-weight: normal; }
315
+
316
+ span.Char2 {
317
+ mso-style-name: "List Paragraph Char";
318
+ mso-style-noshow: yes;
319
+ mso-style-priority: 34;
320
+ mso-style-unhide: no;
321
+ mso-style-locked: yes;
322
+ mso-style-link: "List Paragraph";
323
+ mso-ansi-font-size: 11.0pt;
324
+ mso-bidi-font-size: 11.0pt;
325
+ mso-ansi-language: EN-GB; }
326
+
327
+ span.AnnexTableTitleChar {
328
+ mso-style-name: "Annex Table Title Char";
329
+ mso-style-unhide: no;
330
+ mso-style-locked: yes;
331
+ mso-style-parent: "List Paragraph Char";
332
+ mso-style-link: "Annex Table Title";
333
+ mso-ansi-font-size: 11.0pt;
334
+ mso-bidi-font-size: 11.0pt;
335
+ mso-ansi-language: EN-GB;
336
+ font-weight: bold;
337
+ mso-bidi-font-weight: normal; }
338
+
93
339
  p.AdmonitionTitle, p.RecommendationTitle {
94
340
  mso-style-unhide: no;
95
341
  mso-style-qformat: yes;
@@ -130,18 +376,21 @@ p.SourceTitle {
130
376
  mso-bidi-font-family: {{bodyfont}};
131
377
  mso-ansi-language: EN-GB; }
132
378
 
133
- p.TableTitle {
379
+ p.Tabletitle, li.Tabletitle, div.Tabletitle {
134
380
  mso-style-unhide: no;
135
381
  mso-style-qformat: yes;
136
382
  mso-style-parent: "";
137
383
  margin-top: 0cm;
138
384
  margin-right: 0cm;
139
385
  margin-bottom: 6.0pt;
140
- margin-left: 0cm;
386
+ margin-left: 36.0pt;
141
387
  text-align: center;
388
+ text-indent: -18.0pt;
389
+ line-height: 12.0pt;
142
390
  page-break-after: avoid;
143
391
  line-height: 12.0pt;
144
392
  mso-pagination: widow-orphan;
393
+ /* mso-list:l8 level1 lfo16; */
145
394
  tab-stops: 20.15pt;
146
395
  font-size: {{normalfontsize}};
147
396
  font-weight: bold;
@@ -150,6 +399,116 @@ p.TableTitle {
150
399
  mso-bidi-font-family: {{bodyfont}};
151
400
  mso-ansi-language: EN-GB; }
152
401
 
402
+ p.TabletitleCxSpFirst, li.TabletitleCxSpFirst, div.TabletitleCxSpFirst {
403
+ mso-style-name: "Table titleCxSpFirst";
404
+ mso-style-unhide: no;
405
+ mso-style-qformat: yes;
406
+ mso-style-parent: "List Paragraph";
407
+ mso-style-link: "Table title Char";
408
+ mso-style-type: export-only;
409
+ margin-top: 0cm;
410
+ margin-right: 0cm;
411
+ margin-bottom: 0cm;
412
+ margin-left: 36.0pt;
413
+ mso-add-space: auto;
414
+ text-align: center;
415
+ text-indent: -18.0pt;
416
+ line-height: 12.0pt;
417
+ mso-pagination: widow-orphan;
418
+ mso-list: l8 level1 lfo16;
419
+ tab-stops: 20.15pt;
420
+ font-size: {{normalfontsize}};
421
+ font-family: {{bodyfont}};
422
+ mso-fareast-font-family: Calibri;
423
+ mso-bidi-font-family: "Times New Roman";
424
+ mso-ansi-language: FR-CH;
425
+ mso-fareast-language: EN-US;
426
+ font-weight: bold; }
427
+
428
+ p.TabletitleCxSpMiddle, li.TabletitleCxSpMiddle, div.TabletitleCxSpMiddle {
429
+ mso-style-name: "Table titleCxSpMiddle";
430
+ mso-style-unhide: no;
431
+ mso-style-qformat: yes;
432
+ mso-style-parent: "List Paragraph";
433
+ mso-style-link: "Table title Char";
434
+ mso-style-type: export-only;
435
+ margin-top: 0cm;
436
+ margin-right: 0cm;
437
+ margin-bottom: 0cm;
438
+ margin-left: 36.0pt;
439
+ mso-add-space: auto;
440
+ text-align: center;
441
+ text-indent: -18.0pt;
442
+ line-height: 12.0pt;
443
+ mso-pagination: widow-orphan;
444
+ mso-list: l8 level1 lfo16;
445
+ tab-stops: 20.15pt;
446
+ font-size: {{normalfontsize}};
447
+ font-family: {{bodyfont}};
448
+ mso-fareast-font-family: Calibri;
449
+ mso-bidi-font-family: "Times New Roman";
450
+ mso-ansi-language: FR-CH;
451
+ mso-fareast-language: EN-US;
452
+ font-weight: bold; }
453
+
454
+ p.TabletitleCxSpLast, li.TabletitleCxSpLast, div.TabletitleCxSpLast {
455
+ mso-style-name: "Table titleCxSpLast";
456
+ mso-style-unhide: no;
457
+ mso-style-qformat: yes;
458
+ mso-style-parent: "List Paragraph";
459
+ mso-style-link: "Table title Char";
460
+ mso-style-type: export-only;
461
+ margin-top: 0cm;
462
+ margin-right: 0cm;
463
+ margin-bottom: 6.0pt;
464
+ margin-left: 36.0pt;
465
+ mso-add-space: auto;
466
+ text-align: center;
467
+ text-indent: -18.0pt;
468
+ line-height: 12.0pt;
469
+ mso-pagination: widow-orphan;
470
+ mso-list: l8 level1 lfo16;
471
+ tab-stops: 20.15pt;
472
+ font-size: {{normalfontsize}};
473
+ font-family: {{bodyfont}};
474
+ mso-fareast-font-family: Calibri;
475
+ mso-bidi-font-family: "Times New Roman";
476
+ mso-ansi-language: FR-CH;
477
+ mso-fareast-language: EN-US;
478
+ font-weight: bold; }
479
+
480
+ span.FigureTitleChar {
481
+ mso-style-name: "Figure Title Char";
482
+ mso-style-unhide: no;
483
+ mso-style-locked: yes;
484
+ mso-style-parent: "List Paragraph Char";
485
+ mso-style-link: "Figure Title";
486
+ mso-ansi-font-size: 11.0pt;
487
+ mso-bidi-font-size: 11.0pt;
488
+ mso-ansi-language: EN-GB;
489
+ font-weight: bold; }
490
+
491
+ span.TabletitleChar {
492
+ mso-style-name: "Table title Char";
493
+ mso-style-unhide: no;
494
+ mso-style-locked: yes;
495
+ mso-style-parent: "List Paragraph Char";
496
+ mso-style-link: "Table title";
497
+ mso-ansi-font-size: 11.0pt;
498
+ mso-bidi-font-size: 11.0pt;
499
+ mso-ansi-language: FR-CH;
500
+ font-weight: bold; }
501
+
502
+ span.AnnexFigureTitleChar {
503
+ mso-style-name: "Annex Figure Title Char";
504
+ mso-style-unhide: no;
505
+ mso-style-locked: yes;
506
+ mso-style-link: "Annex Figure Title";
507
+ mso-ansi-font-size: 11.0pt;
508
+ mso-bidi-font-size: 11.0pt;
509
+ mso-ansi-language: EN-GB;
510
+ font-weight: bold; }
511
+
153
512
  p.Note, div.Note, li.Note, p.TableFootnote, div.TableFootnote, li.TableFootnote {
154
513
  mso-style-unhide: no;
155
514
  mso-style-qformat: yes;
@@ -201,6 +560,7 @@ p.ANNEX, li.ANNEX, div.ANNEX {
201
560
 
202
561
  p.BiblioTitle, li.BiblioTitle, div.BiblioTitle {
203
562
  mso-style-name: "Biblio Title";
563
+ mso-style-priority: 5;
204
564
  mso-style-noshow: yes;
205
565
  mso-style-unhide: no;
206
566
  margin-top: 0cm;
@@ -225,9 +585,10 @@ p.Definition, li.Definition, div.Definition {
225
585
  mso-style-name: Definition;
226
586
  mso-style-priority: 9;
227
587
  mso-style-unhide: no;
588
+ mso-style-link: "Definition Char";
228
589
  margin-top: 0cm;
229
590
  margin-right: 0cm;
230
- margin-bottom: 12.0pt;
591
+ margin-bottom: 6.0pt;
231
592
  margin-left: 0cm;
232
593
  text-align: justify;
233
594
  line-height: 12.0pt;
@@ -319,7 +680,6 @@ p.Terms, li.Terms, div.Terms {
319
680
  mso-style-unhide: no;
320
681
  mso-style-next: Definition;
321
682
  margin: 0cm;
322
- margin-bottom: .0001pt;
323
683
  line-height: 12.0pt;
324
684
  mso-pagination: widow-orphan;
325
685
  page-break-after: avoid;
@@ -377,7 +737,6 @@ p.TermNum, li.TermNum, div.TermNum {
377
737
  mso-style-unhide: no;
378
738
  mso-style-next: "Term\(s\)";
379
739
  margin: 0cm;
380
- margin-bottom: .0001pt;
381
740
  line-height: 12.0pt;
382
741
  mso-pagination: widow-orphan;
383
742
  page-break-after: avoid;
@@ -421,7 +780,9 @@ p.zzCopyright, li.zzCopyright, div.zzCopyright {
421
780
  mso-style-unhide: no;
422
781
  mso-style-next: Normal;
423
782
  margin-top: 0cm;
424
- margin-bottom: 12.0pt;
783
+ margin-right: 14.2pt;
784
+ margin-bottom: 6.0pt;
785
+ margin-left: 14.2pt;
425
786
  text-align: justify;
426
787
  line-height: 12.0pt;
427
788
  mso-pagination: widow-orphan;
@@ -429,7 +790,7 @@ p.zzCopyright, li.zzCopyright, div.zzCopyright {
429
790
  border: none;
430
791
  padding: 0cm;
431
792
  mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt;
432
- font-size: 10.0pt;
793
+ font-size: 11.0pt;
433
794
  font-family: {{bodyfont}};
434
795
  mso-fareast-font-family: "SimSun",serif;
435
796
  mso-bidi-font-family: {{bodyfont}};
@@ -441,7 +802,9 @@ p.zzCopyright1 {
441
802
  mso-style-unhide: no;
442
803
  mso-style-next: Normal;
443
804
  margin-top: 0cm;
444
- margin-bottom: 12.0pt;
805
+ margin-right: 14.2pt;
806
+ margin-bottom: 6.0pt;
807
+ margin-left: 14.2pt;
445
808
  text-align: justify;
446
809
  line-height: 12.0pt;
447
810
  mso-pagination: widow-orphan;
@@ -449,7 +812,7 @@ p.zzCopyright1 {
449
812
  border: none;
450
813
  padding: 0cm;
451
814
  mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt;
452
- font-size: 10.0pt;
815
+ font-size: 11.0pt;
453
816
  font-family: {{bodyfont}};
454
817
  mso-fareast-font-family: "SimSun",serif;
455
818
  mso-bidi-font-family: {{bodyfont}};
@@ -598,7 +961,6 @@ p.Code, li.Code, div.Code {
598
961
  mso-style-unhide: no;
599
962
  mso-style-qformat: yes;
600
963
  margin: 0cm;
601
- margin-bottom: .0001pt;
602
964
  line-height: 10.0pt;
603
965
  mso-pagination: widow-orphan;
604
966
  tab-stops: 20.15pt;
@@ -615,7 +977,7 @@ p.Formula, li.Formula, div.Formula {
615
977
  mso-style-unhide: no;
616
978
  margin-top: 0cm;
617
979
  margin-right: 0cm;
618
- margin-bottom: {{normalfontsize}};
980
+ margin-bottom: 11.0pt;
619
981
  margin-left: 20.15pt;
620
982
  line-height: 12.0pt;
621
983
  mso-pagination: widow-orphan;
@@ -626,6 +988,73 @@ p.Formula, li.Formula, div.Formula {
626
988
  mso-bidi-font-family: {{bodyfont}};
627
989
  mso-ansi-language: EN-GB; }
628
990
 
991
+ p.ForewordText, li.ForewordText, div.ForewordText {
992
+ mso-style-name: "Foreword Text";
993
+ mso-style-unhide: no;
994
+ mso-style-link: "Foreword Text Char";
995
+ margin-top: 0cm;
996
+ margin-right: 0cm;
997
+ margin-bottom: 6.0pt;
998
+ margin-left: 0cm;
999
+ text-align: justify;
1000
+ line-height: 12.0pt;
1001
+ mso-pagination: widow-orphan;
1002
+ font-size: {{normalfontsize}};
1003
+ font-family: {{bodyfont}};
1004
+ mso-fareast-font-family: Calibri;
1005
+ mso-bidi-font-family: "Times New Roman";
1006
+ mso-fareast-language: EN-US; }
1007
+
1008
+ span.ForewordTextChar {
1009
+ mso-style-name: "Foreword Text Char";
1010
+ mso-style-unhide: no;
1011
+ mso-style-locked: yes;
1012
+ mso-style-parent: "";
1013
+ mso-style-link: "Foreword Text";
1014
+ mso-ansi-font-size: 11.0pt;
1015
+ mso-bidi-font-size: 11.0pt; }
1016
+
1017
+ p.Source, li.Source, div.Source {
1018
+ mso-style-name: Source;
1019
+ mso-style-unhide: no;
1020
+ mso-style-qformat: yes;
1021
+ mso-style-parent: Definition;
1022
+ mso-style-link: "Source Char";
1023
+ margin-top: 0cm;
1024
+ margin-right: 0cm;
1025
+ margin-bottom: 6.0pt;
1026
+ margin-left: 0cm;
1027
+ text-align: justify;
1028
+ line-height: 12.0pt;
1029
+ mso-pagination: widow-orphan;
1030
+ tab-stops: 20.15pt;
1031
+ font-size: {{normalfontsize}};
1032
+ font-family: {{bodyfont}};
1033
+ mso-fareast-font-family: Calibri;
1034
+ mso-bidi-font-family: "Times New Roman";
1035
+ mso-ansi-language: EN-GB;
1036
+ mso-fareast-language: EN-US; }
1037
+
1038
+ span.DefinitionChar {
1039
+ mso-style-name: "Definition Char";
1040
+ mso-style-priority: 9;
1041
+ mso-style-unhide: no;
1042
+ mso-style-locked: yes;
1043
+ mso-style-link: Definition;
1044
+ mso-ansi-font-size: 11.0pt;
1045
+ mso-bidi-font-size: 11.0pt;
1046
+ mso-ansi-language: EN-GB; }
1047
+
1048
+ span.SourceChar {
1049
+ mso-style-name: "Source Char";
1050
+ mso-style-unhide: no;
1051
+ mso-style-locked: yes;
1052
+ mso-style-parent: "Definition Char";
1053
+ mso-style-link: Source;
1054
+ mso-ansi-font-size: 11.0pt;
1055
+ mso-bidi-font-size: 11.0pt;
1056
+ mso-ansi-language: EN-GB; }
1057
+
629
1058
  table.dl {
630
1059
  margin-top: 0cm;
631
1060
  margin-right: 0cm;
@@ -838,22 +1267,48 @@ div.example {
838
1267
  text-indent:-70.9pt;
839
1268
  }
840
1269
  */
841
- p.example, li.example, div.example, td.example {
842
- mso-pagination: none;
1270
+ p.Example, li.Example, div.Example, td.Example {
843
1271
  tab-stops: 70.9pt;
844
1272
  font-size: {{smallerfontsize}};
845
1273
  font-family: {{bodyfont}}; }
846
1274
 
847
- div.example, td.example {
1275
+ div.Example, td.Example {
848
1276
  margin: 0in;
849
- margin-bottom: 12.0pt; }
1277
+ margin-bottom: 6.0pt; }
850
1278
 
851
- td.example p.MsoListParagraph {
1279
+ td.Example p.MsoListParagraph {
852
1280
  font-size: {{smallerfontsize}}; }
853
1281
 
854
- div.example p.MsoListParagraph {
1282
+ div.Example p.MsoListParagraph {
855
1283
  font-size: {{smallerfontsize}}; }
856
1284
 
1285
+ p.Example, li.Example, div.Example {
1286
+ mso-style-name: Example;
1287
+ mso-style-unhide: no;
1288
+ mso-style-qformat: yes;
1289
+ mso-style-link: "Example Char";
1290
+ margin-top: 0cm;
1291
+ margin-right: 0cm;
1292
+ margin-bottom: 6.0pt;
1293
+ margin-left: 0cm;
1294
+ text-align: justify;
1295
+ line-height: 12.0pt;
1296
+ mso-pagination: widow-orphan;
1297
+ /* tab-stops:20.15pt; */
1298
+ font-size: {{smallerfontsize}};
1299
+ font-family: {{bodyfont}};
1300
+ mso-fareast-font-family: Calibri;
1301
+ mso-bidi-font-family: "Times New Roman";
1302
+ mso-ansi-language: EN-GB;
1303
+ mso-fareast-language: EN-US; }
1304
+
1305
+ span.ExampleChar {
1306
+ mso-style-name: "Example Char";
1307
+ mso-style-unhide: no;
1308
+ mso-style-locked: yes;
1309
+ mso-style-link: Example;
1310
+ mso-ansi-language: EN-GB; }
1311
+
857
1312
  div.Note p.MsoListParagraph {
858
1313
  font-size: {{smallerfontsize}};
859
1314
  margin-left: 1.0cm; }