metanorma-iec 1.2.17 → 1.3.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (35) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/rake.yml +12 -11
  3. data/.hound.yml +3 -1
  4. data/.rubocop.yml +3 -7
  5. data/lib/asciidoctor/iec/biblio.rng +1 -0
  6. data/lib/asciidoctor/iec/front.rb +11 -5
  7. data/lib/asciidoctor/iec/iec.rng +4 -0
  8. data/lib/asciidoctor/iec/iec_intro_en.xml +1 -1
  9. data/lib/asciidoctor/iec/isodoc.rng +321 -4
  10. data/lib/asciidoctor/iec/isostandard.rng +12 -0
  11. data/lib/isodoc/iec/html/htmlstyle.css +7 -0
  12. data/lib/isodoc/iec/html_convert.rb +0 -1
  13. data/lib/isodoc/iec/iec.international-standard.xsl +503 -67
  14. data/lib/metanorma/iec/version.rb +1 -1
  15. data/metanorma-iec.gemspec +4 -4
  16. data/spec/asciidoctor/base_spec.rb +1062 -0
  17. data/spec/{asciidoctor-iec → asciidoctor}/blocks_spec.rb +214 -154
  18. data/spec/{asciidoctor-iec → asciidoctor}/cleanup_spec.rb +0 -0
  19. data/spec/{asciidoctor-iec → asciidoctor}/iev_spec.rb +0 -0
  20. data/spec/{asciidoctor-iec → asciidoctor}/inline_spec.rb +0 -0
  21. data/spec/{asciidoctor-iec → asciidoctor}/lists_spec.rb +0 -0
  22. data/spec/{asciidoctor-iec → asciidoctor}/section_spec.rb +0 -38
  23. data/spec/{asciidoctor-iec → asciidoctor}/validate_spec.rb +0 -0
  24. data/spec/isodoc/postproc_spec.rb +2 -20
  25. metadata +44 -53
  26. data/spec/asciidoctor-iec/base_spec.rb +0 -1045
  27. data/spec/examples/rice.adoc +0 -723
  28. data/spec/examples/rice.doc +0 -19162
  29. data/spec/examples/rice.html +0 -1787
  30. data/spec/examples/rice.xml +0 -1951
  31. data/spec/examples/rice_img/rice_image1.png +0 -0
  32. data/spec/examples/rice_img/rice_image2.png +0 -0
  33. data/spec/examples/rice_img/rice_image3_1.png +0 -0
  34. data/spec/examples/rice_img/rice_image3_2.png +0 -0
  35. data/spec/examples/rice_img/rice_image3_3.png +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a0b96b912617f9b9d39b34c274bbb5a42d3657fb23f106dfe5a683b77a1a61aa
4
- data.tar.gz: 18e4b1544161cce4938d62195ecf75a610210d6209306deebf67cfbc9c36e1ee
3
+ metadata.gz: c6f864a1028a766280c059aa02ec5e56a78806b0e2f2c4ae61efce3f0d254053
4
+ data.tar.gz: 6e7c6439b85da10d02dc1b9aaf518338e1dfe4cbb3e5b754a4d4c4ccfb3e222a
5
5
  SHA512:
6
- metadata.gz: 86ee8f3349be5a349d0e9bdaa86945ae26773c9a51f5b3807d4ad5091ad5ec5377a2a30fc7209c9524ed52a67b6c0c16028b3ff1c1637c1027ea4b459b1c6531
7
- data.tar.gz: 8e9d466765a4eb73c42c68292a6001c6bdc928aff890250f0b2080a4fd134da33475f1176d536e76888d5e95e98242eff5c44cbe764400346b6e623f37cbc8de
6
+ metadata.gz: 98311ebb5879d224265d355f83ea6f0d64044b3de4d185c6eda67a85705a40a1646e1ec0c6493f7dbf27269768dd6402e21da60639cb7bf880e1902bc463cca3
7
+ data.tar.gz: 3dcb74e07eaf077c4a6cacec0e60133ab8f53d8d2a4baa8f97d6becd0e20392b8b72ca20a3f73cb7262ded33e3a15d2388657aca308ce03917b80aa715382d4a
@@ -16,19 +16,9 @@ jobs:
16
16
  strategy:
17
17
  fail-fast: false
18
18
  matrix:
19
- ruby: [ '2.7', '2.6', '2.5', '2.4' ]
19
+ ruby: [ '3.0', '2.7', '2.6', '2.5', '2.4' ]
20
20
  os: [ ubuntu-latest, windows-latest, macos-latest ]
21
21
  experimental: [ false ]
22
- include:
23
- - ruby: '3.0'
24
- os: 'ubuntu-latest'
25
- experimental: true
26
- - ruby: '3.0'
27
- os: 'windows-latest'
28
- experimental: true
29
- - ruby: '3.0'
30
- os: 'macos-latest'
31
- experimental: true
32
22
  steps:
33
23
  - uses: actions/checkout@v2
34
24
  with:
@@ -40,3 +30,14 @@ jobs:
40
30
  bundler-cache: true
41
31
 
42
32
  - run: bundle exec rake
33
+
34
+ tests-passed:
35
+ needs: rake
36
+ runs-on: ubuntu-latest
37
+ steps:
38
+ - uses: peter-evans/repository-dispatch@v1
39
+ with:
40
+ token: ${{ secrets.METANORMA_CI_PAT_TOKEN || secrets.GITHUB_TOKEN }}
41
+ repository: ${{ github.repository }}
42
+ event-type: tests-passed
43
+ client-payload: '{"ref": "${{ github.ref }}", "sha": "${{ github.sha }}"}'
data/.hound.yml CHANGED
@@ -1,3 +1,5 @@
1
+ # Auto-generated by Cimas: Do not edit it manually!
2
+ # See https://github.com/metanorma/cimas
1
3
  ruby:
2
- Enabled: true
4
+ enabled: true
3
5
  config_file: .rubocop.yml
data/.rubocop.yml CHANGED
@@ -1,14 +1,10 @@
1
- # This project follows the Ribose OSS style guide.
2
- # https://github.com/riboseinc/oss-guides
3
- # All project-specific additions and overrides should be specified in this file.
1
+ # Auto-generated by Cimas: Do not edit it manually!
2
+ # See https://github.com/metanorma/cimas
4
3
  inherit_from:
5
4
  - https://raw.githubusercontent.com/riboseinc/oss-guides/master/ci/rubocop.yml
6
5
 
7
6
  # local repo-specific modifications
7
+ # ...
8
8
 
9
9
  AllCops:
10
- DisplayCopNames: false
11
- StyleGuideCopsOnly: false
12
10
  TargetRubyVersion: 2.4
13
- Rails:
14
- Enabled: true
@@ -787,6 +787,7 @@
787
787
  <value>adapted</value>
788
788
  <value>vote-started</value>
789
789
  <value>vote-ended</value>
790
+ <value>announced</value>
790
791
  </choice>
791
792
  </define>
792
793
  <define name="bdate">
@@ -6,7 +6,7 @@ module Asciidoctor
6
6
  csv_split(publishers)&.each do |p|
7
7
  xml.contributor do |c|
8
8
  c.role **{ type: "author" }
9
- c.organization { |a| organization(a, p, node, !node.attr("publisher")) }
9
+ c.organization { |a| organization(a, p, false, node, !node.attr("publisher")) }
10
10
  end
11
11
  end
12
12
  end
@@ -16,19 +16,21 @@ module Asciidoctor
16
16
  csv_split(publishers)&.each do |p|
17
17
  xml.contributor do |c|
18
18
  c.role **{ type: "publisher" }
19
- c.organization { |a| organization(a, p, node, !node.attr("publisher")) }
19
+ c.organization { |a| organization(a, p, true, node, !node.attr("publisher")) }
20
20
  end
21
21
  end
22
22
  end
23
23
 
24
24
  def metadata_copyright(node, xml)
25
- publishers = node.attr("copyright-holder") || node.attr("publisher") || "IEC"
25
+ publishers = node.attr("copyright-holder") || node.attr("publisher") ||
26
+ "IEC"
26
27
  csv_split(publishers)&.each do |p|
27
28
  xml.copyright do |c|
28
29
  c.from (node.attr("copyright-year") || Date.today.year)
29
30
  c.owner do |owner|
30
31
  owner.organization do |o|
31
- organization(o, p, node, !node.attr("copyright-holder") || node.attr("publisher"))
32
+ organization(o, p, true, node, !node.attr("copyright-holder") ||
33
+ node.attr("publisher"))
32
34
  end
33
35
  end
34
36
  end
@@ -37,6 +39,7 @@ module Asciidoctor
37
39
 
38
40
  def iso_id(node, xml)
39
41
  return unless node.attr("docnumber")
42
+
40
43
  part, subpart = node&.attr("partnumber")&.split(/-/)
41
44
  dn = add_id_parts(node.attr("docnumber"), part, subpart)
42
45
  dn = id_stage_prefix(dn, node, false)
@@ -111,6 +114,7 @@ module Asciidoctor
111
114
 
112
115
  def status_abbrev1(stage, substage, iter, doctype, draft)
113
116
  return "" unless stage
117
+
114
118
  abbr = STAGE_ABBRS.dig(stage, substage) || "??"
115
119
  if stage == "35" && substage == "92"
116
120
  iter = (iter.to_i + 1) % "02"
@@ -136,6 +140,7 @@ module Asciidoctor
136
140
 
137
141
  def stage_abbr(stage, substage)
138
142
  return "PPUB" if stage == "60"
143
+
139
144
  DOC_STAGE[stage.to_sym] || "??"
140
145
  end
141
146
 
@@ -188,7 +193,8 @@ module Asciidoctor
188
193
 
189
194
  def metadata_ext(node, xml)
190
195
  super
191
- a = node.attr("accessibility-color-inside") and xml.accessibility_color_inside a
196
+ a = node.attr("accessibility-color-inside") and
197
+ xml.accessibility_color_inside a
192
198
  a = node.attr("price-code") and xml.price_code a
193
199
  a = node.attr("cen-processing") and xml.cen_processing a
194
200
  a = node.attr("secretary") and xml.secretary a
@@ -13,10 +13,14 @@
13
13
  <value>publicly-available-specification</value>
14
14
  <value>international-workshop-agreement</value>
15
15
  <value>guide</value>
16
+ <value>industry-technical-agreement</value>
16
17
  </choice>
17
18
  </define>
18
19
  <define name="BibDataExtensionType">
19
20
  <ref name="doctype"/>
21
+ <optional>
22
+ <ref name="docsubtype"/>
23
+ </optional>
20
24
  <optional>
21
25
  <ref name="horizontal"/>
22
26
  </optional>
@@ -50,7 +50,7 @@
50
50
  <license-statement>
51
51
  <clause>
52
52
  {% if stage_int < 50 %}
53
- <p>This document is still under study and subject to change. It should not be used for reference purposes.</p>
53
+ <p>This document is still under study and subject to change. It should not be used for reference purposes.
54
54
  until published as such.</p>
55
55
  {% endif %}
56
56
  {% if stage_int >= 50 %}
@@ -45,6 +45,11 @@
45
45
  <optional>
46
46
  <attribute name="alt"/>
47
47
  </optional>
48
+ <optional>
49
+ <attribute name="updatetype">
50
+ <data type="boolean"/>
51
+ </attribute>
52
+ </optional>
48
53
  <text/>
49
54
  </element>
50
55
  </define>
@@ -86,6 +91,35 @@
86
91
  <text/>
87
92
  </element>
88
93
  </define>
94
+ <define name="erefType">
95
+ <optional>
96
+ <attribute name="normative">
97
+ <data type="boolean"/>
98
+ </attribute>
99
+ </optional>
100
+ <attribute name="citeas"/>
101
+ <attribute name="type">
102
+ <ref name="ReferenceFormat"/>
103
+ </attribute>
104
+ <optional>
105
+ <attribute name="alt"/>
106
+ </optional>
107
+ <optional>
108
+ <attribute name="case">
109
+ <choice>
110
+ <value>capital</value>
111
+ <value>lowercase</value>
112
+ </choice>
113
+ </attribute>
114
+ </optional>
115
+ <optional>
116
+ <attribute name="droploc">
117
+ <data type="boolean"/>
118
+ </attribute>
119
+ </optional>
120
+ <ref name="CitationType"/>
121
+ <text/>
122
+ </define>
89
123
  <define name="ul">
90
124
  <element name="ul">
91
125
  <attribute name="id">
@@ -514,6 +548,9 @@
514
548
  </define>
515
549
  <define name="BibDataExtensionType">
516
550
  <ref name="doctype"/>
551
+ <optional>
552
+ <ref name="docsubtype"/>
553
+ </optional>
517
554
  <optional>
518
555
  <ref name="editorialgroup"/>
519
556
  </optional>
@@ -775,8 +812,100 @@
775
812
  <ref name="paragraph"/>
776
813
  </element>
777
814
  </define>
815
+ <define name="em">
816
+ <element name="em">
817
+ <zeroOrMore>
818
+ <choice>
819
+ <ref name="PureTextElement"/>
820
+ <ref name="stem"/>
821
+ <ref name="index"/>
822
+ </choice>
823
+ </zeroOrMore>
824
+ </element>
825
+ </define>
826
+ <define name="strong">
827
+ <element name="strong">
828
+ <zeroOrMore>
829
+ <choice>
830
+ <ref name="PureTextElement"/>
831
+ <ref name="stem"/>
832
+ <ref name="index"/>
833
+ </choice>
834
+ </zeroOrMore>
835
+ </element>
836
+ </define>
837
+ <define name="tt">
838
+ <element name="tt">
839
+ <zeroOrMore>
840
+ <choice>
841
+ <ref name="PureTextElement"/>
842
+ <ref name="index"/>
843
+ </choice>
844
+ </zeroOrMore>
845
+ </element>
846
+ </define>
847
+ <define name="keyword">
848
+ <element name="keyword">
849
+ <zeroOrMore>
850
+ <choice>
851
+ <ref name="PureTextElement"/>
852
+ <ref name="index"/>
853
+ </choice>
854
+ </zeroOrMore>
855
+ </element>
856
+ </define>
857
+ <define name="strike">
858
+ <element name="strike">
859
+ <zeroOrMore>
860
+ <choice>
861
+ <ref name="PureTextElement"/>
862
+ <ref name="index"/>
863
+ </choice>
864
+ </zeroOrMore>
865
+ </element>
866
+ </define>
867
+ <define name="underline">
868
+ <element name="underline">
869
+ <zeroOrMore>
870
+ <choice>
871
+ <ref name="PureTextElement"/>
872
+ <ref name="index"/>
873
+ </choice>
874
+ </zeroOrMore>
875
+ </element>
876
+ </define>
877
+ <define name="smallcap">
878
+ <element name="smallcap">
879
+ <zeroOrMore>
880
+ <choice>
881
+ <ref name="PureTextElement"/>
882
+ <ref name="index"/>
883
+ </choice>
884
+ </zeroOrMore>
885
+ </element>
886
+ </define>
887
+ <define name="pagebreak">
888
+ <element name="pagebreak">
889
+ <optional>
890
+ <attribute name="orientation">
891
+ <choice>
892
+ <value>landscape</value>
893
+ <value>portrait</value>
894
+ </choice>
895
+ </attribute>
896
+ </optional>
897
+ </element>
898
+ </define>
778
899
  </include>
779
900
  <!-- end overrides -->
901
+ <define name="docsubtype">
902
+ <element name="docsubtype">
903
+ <ref name="DocumentSubtype"/>
904
+ </element>
905
+ </define>
906
+ <define name="DocumentSubtype">
907
+ <text/>
908
+ </define>
780
909
  <define name="colgroup">
781
910
  <element name="colgroup">
782
911
  <oneOrMore>
@@ -793,7 +922,35 @@
793
922
  <value>internal</value>
794
923
  </define>
795
924
  <define name="TextElement" combine="choice">
796
- <ref name="concept"/>
925
+ <choice>
926
+ <ref name="concept"/>
927
+ <ref name="add"/>
928
+ <ref name="del"/>
929
+ </choice>
930
+ </define>
931
+ <define name="add">
932
+ <element name="add">
933
+ <choice>
934
+ <ref name="PureTextElement"/>
935
+ <ref name="eref"/>
936
+ <ref name="stem"/>
937
+ <ref name="keyword"/>
938
+ <ref name="xref"/>
939
+ <ref name="hyperlink"/>
940
+ </choice>
941
+ </element>
942
+ </define>
943
+ <define name="del">
944
+ <element name="del">
945
+ <choice>
946
+ <ref name="PureTextElement"/>
947
+ <ref name="eref"/>
948
+ <ref name="stem"/>
949
+ <ref name="keyword"/>
950
+ <ref name="xref"/>
951
+ <ref name="hyperlink"/>
952
+ </choice>
953
+ </element>
797
954
  </define>
798
955
  <define name="concept">
799
956
  <element name="concept">
@@ -814,8 +971,170 @@
814
971
  <ref name="permission"/>
815
972
  <ref name="imagemap"/>
816
973
  <ref name="svgmap"/>
974
+ <ref name="inputform"/>
975
+ </choice>
976
+ </define>
977
+ <define name="inputform">
978
+ <element name="form">
979
+ <attribute name="id">
980
+ <data type="ID"/>
981
+ </attribute>
982
+ <attribute name="name"/>
983
+ <attribute name="action"/>
984
+ <zeroOrMore>
985
+ <choice>
986
+ <ref name="TextElement"/>
987
+ <ref name="FormInput"/>
988
+ </choice>
989
+ </zeroOrMore>
990
+ </element>
991
+ </define>
992
+ <define name="FormInput">
993
+ <choice>
994
+ <ref name="input"/>
995
+ <ref name="formlabel"/>
996
+ <ref name="select"/>
997
+ <ref name="textarea"/>
998
+ </choice>
999
+ </define>
1000
+ <define name="InputType">
1001
+ <choice>
1002
+ <value>button</value>
1003
+ <value>checkbox</value>
1004
+ <value>date</value>
1005
+ <value>file</value>
1006
+ <value>password</value>
1007
+ <value>radio</value>
1008
+ <value>submit</value>
1009
+ <value>text</value>
817
1010
  </choice>
818
1011
  </define>
1012
+ <define name="input">
1013
+ <element name="input">
1014
+ <attribute name="type">
1015
+ <ref name="InputType"/>
1016
+ </attribute>
1017
+ <optional>
1018
+ <attribute name="checked">
1019
+ <data type="boolean"/>
1020
+ </attribute>
1021
+ </optional>
1022
+ <optional>
1023
+ <attribute name="disabled">
1024
+ <data type="boolean"/>
1025
+ </attribute>
1026
+ </optional>
1027
+ <optional>
1028
+ <attribute name="readonly">
1029
+ <data type="boolean"/>
1030
+ </attribute>
1031
+ </optional>
1032
+ <optional>
1033
+ <attribute name="maxlength">
1034
+ <data type="int"/>
1035
+ </attribute>
1036
+ </optional>
1037
+ <optional>
1038
+ <attribute name="minlength">
1039
+ <data type="int"/>
1040
+ </attribute>
1041
+ </optional>
1042
+ <optional>
1043
+ <attribute name="name"/>
1044
+ </optional>
1045
+ <optional>
1046
+ <attribute name="value"/>
1047
+ </optional>
1048
+ <optional>
1049
+ <attribute name="id">
1050
+ <data type="ID"/>
1051
+ </attribute>
1052
+ </optional>
1053
+ </element>
1054
+ </define>
1055
+ <define name="formlabel">
1056
+ <element name="label">
1057
+ <attribute name="for">
1058
+ <data type="IDREF"/>
1059
+ </attribute>
1060
+ <zeroOrMore>
1061
+ <ref name="PureTextElement"/>
1062
+ </zeroOrMore>
1063
+ </element>
1064
+ </define>
1065
+ <define name="select">
1066
+ <element name="select">
1067
+ <optional>
1068
+ <attribute name="name"/>
1069
+ </optional>
1070
+ <optional>
1071
+ <attribute name="value"/>
1072
+ </optional>
1073
+ <optional>
1074
+ <attribute name="id">
1075
+ <data type="ID"/>
1076
+ </attribute>
1077
+ </optional>
1078
+ <optional>
1079
+ <attribute name="disabled">
1080
+ <data type="boolean"/>
1081
+ </attribute>
1082
+ </optional>
1083
+ <optional>
1084
+ <attribute name="multiple">
1085
+ <data type="boolean"/>
1086
+ </attribute>
1087
+ </optional>
1088
+ <optional>
1089
+ <attribute name="size">
1090
+ <data type="int"/>
1091
+ </attribute>
1092
+ </optional>
1093
+ <oneOrMore>
1094
+ <ref name="option"/>
1095
+ </oneOrMore>
1096
+ </element>
1097
+ </define>
1098
+ <define name="option">
1099
+ <element name="option">
1100
+ <optional>
1101
+ <attribute name="disabled">
1102
+ <data type="boolean"/>
1103
+ </attribute>
1104
+ </optional>
1105
+ <optional>
1106
+ <attribute name="value"/>
1107
+ </optional>
1108
+ <zeroOrMore>
1109
+ <ref name="PureTextElement"/>
1110
+ </zeroOrMore>
1111
+ </element>
1112
+ </define>
1113
+ <define name="textarea">
1114
+ <element name="textarea">
1115
+ <optional>
1116
+ <attribute name="name"/>
1117
+ </optional>
1118
+ <optional>
1119
+ <attribute name="value"/>
1120
+ </optional>
1121
+ <optional>
1122
+ <attribute name="id">
1123
+ <data type="ID"/>
1124
+ </attribute>
1125
+ </optional>
1126
+ <optional>
1127
+ <attribute name="rows">
1128
+ <data type="int"/>
1129
+ </attribute>
1130
+ </optional>
1131
+ <optional>
1132
+ <attribute name="cols">
1133
+ <data type="int"/>
1134
+ </attribute>
1135
+ </optional>
1136
+ </element>
1137
+ </define>
819
1138
  <define name="bibliography">
820
1139
  <element name="bibliography">
821
1140
  <oneOrMore>
@@ -888,9 +1207,7 @@
888
1207
  </define>
889
1208
  <define name="IsoWorkgroup">
890
1209
  <optional>
891
- <attribute name="number">
892
- <data type="int"/>
893
- </attribute>
1210
+ <attribute name="number"/>
894
1211
  </optional>
895
1212
  <optional>
896
1213
  <attribute name="type"/>