metanorma-iso 1.6.1 → 1.7.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 +11 -41
- data/.gitignore +2 -0
- data/.rubocop.yml +6 -2
- data/lib/asciidoctor/iso/base.rb +13 -13
- data/lib/asciidoctor/iso/basicdoc.rng +5 -3
- data/lib/asciidoctor/iso/biblio.rng +4 -6
- data/lib/asciidoctor/iso/cleanup.rb +1 -1
- data/lib/asciidoctor/iso/front.rb +6 -6
- data/lib/asciidoctor/iso/front_id.rb +30 -25
- data/lib/asciidoctor/iso/isodoc.rng +108 -2
- data/lib/asciidoctor/iso/isostandard-amd.rng +3 -0
- data/lib/asciidoctor/iso/isostandard.rng +17 -97
- data/lib/asciidoctor/iso/validate.rb +68 -1
- data/lib/asciidoctor/iso/validate_title.rb +21 -13
- data/lib/isodoc/iso/base_convert.rb +11 -0
- data/lib/isodoc/iso/html/header.html +12 -12
- data/lib/isodoc/iso/html/html_iso_intro.html +1 -1
- data/lib/isodoc/iso/html/html_iso_titlepage.html +1 -1
- data/lib/isodoc/iso/html/word_iso_intro.html +1 -1
- data/lib/isodoc/iso/html/word_iso_titlepage.html +1 -1
- data/lib/isodoc/iso/html_convert.rb +2 -2
- data/lib/isodoc/iso/i18n-en.yaml +6 -0
- data/lib/isodoc/iso/i18n-fr.yaml +4 -0
- data/lib/isodoc/iso/i18n-zh-Hans.yaml +4 -0
- data/lib/isodoc/iso/index.rb +140 -0
- data/lib/isodoc/iso/iso.amendment.xsl +1009 -321
- data/lib/isodoc/iso/iso.international-standard.xsl +1009 -321
- data/lib/isodoc/iso/presentation_xml_convert.rb +1 -4
- data/lib/isodoc/iso/word_convert.rb +2 -2
- data/lib/isodoc/iso/xref.rb +5 -0
- data/lib/metanorma/iso/version.rb +1 -1
- data/metanorma-iso.gemspec +4 -4
- data/spec/asciidoctor/amd_spec.rb +696 -0
- data/spec/asciidoctor/base_spec.rb +704 -0
- data/spec/asciidoctor/blocks_spec.rb +527 -0
- data/spec/asciidoctor/cleanup_spec.rb +1134 -0
- data/spec/asciidoctor/inline_spec.rb +195 -0
- data/spec/asciidoctor/lists_spec.rb +197 -0
- data/spec/asciidoctor/refs_spec.rb +375 -0
- data/spec/asciidoctor/section_spec.rb +393 -0
- data/spec/asciidoctor/table_spec.rb +329 -0
- data/spec/asciidoctor/validate_spec.rb +1572 -0
- data/spec/isodoc/amd_spec.rb +967 -946
- data/spec/isodoc/blocks_spec.rb +530 -507
- data/spec/isodoc/i18n_spec.rb +953 -911
- data/spec/isodoc/inline_spec.rb +355 -293
- data/spec/isodoc/iso_spec.rb +340 -316
- data/spec/isodoc/metadata_spec.rb +392 -382
- data/spec/isodoc/postproc_spec.rb +834 -656
- data/spec/isodoc/ref_spec.rb +374 -331
- data/spec/isodoc/section_spec.rb +821 -519
- data/spec/isodoc/table_spec.rb +472 -411
- data/spec/isodoc/terms_spec.rb +209 -185
- data/spec/isodoc/xref_spec.rb +1370 -1236
- data/spec/metanorma/processor_spec.rb +28 -26
- data/spec/spec_helper.rb +186 -189
- metadata +26 -27
- data/.rubocop.ribose.yml +0 -66
- data/spec/asciidoctor-iso/amd_spec.rb +0 -694
- data/spec/asciidoctor-iso/base_spec.rb +0 -713
- data/spec/asciidoctor-iso/blocks_spec.rb +0 -482
- data/spec/asciidoctor-iso/cleanup_spec.rb +0 -1025
- data/spec/asciidoctor-iso/inline_spec.rb +0 -170
- data/spec/asciidoctor-iso/lists_spec.rb +0 -190
- data/spec/asciidoctor-iso/refs_spec.rb +0 -317
- data/spec/asciidoctor-iso/section_spec.rb +0 -362
- data/spec/asciidoctor-iso/table_spec.rb +0 -313
- data/spec/asciidoctor-iso/validate_spec.rb +0 -1550
- data/spec/assets/xref_error.adoc +0 -7
@@ -79,19 +79,6 @@
|
|
79
79
|
</choice>
|
80
80
|
</element>
|
81
81
|
</define>
|
82
|
-
<define name="ul">
|
83
|
-
<element name="ul">
|
84
|
-
<attribute name="id">
|
85
|
-
<data type="ID"/>
|
86
|
-
</attribute>
|
87
|
-
<oneOrMore>
|
88
|
-
<ref name="ul_li"/>
|
89
|
-
</oneOrMore>
|
90
|
-
<zeroOrMore>
|
91
|
-
<ref name="note"/>
|
92
|
-
</zeroOrMore>
|
93
|
-
</element>
|
94
|
-
</define>
|
95
82
|
<define name="sections">
|
96
83
|
<element name="sections">
|
97
84
|
<zeroOrMore>
|
@@ -192,17 +179,6 @@
|
|
192
179
|
</zeroOrMore>
|
193
180
|
</element>
|
194
181
|
</define>
|
195
|
-
<define name="definition">
|
196
|
-
<element name="definition">
|
197
|
-
<oneOrMore>
|
198
|
-
<choice>
|
199
|
-
<ref name="paragraph"/>
|
200
|
-
<ref name="figure"/>
|
201
|
-
<ref name="formula"/>
|
202
|
-
</choice>
|
203
|
-
</oneOrMore>
|
204
|
-
</element>
|
205
|
-
</define>
|
206
182
|
<define name="annex">
|
207
183
|
<element name="annex">
|
208
184
|
<optional>
|
@@ -333,6 +309,11 @@
|
|
333
309
|
<optional>
|
334
310
|
<attribute name="script"/>
|
335
311
|
</optional>
|
312
|
+
<optional>
|
313
|
+
<attribute name="inline-header">
|
314
|
+
<data type="boolean"/>
|
315
|
+
</attribute>
|
316
|
+
</optional>
|
336
317
|
<optional>
|
337
318
|
<attribute name="obligation">
|
338
319
|
<choice>
|
@@ -341,6 +322,12 @@
|
|
341
322
|
</choice>
|
342
323
|
</attribute>
|
343
324
|
</optional>
|
325
|
+
<optional>
|
326
|
+
<attribute name="number"/>
|
327
|
+
</optional>
|
328
|
+
<optional>
|
329
|
+
<attribute name="type"/>
|
330
|
+
</optional>
|
344
331
|
<optional>
|
345
332
|
<ref name="section-title"/>
|
346
333
|
</optional>
|
@@ -358,57 +345,6 @@
|
|
358
345
|
</oneOrMore>
|
359
346
|
</choice>
|
360
347
|
</define>
|
361
|
-
<define name="table">
|
362
|
-
<element name="table">
|
363
|
-
<attribute name="id">
|
364
|
-
<data type="ID"/>
|
365
|
-
</attribute>
|
366
|
-
<optional>
|
367
|
-
<attribute name="width"/>
|
368
|
-
</optional>
|
369
|
-
<optional>
|
370
|
-
<attribute name="unnumbered">
|
371
|
-
<data type="boolean"/>
|
372
|
-
</attribute>
|
373
|
-
</optional>
|
374
|
-
<optional>
|
375
|
-
<attribute name="number"/>
|
376
|
-
</optional>
|
377
|
-
<optional>
|
378
|
-
<attribute name="subsequence"/>
|
379
|
-
</optional>
|
380
|
-
<optional>
|
381
|
-
<attribute name="alt"/>
|
382
|
-
</optional>
|
383
|
-
<optional>
|
384
|
-
<attribute name="summary"/>
|
385
|
-
</optional>
|
386
|
-
<optional>
|
387
|
-
<attribute name="uri">
|
388
|
-
<data type="anyURI"/>
|
389
|
-
</attribute>
|
390
|
-
</optional>
|
391
|
-
<optional>
|
392
|
-
<ref name="colgroup"/>
|
393
|
-
</optional>
|
394
|
-
<optional>
|
395
|
-
<ref name="tname"/>
|
396
|
-
</optional>
|
397
|
-
<optional>
|
398
|
-
<ref name="thead"/>
|
399
|
-
</optional>
|
400
|
-
<ref name="tbody"/>
|
401
|
-
<optional>
|
402
|
-
<ref name="tfoot"/>
|
403
|
-
</optional>
|
404
|
-
<zeroOrMore>
|
405
|
-
<ref name="table-note"/>
|
406
|
-
</zeroOrMore>
|
407
|
-
<optional>
|
408
|
-
<ref name="dl"/>
|
409
|
-
</optional>
|
410
|
-
</element>
|
411
|
-
</define>
|
412
348
|
</include>
|
413
349
|
<!-- end overrides -->
|
414
350
|
<!--
|
@@ -428,6 +364,9 @@
|
|
428
364
|
<zeroOrMore>
|
429
365
|
<ref name="termdocsource"/>
|
430
366
|
</zeroOrMore>
|
367
|
+
<optional>
|
368
|
+
<ref name="misccontainer"/>
|
369
|
+
</optional>
|
431
370
|
<optional>
|
432
371
|
<ref name="boilerplate"/>
|
433
372
|
</optional>
|
@@ -439,6 +378,9 @@
|
|
439
378
|
<ref name="annex"/>
|
440
379
|
</zeroOrMore>
|
441
380
|
<ref name="bibliography"/>
|
381
|
+
<zeroOrMore>
|
382
|
+
<ref name="indexsect"/>
|
383
|
+
</zeroOrMore>
|
442
384
|
</element>
|
443
385
|
</define>
|
444
386
|
<define name="horizontal">
|
@@ -527,28 +469,6 @@
|
|
527
469
|
<ref name="Clause-Section"/>
|
528
470
|
</element>
|
529
471
|
</define>
|
530
|
-
<define name="ul_li">
|
531
|
-
<element name="li">
|
532
|
-
<optional>
|
533
|
-
<attribute name="id">
|
534
|
-
<data type="ID"/>
|
535
|
-
</attribute>
|
536
|
-
</optional>
|
537
|
-
<optional>
|
538
|
-
<attribute name="uncheckedcheckbox">
|
539
|
-
<data type="boolean"/>
|
540
|
-
</attribute>
|
541
|
-
</optional>
|
542
|
-
<optional>
|
543
|
-
<attribute name="checkedcheckbox">
|
544
|
-
<data type="boolean"/>
|
545
|
-
</attribute>
|
546
|
-
</optional>
|
547
|
-
<oneOrMore>
|
548
|
-
<ref name="BasicBlock"/>
|
549
|
-
</oneOrMore>
|
550
|
-
</element>
|
551
|
-
</define>
|
552
472
|
<define name="stagename">
|
553
473
|
<element name="stagename">
|
554
474
|
<text/>
|
@@ -147,7 +147,7 @@ module Asciidoctor
|
|
147
147
|
end
|
148
148
|
|
149
149
|
# DRG directives 3.7; but anticipated by standoc
|
150
|
-
def
|
150
|
+
def subfigure_validate(xmldoc)
|
151
151
|
xmldoc.xpath("//figure//figure").each do |f|
|
152
152
|
{ footnote: "fn", note: "note", key: "dl" }.each do |k, v|
|
153
153
|
f.xpath(".//#{v}").each do |n|
|
@@ -157,6 +157,73 @@ module Asciidoctor
|
|
157
157
|
end
|
158
158
|
end
|
159
159
|
|
160
|
+
def image_name_prefix(xmldoc)
|
161
|
+
std = xmldoc&.at("//bibdata/ext/structuredidentifier/project-number") or return
|
162
|
+
num = xmldoc&.at("//bibdata/docnumber")&.text or return
|
163
|
+
ed = xmldoc&.at("//bibdata/edition")&.text || "1"
|
164
|
+
prefix = num
|
165
|
+
part = std["part"] and prefix += "-#{std['part']}"
|
166
|
+
prefix += "_ed#{ed}"
|
167
|
+
amd = std["amendment"] and prefix += "amd#{amd}"
|
168
|
+
prefix
|
169
|
+
end
|
170
|
+
|
171
|
+
def image_name_suffix(xmldoc)
|
172
|
+
case xmldoc&.at("//bibdata/language")&.text
|
173
|
+
when "fr" then "_f"
|
174
|
+
when "de" then "_d"
|
175
|
+
when "ru" then "_r"
|
176
|
+
when "es" then "_s"
|
177
|
+
when "ar" then "_a"
|
178
|
+
when "en" then "_e"
|
179
|
+
else
|
180
|
+
"_e"
|
181
|
+
end
|
182
|
+
end
|
183
|
+
|
184
|
+
def disjunct_error(i, cond1, cond2, msg1, msg2)
|
185
|
+
cond1 && !cond2 and @log.add("Style", i, "image name #{i['src']} #{msg1}")
|
186
|
+
!cond1 && cond2 and @log.add("Style", i, "image name #{i['src']} #{msg2}")
|
187
|
+
end
|
188
|
+
|
189
|
+
def image_name_validate1(i, prefix)
|
190
|
+
m = %r[(SL)?#{prefix}fig(?<tab>Tab)?(?<annex>[A-Z])?(Text)?(?<num>\d+)
|
191
|
+
(?<subfig>[a-z])?(?<key>_key\d+)?(?<lang>_[a-z])?$]x.match(File.basename(i["src"], ".*"))
|
192
|
+
if m.nil?
|
193
|
+
@log.add("Style", i, "image name #{i['src']} does not match DRG requirements")
|
194
|
+
return
|
195
|
+
end
|
196
|
+
warn i['src']
|
197
|
+
disjunct_error(i, i.at("./ancestor::table"), !m[:tab].nil?,
|
198
|
+
"is under a table but is not so labelled", "is labelled as under a table but is not")
|
199
|
+
disjunct_error(i, i.at("./ancestor::annex"), !m[:annex].nil?,
|
200
|
+
"is under an annex but is not so labelled", "is labelled as under an annex but is not")
|
201
|
+
disjunct_error(i, i.xpath("./ancestor::figure").size > 1, !m[:subfig].nil?,
|
202
|
+
"does not have a subfigure letter but is a subfigure",
|
203
|
+
"has a subfigure letter but is not a subfigure")
|
204
|
+
lang = image_name_suffix(i.document.root)
|
205
|
+
(m[:lang] || "_e") == lang or @log.add("Style", i, "image name #{i['src']} expected to have suffix #{lang}")
|
206
|
+
end
|
207
|
+
|
208
|
+
# DRG directives 3.2
|
209
|
+
def image_name_validate(xmldoc)
|
210
|
+
prefix = image_name_prefix(xmldoc) or return
|
211
|
+
xmldoc.xpath("//image").each do |i|
|
212
|
+
next if i["src"].start_with?("data:")
|
213
|
+
if /^ISO_\d+_/.match(File.basename(i["src"]))
|
214
|
+
elsif /^(SL)?#{prefix}fig/.match(File.basename(i["src"]))
|
215
|
+
image_name_validate1(i, prefix)
|
216
|
+
else
|
217
|
+
@log.add("Style", i, "image name #{i['src']} does not match DRG requirements: expect #{prefix}fig")
|
218
|
+
end
|
219
|
+
end
|
220
|
+
end
|
221
|
+
|
222
|
+
def figure_validate(xmldoc)
|
223
|
+
image_name_validate(xmldoc)
|
224
|
+
subfigure_validate(xmldoc)
|
225
|
+
end
|
226
|
+
|
160
227
|
def bibdata_validate(doc)
|
161
228
|
doctype_validate(doc)
|
162
229
|
script_validate(doc)
|
@@ -3,9 +3,13 @@ require "metanorma-standoc"
|
|
3
3
|
module Asciidoctor
|
4
4
|
module ISO
|
5
5
|
class Converter < Standoc::Converter
|
6
|
+
def title_lang_part(doc, part, lang)
|
7
|
+
doc.at("//bibdata/title[@type='title-#{part}' and @language='#{lang}']")
|
8
|
+
end
|
9
|
+
|
6
10
|
def title_intro_validate(root)
|
7
|
-
title_intro_en = root
|
8
|
-
title_intro_fr = root
|
11
|
+
title_intro_en = title_lang_part(root, "intro", "en")
|
12
|
+
title_intro_fr = title_lang_part(root, "intro", "fr")
|
9
13
|
if title_intro_en.nil? && !title_intro_fr.nil?
|
10
14
|
@log.add("Style", title_intro_fr, "No English Title Intro!")
|
11
15
|
end
|
@@ -15,8 +19,8 @@ module Asciidoctor
|
|
15
19
|
end
|
16
20
|
|
17
21
|
def title_main_validate(root)
|
18
|
-
title_main_en = root
|
19
|
-
title_main_fr = root
|
22
|
+
title_main_en = title_lang_part(root, "main", "en")
|
23
|
+
title_main_fr = title_lang_part(root, "main", "fr")
|
20
24
|
if title_main_en.nil? && !title_main_fr.nil?
|
21
25
|
@log.add("Style", title_main_fr, "No English Title!")
|
22
26
|
end
|
@@ -26,8 +30,8 @@ module Asciidoctor
|
|
26
30
|
end
|
27
31
|
|
28
32
|
def title_part_validate(root)
|
29
|
-
title_part_en = root
|
30
|
-
title_part_fr = root
|
33
|
+
title_part_en = title_lang_part(root, "part", "en")
|
34
|
+
title_part_fr = title_lang_part(root, "part", "fr")
|
31
35
|
(title_part_en.nil? && !title_part_fr.nil?) &&
|
32
36
|
@log.add("Style", title_part_fr, "No English Title Part!")
|
33
37
|
(!title_part_en.nil? && title_part_fr.nil?) &&
|
@@ -41,20 +45,22 @@ module Asciidoctor
|
|
41
45
|
iec = root.at("//bibdata/contributor[role/@type = 'publisher']/"\
|
42
46
|
"organization[abbreviation = 'IEC' or "\
|
43
47
|
"name = 'International Electrotechnical Commission']")
|
44
|
-
|
48
|
+
subpart && !iec and
|
49
|
+
@log.add("Style", docid, "Subpart defined on non-IEC document!")
|
45
50
|
end
|
46
51
|
|
47
52
|
# ISO/IEC DIR 2, 11.5.2
|
48
53
|
def title_names_type_validate(root)
|
49
54
|
doctypes = /International\sStandard | Technical\sSpecification |
|
50
55
|
Publicly\sAvailable\sSpecification | Technical\sReport | Guide /xi
|
51
|
-
title_main_en = root
|
56
|
+
title_main_en = title_lang_part(root, "main", "en")
|
52
57
|
if !title_main_en.nil? && doctypes.match(title_main_en.text)
|
53
58
|
@log.add("Style", title_main_en, "Main Title may name document type")
|
54
59
|
end
|
55
|
-
title_intro_en = root
|
60
|
+
title_intro_en = title_lang_part(root, "intro", "en")
|
56
61
|
if !title_intro_en.nil? && doctypes.match(title_intro_en.text)
|
57
|
-
@log.add("Style", title_intro_en,
|
62
|
+
@log.add("Style", title_intro_en,
|
63
|
+
"Title Intro may name document type")
|
58
64
|
end
|
59
65
|
end
|
60
66
|
|
@@ -64,8 +70,9 @@ module Asciidoctor
|
|
64
70
|
title = s&.at("./title")&.text || s.name
|
65
71
|
s.xpath("./clause | ./terms | ./references").each do |ss|
|
66
72
|
subtitle = ss.at("./title")
|
67
|
-
!subtitle.nil? && !subtitle&.text&.empty?
|
68
|
-
@log.add("Style", ss,
|
73
|
+
!subtitle.nil? && !subtitle&.text&.empty? or
|
74
|
+
@log.add("Style", ss,
|
75
|
+
"#{title}: each first-level subclause must have a title")
|
69
76
|
end
|
70
77
|
end
|
71
78
|
end
|
@@ -82,7 +89,8 @@ module Asciidoctor
|
|
82
89
|
withtitle = withtitle || (subtitle && !subtitle.text.empty?)
|
83
90
|
end
|
84
91
|
notitle && withtitle &&
|
85
|
-
@log.add("Style", nil,
|
92
|
+
@log.add("Style", nil,
|
93
|
+
"#{label}: all subclauses must have a title, or none")
|
86
94
|
end
|
87
95
|
|
88
96
|
def title_validate(root)
|
@@ -152,6 +152,17 @@ module IsoDoc
|
|
152
152
|
name and name.children.each { |n| parse(n, div) }
|
153
153
|
end
|
154
154
|
end
|
155
|
+
|
156
|
+
def middle(isoxml, out)
|
157
|
+
super
|
158
|
+
indexsect isoxml, out
|
159
|
+
end
|
160
|
+
|
161
|
+
def indexsect(isoxml, out)
|
162
|
+
isoxml.xpath(ns("//indexsect")).each do |i|
|
163
|
+
clause_parse(i, out)
|
164
|
+
end
|
165
|
+
end
|
155
166
|
end
|
156
167
|
end
|
157
168
|
end
|
@@ -74,7 +74,7 @@ mso-line-height-rule:exactly'><span lang=EN-GB>{{ docnumber_reference }}{{ draft
|
|
74
74
|
|
75
75
|
<p class=MsoHeader style='margin-bottom:18.0pt'><span lang=EN-GB
|
76
76
|
style='font-size:10.0pt;mso-bidi-font-size:11.0pt;font-weight:normal'>©
|
77
|
-
{{ agency }} {{ docyear }} – {{ all_rights_reserved }}</span><span lang=EN-GB
|
77
|
+
{{ agency }} {{ docyear }} – {{ labels["all_rights_reserved"] }}</span><span lang=EN-GB
|
78
78
|
style='font-weight:normal'><o:p></o:p></span></p>
|
79
79
|
|
80
80
|
</div>
|
@@ -93,7 +93,7 @@ style='mso-bidi-font-weight:normal'><span lang=EN-GB style='font-size:10.0pt;
|
|
93
93
|
mso-bidi-font-size:11.0pt'><span style='mso-element:field-end'></span></span></b><![endif]--><span
|
94
94
|
lang=EN-GB style='font-size:10.0pt;mso-bidi-font-size:11.0pt'><span
|
95
95
|
style='mso-tab-count:1'> </span>©
|
96
|
-
{{ agency }} {{ docyear }} – {{ all_rights_reserved }}<o:p></o:p></span></p>
|
96
|
+
{{ agency }} {{ docyear }} – {{ labels["all_rights_reserved"] }}<o:p></o:p></span></p>
|
97
97
|
|
98
98
|
</div>
|
99
99
|
|
@@ -129,7 +129,7 @@ lang=EN-GB style='font-size:10.0pt;mso-bidi-font-size:11.0pt'><span
|
|
129
129
|
style='mso-element:field-end'></span></span><![endif]--><span lang=EN-GB
|
130
130
|
style='font-size:10.0pt;mso-bidi-font-size:11.0pt'><span style='mso-tab-count:
|
131
131
|
1'> </span>©
|
132
|
-
{{ agency }} {{ docyear }} – {{ all_rights_reserved }}<o:p></o:p></span></p>
|
132
|
+
{{ agency }} {{ docyear }} – {{ labels["all_rights_reserved"] }}<o:p></o:p></span></p>
|
133
133
|
</div>
|
134
134
|
|
135
135
|
<div style='mso-element:footer' id=ef2l>
|
@@ -144,12 +144,12 @@ lang=EN-GB style='font-size:10.0pt;mso-bidi-font-size:11.0pt'><span
|
|
144
144
|
style='mso-element:field-end'></span></span><![endif]--><span lang=EN-GB
|
145
145
|
style='font-size:10.0pt;mso-bidi-font-size:11.0pt'><span style='mso-tab-count:
|
146
146
|
1'> </span>©
|
147
|
-
{{ agency }} {{ docyear }} – {{ all_rights_reserved }}<o:p></o:p></span></p>
|
147
|
+
{{ agency }} {{ docyear }} – {{ labels["all_rights_reserved"] }}<o:p></o:p></span></p>
|
148
148
|
</div>
|
149
149
|
|
150
150
|
<div style='mso-element:footer' id=f2>
|
151
151
|
<p class=MsoFooter style='line-height:12.0pt'><span lang=EN-GB
|
152
|
-
style='font-size:10.0pt;mso-bidi-font-size:11.0pt'>© {{ agency }} {{ docyear }} – {{ all_rights_reserved }}<span style='mso-tab-count:1'> </span></span><!--[if supportFields]><span
|
152
|
+
style='font-size:10.0pt;mso-bidi-font-size:11.0pt'>© {{ agency }} {{ docyear }} – {{ labels["all_rights_reserved"] }}<span style='mso-tab-count:1'> </span></span><!--[if supportFields]><span
|
153
153
|
lang=EN-GB style='font-size:10.0pt;mso-bidi-font-size:11.0pt'><span
|
154
154
|
style='mso-element:field-begin'></span> PAGE<span style='mso-spacerun:yes'>
|
155
155
|
</span>\* MERGEFORMAT <span style='mso-element:field-separator'></span></span><![endif]--><span
|
@@ -162,7 +162,7 @@ style='font-size:10.0pt;mso-bidi-font-size:11.0pt'><o:p></o:p></span></p>
|
|
162
162
|
|
163
163
|
<div style='mso-element:footer' id=f2l>
|
164
164
|
<p class=MsoFooterLandscape style='line-height:12.0pt'><span lang=EN-GB
|
165
|
-
style='font-size:10.0pt;mso-bidi-font-size:11.0pt'>© {{ agency }} {{ docyear }} – {{ all_rights_reserved }}<span style='mso-tab-count:1'> </span></span><!--[if supportFields]><span
|
165
|
+
style='font-size:10.0pt;mso-bidi-font-size:11.0pt'>© {{ agency }} {{ docyear }} – {{ labels["all_rights_reserved"] }}<span style='mso-tab-count:1'> </span></span><!--[if supportFields]><span
|
166
166
|
lang=EN-GB style='font-size:10.0pt;mso-bidi-font-size:11.0pt'><span
|
167
167
|
style='mso-element:field-begin'></span> PAGE<span style='mso-spacerun:yes'>
|
168
168
|
</span>\* MERGEFORMAT <span style='mso-element:field-separator'></span></span><![endif]--><span
|
@@ -186,7 +186,7 @@ style='mso-bidi-font-weight:normal'><span lang=EN-GB style='font-size:10.0pt;
|
|
186
186
|
mso-bidi-font-size:11.0pt'><span style='mso-element:field-end'></span></span></b><![endif]--><span
|
187
187
|
lang=EN-GB style='font-size:10.0pt;mso-bidi-font-size:11.0pt'><span
|
188
188
|
style='mso-tab-count:1'> </span>©
|
189
|
-
{{ agency }} {{ docyear }} – {{ all_rights_reserved }}<o:p></o:p></span></p>
|
189
|
+
{{ agency }} {{ docyear }} – {{ labels["all_rights_reserved"] }}<o:p></o:p></span></p>
|
190
190
|
</div>
|
191
191
|
|
192
192
|
<div style='mso-element:footer' id=ef3l>
|
@@ -202,12 +202,12 @@ style='mso-bidi-font-weight:normal'><span lang=EN-GB style='font-size:10.0pt;
|
|
202
202
|
mso-bidi-font-size:11.0pt'><span style='mso-element:field-end'></span></span></b><![endif]--><span
|
203
203
|
lang=EN-GB style='font-size:10.0pt;mso-bidi-font-size:11.0pt'><span
|
204
204
|
style='mso-tab-count:1'> </span>©
|
205
|
-
{{ agency }} {{ docyear }} – {{ all_rights_reserved }}<o:p></o:p></span></p>
|
205
|
+
{{ agency }} {{ docyear }} – {{ labels["all_rights_reserved"] }}<o:p></o:p></span></p>
|
206
206
|
</div>
|
207
207
|
|
208
208
|
<div style='mso-element:footer' id=f3>
|
209
209
|
<p class=MsoFooter style='line-height:12.0pt'><span lang=EN-GB
|
210
|
-
style='font-size:10.0pt;mso-bidi-font-size:11.0pt'>© {{ agency }} {{ docyear }} – {{ all_rights_reserved }}<span style='mso-tab-count:1'> </span></span><!--[if supportFields]><b
|
210
|
+
style='font-size:10.0pt;mso-bidi-font-size:11.0pt'>© {{ agency }} {{ docyear }} – {{ labels["all_rights_reserved"] }}<span style='mso-tab-count:1'> </span></span><!--[if supportFields]><b
|
211
211
|
style='mso-bidi-font-weight:normal'><span lang=EN-GB style='font-size:10.0pt;
|
212
212
|
mso-bidi-font-size:11.0pt'><span style='mso-element:field-begin'></span>
|
213
213
|
PAGE<span style='mso-spacerun:yes'> </span>\* MERGEFORMAT <span
|
@@ -221,7 +221,7 @@ lang=EN-GB style='font-size:10.0pt;mso-bidi-font-size:11.0pt'><o:p></o:p></span>
|
|
221
221
|
|
222
222
|
<div style='mso-element:footer' id=f3l>
|
223
223
|
<p class=MsoFooterLandscape style='line-height:12.0pt'><span lang=EN-GB
|
224
|
-
style='font-size:10.0pt;mso-bidi-font-size:11.0pt'>© {{ agency }} {{ docyear }} – {{ all_rights_reserved }}<span style='mso-tab-count:1'> </span></span><!--[if supportFields]><b
|
224
|
+
style='font-size:10.0pt;mso-bidi-font-size:11.0pt'>© {{ agency }} {{ docyear }} – {{ labels["all_rights_reserved"] }}<span style='mso-tab-count:1'> </span></span><!--[if supportFields]><b
|
225
225
|
style='mso-bidi-font-weight:normal'><span lang=EN-GB style='font-size:10.0pt;
|
226
226
|
mso-bidi-font-size:11.0pt'><span style='mso-element:field-begin'></span>
|
227
227
|
PAGE<span style='mso-spacerun:yes'> </span>\* MERGEFORMAT <span
|
@@ -242,10 +242,10 @@ lang=EN-GB style='font-size:10.0pt;mso-bidi-font-size:11.0pt'><o:p></o:p></span>
|
|
242
242
|
{% endif %}
|
243
243
|
|
244
244
|
<p class=MsoFooter style='margin-top:0cm'><span lang=EN-AU style='font-size:
|
245
|
-
10.0pt;mso-ansi-language:EN-AU'>{{ price_based_on | replace: "%", "<span style='mso-element:field-begin'></span><span style='mso-spacerun:yes'> </span>NUMPAGES<span style='mso-spacerun:yes'> </span>\* MERGEFORMAT <span style='mso-element:field-separator'></span><span style='mso-no-proof:yes'>26</span><span style='mso-element:field-end'></span>" }}</span></p>
|
245
|
+
10.0pt;mso-ansi-language:EN-AU'>{{ labels["price_based_on"] | replace: "%", "<span style='mso-element:field-begin'></span><span style='mso-spacerun:yes'> </span>NUMPAGES<span style='mso-spacerun:yes'> </span>\* MERGEFORMAT <span style='mso-element:field-separator'></span><span style='mso-no-proof:yes'>26</span><span style='mso-element:field-end'></span>" }}</span></p>
|
246
246
|
|
247
247
|
<p class=MsoFooter><span lang=EN-AU style='font-size:10.0pt;'>©
|
248
|
-
{{ agency }} {{ docyear }} – {{ all_rights_reserved }}<o:p></o:p></span></p>
|
248
|
+
{{ agency }} {{ docyear }} – {{ labels["all_rights_reserved"] }}<o:p></o:p></span></p>
|
249
249
|
|
250
250
|
</div>
|
251
251
|
|