metanorma-iso 2.0.2 → 2.0.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (53) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +1 -1
  3. data/lib/isodoc/iso/html/html_iso_titlepage.html +1 -1
  4. data/lib/isodoc/iso/html/isodoc.css +1 -2
  5. data/lib/isodoc/iso/html/isodoc.scss +0 -1
  6. data/lib/isodoc/iso/html/word_iso_titlepage.html +1 -1
  7. data/lib/isodoc/iso/html/wordstyle.css +20 -0
  8. data/lib/isodoc/iso/html/wordstyle.scss +20 -0
  9. data/lib/isodoc/iso/i18n-en.yaml +29 -2
  10. data/lib/isodoc/iso/i18n-fr.yaml +27 -3
  11. data/lib/isodoc/iso/i18n-ru.yaml +45 -0
  12. data/lib/isodoc/iso/i18n-zh-Hans.yaml +27 -3
  13. data/lib/isodoc/iso/i18n.rb +1 -0
  14. data/lib/isodoc/iso/init.rb +1 -2
  15. data/lib/isodoc/iso/iso.amendment.xsl +1752 -807
  16. data/lib/isodoc/iso/iso.international-standard.xsl +1752 -807
  17. data/lib/isodoc/iso/metadata.rb +12 -2
  18. data/lib/isodoc/iso/presentation_xml_convert.rb +58 -21
  19. data/lib/metanorma/iso/basicdoc.rng +5 -3
  20. data/lib/metanorma/iso/biblio.rng +5 -3
  21. data/lib/metanorma/iso/boilerplate-fr.xml +3 -3
  22. data/lib/metanorma/iso/boilerplate-ru.xml +39 -0
  23. data/lib/metanorma/iso/boilerplate.xml +3 -3
  24. data/lib/metanorma/iso/cleanup.rb +42 -11
  25. data/lib/metanorma/iso/front.rb +1 -1
  26. data/lib/metanorma/iso/front_id.rb +1 -0
  27. data/lib/metanorma/iso/isodoc.rng +73 -3
  28. data/lib/metanorma/iso/processor.rb +14 -7
  29. data/lib/metanorma/iso/validate.rb +30 -2
  30. data/lib/metanorma/iso/validate_image.rb +3 -3
  31. data/lib/metanorma/iso/validate_list.rb +107 -0
  32. data/lib/metanorma/iso/validate_section.rb +42 -34
  33. data/lib/metanorma/iso/validate_style.rb +32 -2
  34. data/lib/metanorma/iso/validate_title.rb +13 -1
  35. data/lib/metanorma/iso/version.rb +1 -1
  36. data/spec/isodoc/amd_spec.rb +10 -5
  37. data/spec/isodoc/i18n_spec.rb +350 -9
  38. data/spec/isodoc/inline_spec.rb +127 -10
  39. data/spec/isodoc/metadata_spec.rb +153 -3
  40. data/spec/isodoc/postproc_spec.rb +3 -4
  41. data/spec/isodoc/section_spec.rb +1 -0
  42. data/spec/isodoc/terms_spec.rb +4 -4
  43. data/spec/isodoc/xref_spec.rb +18 -18
  44. data/spec/metanorma/base_spec.rb +434 -375
  45. data/spec/metanorma/cleanup_spec.rb +11 -11
  46. data/spec/metanorma/refs_spec.rb +333 -65
  47. data/spec/metanorma/section_spec.rb +15 -20
  48. data/spec/metanorma/validate_spec.rb +449 -14
  49. data/spec/spec_helper.rb +6 -4
  50. data/spec/vcr_cassettes/docrels.yml +211 -16
  51. data/spec/vcr_cassettes/withdrawn_iso.yml +301 -0
  52. metadata +6 -3
  53. data/spec/vcr_cassettes/sortrefs.yml +0 -599
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ef810ff6a80b7f991baeea2dd6f59f0f775ae33fd61e118d8658ea2c3c8d3179
4
- data.tar.gz: b7b137372e0a4d74373f83a5c902d595061d2421a86863b3c934459a4f88de51
3
+ metadata.gz: f140f4856789bed65a390730d55632ca2f620174d21120c83accc65d3e4510e7
4
+ data.tar.gz: 41cd96ea7bb74776030af95a192063c4236aad23ab01a2756fa1fb7cef11fd07
5
5
  SHA512:
6
- metadata.gz: ff07cad24919df83b2a7f827056eacb722b2e63b02164d28adef6ab6b43a64e9c5df0f828518b31eea5e2dbf741f89b16289b0660d116ed9cf9ff74be808390b
7
- data.tar.gz: 553648a7a66607ea74d515ff3442161e6897ac5e38f75e0cb69ce54ae8fcc6fefd94e71ac4963c2caa6d1778b5c6e04ac63294312d5a2471387f5e8352f729ba
6
+ metadata.gz: eb2eea8e66a5fa1ae643ed51449c35e56468419920172b3fb4d34a0eaa017ab050828bfb0b00137aa25784a5def33d17be61aded658ae41191805c061ca80fab
7
+ data.tar.gz: 0b34c98d38635fe1b92d4ccbc9dc97f4fd6f385ac5b06b6c222ab3777d3baf8c047d80c9697dfbc8539dac039465896cc7ec7104105ba7aed46e403cdcff1829
data/Gemfile CHANGED
@@ -4,7 +4,7 @@ Encoding.default_internal = Encoding::UTF_8
4
4
  source "https://rubygems.org"
5
5
  git_source(:github) { |repo| "https://github.com/#{repo}" }
6
6
 
7
- gem "relaton", git: "https://github.com/relaton/relaton"
7
+ #gem "relaton", git: "https://github.com/relaton/relaton"
8
8
 
9
9
  gemspec
10
10
 
@@ -18,7 +18,7 @@
18
18
  <p class="coverpage_techcommittee">{{ agency }}/{{ editorialgroup | join: "/" }}</p>
19
19
 
20
20
  <p class="coverpage_techcommittee"><a
21
- name="CVP_Secretariat_Loca">Secretariat</a>: {{ secretariat }}</p>
21
+ name="CVP_Secretariat_Loca">{{ labels["secretariat"] }}</a>: {{ secretariat }}</p>
22
22
 
23
23
  <div class="doctitle-en"><div><span class="title">{{ doctitleintro }}{% if doctitleintro and doctitlemain %} &mdash; {% endif %}</span><span class="subtitle">{{ doctitlemain }}{% if doctitlemain and doctitlepart %} &mdash;{% endif %}</span>
24
24
  {% if doctitlepart %}
@@ -1308,8 +1308,7 @@ span.ExampleChar {
1308
1308
  mso-ansi-language: EN-GB; }
1309
1309
 
1310
1310
  div.Note p.MsoListParagraph {
1311
- font-size: {{smallerfontsize}};
1312
- margin-left: 1.0cm; }
1311
+ font-size: {{smallerfontsize}}; }
1313
1312
 
1314
1313
  div.Note span.stem {
1315
1314
  font-size: {{smallerfontsize}}; }
@@ -1274,7 +1274,6 @@ span.ExampleChar
1274
1274
 
1275
1275
  div.Note p.MsoListParagraph {
1276
1276
  font-size: $smallerfontsize;
1277
- margin-left: 1.0cm;
1278
1277
  }
1279
1278
 
1280
1279
  div.Note span.stem {
@@ -29,7 +29,7 @@ style='mso-bidi-font-weight:normal'><span lang="EN-GB" style='font-size:14.0pt'>
29
29
  <p class="MsoNormal" align="right" style='text-align:right'><span lang="EN-GB"
30
30
  style='mso-no-proof:yes'>{{ agency }}/{{ editorialgroup | join: "/" }}</span></p>
31
31
 
32
- <p class="MsoNormal" align="right" style='margin-bottom:100.0pt;text-align:right'><span lang="EN-GB">Secretariat: <span style='mso-no-proof:yes'>{{ secretariat }}</span></span></p>
32
+ <p class="MsoNormal" align="right" style='margin-bottom:100.0pt;text-align:right'><span lang="EN-GB">{{ labels["secretariat"] }}: <span style='mso-no-proof:yes'>{{ secretariat }}</span></span></p>
33
33
 
34
34
  <p class="MsoNormal" align="left" style='text-align:left;line-height:18.0pt;margin-bottom:0.0pt;font-size:16.0pt'>
35
35
  <span class="title"><b>{{ doctitleintro }}{% if doctitleintro and doctitlemain %} &mdash; {% endif %}</b></span><b><span class="subtitle">{{ doctitlemain }}{% if doctitlemain and doctitlepart %} &mdash;{% endif %}</b></span>
@@ -1169,6 +1169,26 @@ p.Tablebody, li.Tablebody, div.Tablebody {
1169
1169
  mso-fareast-font-family: "SimSun",serif;
1170
1170
  mso-hansi-font-family: {{bodyfont}}; }
1171
1171
 
1172
+ p.TOCTitle, li.TOCTitle, div.TOCTitle {
1173
+ mso-style-name: "TOC Title";
1174
+ mso-style-unhide: no;
1175
+ margin-top: 0in;
1176
+ margin-right: 0in;
1177
+ margin-bottom: {{normalfontsize}};
1178
+ margin-left: 0in;
1179
+ text-align: left;
1180
+ page-break-after: avoid;
1181
+ mso-pagination: none;
1182
+ mso-hyphenate: none;
1183
+ mso-layout-grid-align: none;
1184
+ font-size: {{normalfontsize}};
1185
+ mso-bidi-font-size: 10.0pt;
1186
+ font-weight: bold;
1187
+ font-family: {{headerfont}};
1188
+ mso-fareast-font-family: {{headerfont}};
1189
+ mso-bidi-font-family: {{headerfont}};
1190
+ mso-fareast-language: EN-US; }
1191
+
1172
1192
  /* Page Definitions */
1173
1193
  @page {
1174
1194
  mso-mirror-margins: yes;
@@ -1102,6 +1102,26 @@ p.Tablebody, li.Tablebody, div.Tablebody
1102
1102
  mso-ascii-font-family:$bodyfont;
1103
1103
  mso-fareast-font-family:"SimSun",serif;
1104
1104
  mso-hansi-font-family:$bodyfont;}
1105
+ p.TOCTitle, li.TOCTitle, div.TOCTitle
1106
+ {mso-style-name:"TOC Title";
1107
+ mso-style-unhide:no;
1108
+ margin-top:0in;
1109
+ margin-right:0in;
1110
+ margin-bottom:$normalfontsize;
1111
+ margin-left:0in;
1112
+ text-align:left;
1113
+ page-break-after:avoid;
1114
+ mso-pagination:none;
1115
+ mso-hyphenate:none;
1116
+ mso-layout-grid-align:none;
1117
+ font-size:$normalfontsize;
1118
+ mso-bidi-font-size:10.0pt;
1119
+ font-weight:bold;
1120
+ font-family:$headerfont;
1121
+ mso-fareast-font-family:$headerfont;
1122
+ mso-bidi-font-family:$headerfont;
1123
+ mso-fareast-language:EN-US;}
1124
+
1105
1125
  /* Page Definitions */
1106
1126
  @page
1107
1127
  {mso-mirror-margins:yes;
@@ -4,17 +4,44 @@ term_def_boilerplate: |
4
4
 
5
5
  <ul>
6
6
  <li> <p>ISO Online browsing platform: available at
7
- <link target="http://www.iso.org/obp"/></p> </li>
7
+ <link target="http://www.iso.org/obp"/>.</p></li>
8
8
  <li> <p>IEC Electropedia: available at
9
- <link target="http://www.electropedia.org"/>
9
+ <link target="http://www.electropedia.org"/>.
10
10
  </p> </li> </ul>
11
11
  all_rights_reserved: All rights reserved
12
12
  reference_number: Reference Number
13
13
  price_based_on: Price based on % pages
14
14
  under_preparation: Under preparation. (Stage at the time of publication %).
15
+ withdrawn: Withdrawn.
16
+ cancelled_and_replaced: Cancelled and replaced by %.
15
17
  table_of_contents: Contents
16
18
  date: Date
17
19
  index: Index
18
20
  see: see
19
21
  see_also: see also
22
+ secretariat: Secretariat
23
+ edition: edition
24
+ termsrelated: Terms related to
25
+ multiple_and: "%1 and %2"
26
+ multiple_or: "%1 or %2"
27
+ doctype_dict:
28
+ international-standard: International Standard
29
+ technical-specification: Technical Specification
30
+ technical-report: Technical Report
31
+ publicly-available-specification: Publicly Available Specification
32
+ international-workshop-agreement: International Workshop Agreement
33
+ guide: Guide
34
+ amendment: Amendment
35
+ technical-corrigendum: Technical Corrigendum
36
+ directive: Directive
37
+ stage_dict:
38
+ "00": Preliminary work item
39
+ "10": New work item proposal
40
+ "20": Working draft
41
+ "30": Committee draft
42
+ "40": Draft
43
+ "50": Final draft
44
+ "60": International standard
45
+ "90": Review
46
+ "95": Withdrawal
20
47
 
@@ -4,16 +4,40 @@ term_def_boilerplate: |
4
4
  suivantes:</p>
5
5
  <ul>
6
6
  <li> <p>ISO Online browsing platform: disponible à l'adresse
7
- <link target="http://www.iso.org/obp"/></p> </li>
7
+ <link target="http://www.iso.org/obp"/>.</p></li>
8
8
  <li> <p>IEC Electropedia: disponible à l'adresse
9
- <link target="http://www.electropedia.org"/>
9
+ <link target="http://www.electropedia.org"/>.
10
10
  </p> </li> </ul>
11
11
  all_rights_reserved: Tous droits réservés
12
12
  reference_number: Numéro de référence
13
13
  price_based_on: Prix basé sur % pages
14
14
  under_preparation: En cours d'élaboration. (Stade au moment de la publication %).
15
+ withdrawn: Retiré.
16
+ cancelled_and_replaced: Annulé et remplacé par %.
15
17
  date: Date
16
18
  index: Index
17
19
  see: voir
18
20
  see_also: voir aussi
19
-
21
+ secretariat: Secrétariat
22
+ edition: édition
23
+ termsrelated: Termes liés
24
+ doctype_dict:
25
+ international-standard: Norme internationale
26
+ technical-specification: Spécification technique
27
+ technical-report: Rapport technique
28
+ publicly-available-specification: Spécification disponible publiquement
29
+ international-workshop-agreement: Accord internationale d’atelier
30
+ guide: Guide
31
+ amendment: Amendement
32
+ technical-corrigendum: Rectificatif technique
33
+ directive: Directive
34
+ stage_dict:
35
+ "00": Élément de travail préliminaire
36
+ "10": Nouvelle proposition d'élément de travail
37
+ "20": Brouillon de travail
38
+ "30": Projet de comité
39
+ "40": Brouillon
40
+ "50": Version finale
41
+ "60": Norme internationale
42
+ "90": Révision
43
+ "95": Retrait
@@ -0,0 +1,45 @@
1
+ term_def_boilerplate: |
2
+ <p>ИСО и МЭК поддерживают терминологические базы данных для использования в стандартизации по следующим адресам:</p>
3
+
4
+ <ul>
5
+ <li> <p>ИСО, Интернет-онлайн-платформа: доступна на
6
+ <link target="http://www.iso.org/obp"/>.</p></li>
7
+ <li> <p>МЭК Electropedia: доступна на
8
+ <link target="http://www.electropedia.org"/>.
9
+ </p> </li> </ul>
10
+ all_rights_reserved: Все права защищены
11
+ reference_number: Ссылочный номер
12
+ price_based_on: Цена рассчитана на % стр.
13
+ under_preparation: В стадии подготовки. (Стадия на момент публикации %).
14
+ withdrawn: Отозван.
15
+ cancelled_and_replaced: Отменено и заменено на %.
16
+ table_of_contents: Содержание
17
+ date: Дата
18
+ index: Алфавитный указатель
19
+ see: см.
20
+ see_also: см. также
21
+ secretariat: Секретариат
22
+ scope: Область применения
23
+ edition: издание
24
+ termsrelated: Термины, связанные
25
+ doctype_dict:
26
+ international-standard: Международный Стандарт
27
+ technical-specification: Техническая Спецификация
28
+ technical-report: Технический Отчет
29
+ publicly-available-specification: Общедоступная Спецификация
30
+ international-workshop-agreement: Соглашение Международного Семинара
31
+ guide: Руководство
32
+ amendment: Поправка
33
+ technical-corrigendum: Техническое Исправление
34
+ directive: Директива
35
+ stage_dict:
36
+ "00": Предварительный рабочий элемент
37
+ "10": Предложение нового рабочего элемента
38
+ "20": Рабочий проект
39
+ "30": Проект комитета
40
+ "40": Проект Международного стандарта
41
+ "50": Окончательный проект Международного стандарта
42
+ "60": Международный стандарт
43
+ "90": Пересмотр
44
+ "95": Отмена
45
+
@@ -2,16 +2,40 @@ term_def_boilerplate: |
2
2
  <p>ISO和IEC用于标准化的术语数据库地址如下:</p>
3
3
  <ul>
4
4
  <li> <p>ISO在线浏览平台:
5
- 位于<link target="http://www.iso.org/obp"/></p></li>
5
+ 位于<link target="http://www.iso.org/obp"/>。</p></li>
6
6
  <li> <p>IEC Electropedia:
7
- 位于<link target="http://www.electropedia.org"/>
7
+ 位于<link target="http://www.electropedia.org"/>。
8
8
  </p> </li> </ul>
9
9
  all_rights_reserved: 版权所有
10
10
  reference_number: 参考编号
11
11
  price_based_on: 价格基于%页
12
12
  under_preparation: 制定中(出版时最新状态为%)
13
+ withdrawn: 撤回 .
14
+ cancelled_and_replaced: 已取消并由%取代。
13
15
  date: 日期
14
16
  index: 索引
15
17
  see: 见
16
18
  see_also: 另见
17
-
19
+ secretariat: 秘书处
20
+ edition: 版
21
+ termsrelated: 相关术语
22
+ doctype_dict:
23
+ international-standard: 国际标准
24
+ technical-specification: 技术规格
25
+ technical-report: 技术报告
26
+ publicly-available-specification: 公开可用的规范
27
+ international-workshop-agreement: 国际研讨会协议
28
+ guide: 指南
29
+ amendment: 修正
30
+ technical-corrigendum: 技术勘误
31
+ directive: 指令
32
+ stage_dict:
33
+ "00": 初步工作项
34
+ "10": 新工作项提案
35
+ "20": 工作草案
36
+ "30": 委员会草案
37
+ "40": 草稿
38
+ "50": 最终草案
39
+ "60": 国际标准
40
+ "90": 回顾
41
+ "95": 提款
@@ -8,6 +8,7 @@ module IsoDoc
8
8
  def load_yaml1(lang, script)
9
9
  y = if lang == "en" then load_file("i18n-en.yaml")
10
10
  elsif lang == "fr" then load_file("i18n-fr.yaml")
11
+ elsif lang == "ru" then load_file("i18n-ru.yaml")
11
12
  elsif lang == "zh" && script == "Hans"
12
13
  load_file("i18n-zh-Hans.yaml")
13
14
  else load_file("i18n-en.yaml")
@@ -10,7 +10,7 @@ module IsoDoc
10
10
  @meta = Metadata.new(lang, script, i18n)
11
11
  end
12
12
 
13
- def xref_init(lang, script, klass, i18n, options)
13
+ def xref_init(lang, script, _klass, i18n, options)
14
14
  html = HtmlConvert.new(language: lang, script: script)
15
15
  @xrefs = Xref.new(lang, script, html, i18n, options)
16
16
  end
@@ -30,4 +30,3 @@ module IsoDoc
30
30
  end
31
31
  end
32
32
  end
33
-