metanorma-bipm 0.0.2 → 1.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (47) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/rake.yml +62 -0
  3. data/README.adoc +7 -114
  4. data/lib/asciidoctor/bipm/basicdoc.rng +50 -3
  5. data/lib/asciidoctor/bipm/bipm.rng +193 -23
  6. data/lib/asciidoctor/bipm/boilerplate-en.xml +2 -3
  7. data/lib/asciidoctor/bipm/boilerplate-fr.xml +3 -4
  8. data/lib/asciidoctor/bipm/converter.rb +130 -18
  9. data/lib/asciidoctor/bipm/isodoc.rng +36 -43
  10. data/lib/isodoc/bipm/base_convert.rb +60 -0
  11. data/lib/isodoc/bipm/bipm.brochure.xsl +2548 -760
  12. data/lib/isodoc/bipm/bipm.guide.xsl +7738 -0
  13. data/lib/isodoc/bipm/bipm.mise-en-pratique.xsl +7738 -0
  14. data/lib/isodoc/bipm/bipm.rapport.xsl +7738 -0
  15. data/lib/isodoc/bipm/html/html_bipm_titlepage.html +35 -4
  16. data/lib/isodoc/bipm/html/htmlstyle.css +56 -62
  17. data/lib/isodoc/bipm/html/htmlstyle.scss +53 -77
  18. data/lib/isodoc/bipm/html/si-aspect/A_e.png +0 -0
  19. data/lib/isodoc/bipm/html/si-aspect/A_e_deltanu.png +0 -0
  20. data/lib/isodoc/bipm/html/si-aspect/K_k.png +0 -0
  21. data/lib/isodoc/bipm/html/si-aspect/K_k_deltanu_h.png +0 -0
  22. data/lib/isodoc/bipm/html/si-aspect/cd_Kcd.png +0 -0
  23. data/lib/isodoc/bipm/html/si-aspect/cd_Kcd_h_deltanu.png +0 -0
  24. data/lib/isodoc/bipm/html/si-aspect/full.png +0 -0
  25. data/lib/isodoc/bipm/html/si-aspect/kg_h.png +0 -0
  26. data/lib/isodoc/bipm/html/si-aspect/kg_h_c_deltanu.png +0 -0
  27. data/lib/isodoc/bipm/html/si-aspect/m_c.png +0 -0
  28. data/lib/isodoc/bipm/html/si-aspect/m_c_deltanu.png +0 -0
  29. data/lib/isodoc/bipm/html/si-aspect/mol_NA.png +0 -0
  30. data/lib/isodoc/bipm/html/si-aspect/s_deltanu.png +0 -0
  31. data/lib/isodoc/bipm/html_convert.rb +32 -0
  32. data/lib/isodoc/bipm/i18n-en.yaml +9 -0
  33. data/lib/isodoc/bipm/i18n-fr.yaml +22 -4
  34. data/lib/isodoc/bipm/index.rb +136 -0
  35. data/lib/isodoc/bipm/metadata.rb +34 -10
  36. data/lib/isodoc/bipm/pdf_convert.rb +13 -2
  37. data/lib/isodoc/bipm/presentation_xml_convert.rb +103 -7
  38. data/lib/isodoc/bipm/xref.rb +138 -3
  39. data/lib/metanorma/bipm.rb +7 -0
  40. data/lib/metanorma/bipm/processor.rb +11 -0
  41. data/lib/metanorma/bipm/version.rb +1 -1
  42. data/metanorma-bipm.gemspec +1 -2
  43. data/metanorma.yml +42 -1
  44. metadata +22 -21
  45. data/.github/workflows/macos.yml +0 -38
  46. data/.github/workflows/ubuntu.yml +0 -56
  47. data/.github/workflows/windows.yml +0 -40
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 198062ce879f6837f948e113c1985c8bbdcc2aa1e753ce633bcca8c2eb580b00
4
- data.tar.gz: 771c26b923ee4adf5ddd09b77c469910b382a215bb0d0938f1616bd0d6f3e979
3
+ metadata.gz: 3acf341b606e1c45ba970fa51074d7ff9cb2cfb424a0a4439821af1b5f76f6bf
4
+ data.tar.gz: 15d7d12f963aee720825f1a4481670efde7430dd02aaca56cebecdb1d7190999
5
5
  SHA512:
6
- metadata.gz: 75194ca626816201d59884e40fcead12afaa115f1935a8a4722c18591c4a7ae91565c7166b7cab75fa10e948f740e11acbea53845055a9cc64bff9cbb92750cf
7
- data.tar.gz: 0531d6c46349852dfc6253563d6dc1ce14a4fe771626bc375b130962a9d162071216f1cd112197b19a7daaae24d8f259387abf055fec6cf9acd3633ccfbe6893
6
+ metadata.gz: cb967276a656a03fde3b69145a43ce1b01805bac6123ca205127317943c89d3154276a4cffd526dde879cc561bc7cf97eba895cd2f9d5b8b8390ddd3041b0e05
7
+ data.tar.gz: 3d8075a9b34a50e72009eb55498ec16fdab6b075a63af4638dcb95e2c61408bc20199fac99115449c4234c4d8afe3050d3040883a1bd3f2933fd43fb6cb8dc84
@@ -0,0 +1,62 @@
1
+ # Auto-generated by Cimas: Do not edit it manually!
2
+ # See https://github.com/metanorma/cimas
3
+ name: rake
4
+
5
+ on:
6
+ push:
7
+ branches: [ master, main ]
8
+ tags: [ v* ]
9
+ pull_request:
10
+
11
+ jobs:
12
+ rake:
13
+ name: Test on Ruby ${{ matrix.ruby }} ${{ matrix.os }}
14
+ runs-on: ${{ matrix.os }}
15
+ continue-on-error: ${{ matrix.experimental }}
16
+ strategy:
17
+ fail-fast: false
18
+ matrix:
19
+ ruby: [ '2.6', '2.5', '2.4' ]
20
+ os: [ ubuntu-latest, windows-latest, macos-latest ]
21
+ experimental: [ false ]
22
+ include:
23
+ - ruby: '2.7'
24
+ os: 'ubuntu-latest'
25
+ experimental: true
26
+ - ruby: '2.7'
27
+ os: 'windows-latest'
28
+ experimental: true
29
+ - ruby: '2.7'
30
+ os: 'macos-latest'
31
+ experimental: true
32
+ steps:
33
+ - uses: actions/checkout@master
34
+
35
+ - uses: ruby/setup-ruby@v1
36
+ with:
37
+ ruby-version: ${{ matrix.ruby }}
38
+
39
+ - uses: actions/cache@v2
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
48
+
49
+ - run: bundle exec rake
50
+
51
+ tests-passed:
52
+ needs: rake
53
+ runs-on: ubuntu-latest
54
+ steps:
55
+ - name: Trigger tests passed event
56
+ uses: Sibz/github-status-action@v1
57
+ with:
58
+ authToken: ${{ secrets.METANORMA_CI_PAT_TOKEN || secrets.GITHUB_TOKEN }}
59
+ context: 'tests-passed-successfully'
60
+ description: 'Tests passed successfully'
61
+ state: 'success'
62
+ sha: ${{ github.event.pull_request.head.sha || github.sha }}
@@ -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-bimp.sbimp["Gem Version", link="https://rubygems.org/gems/metanorma-bimp"]
4
- image:https://github.com/metanorma/metanorma-bimp/workflows/macos/badge.sbimp["Build Status (macOS)", link="https://github.com/metanorma/metanorma-bimp/actions?workflow=macos"]
5
- image:https://github.com/metanorma/metanorma-bimp/workflows/ubuntu/badge.sbimp["Build Status (ubuntu)", link="https://github.com/metanorma/metanorma-bimp/actions?workflow=ubuntu"]
6
- image:https://github.com/metanorma/metanorma-bimp/workflows/windows/badge.sbimp["Build Status (Windows)", link="https://github.com/metanorma/metanorma-bimp/actions?workflow=windows"]
7
- image:https://codeclimate.com/github/metanorma/metanorma-bimp/badges/gpa.sbimp["Code Climate", link="https://codeclimate.com/github/metanorma/metanorma-bimp"]
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 http://asciidoctor.org/[Asciidoctor] documents following
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,114 +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-vg
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. 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. Comma delimited.
93
-
94
- `:doctype:`:: The document type (mandatory). The permitted types are:
95
- +
96
- --
97
- * brochure (default)
98
- * mise-en-pratique
99
- * rapport
100
- * monographie
101
- * guide
102
- * meeting-report
103
- * technical-report
104
- * working-party-note
105
- * strategy
106
- * cipm-mra
107
- * resolution
108
- --
109
-
110
- `:status:``:: The document status. The permitted types are: `draft-proposal`,
111
- `draft-development`, `in-force`, `retired`.
112
-
113
- `:committee:`:: The name of the relevant committee (mandatory):
114
- +
115
- --
116
- * CGPM: General Conference on Weights and Measures
117
- * CIPM: International Committee for Weights and Measures
118
- * BIPM: International Bureau of Weights and Measures
119
- * CCAUV: Consultative Committee for Acoustics, Ultrasound and Vibration
120
- * CCEM: Consultative Committee for Electricity and Magnetism
121
- * CCL: Consultative Committee for Length
122
- * CCM: Consultative Committee for Mass and Related Quantities
123
- * CCPR: Consultative Committee for Photometry and Radiometry
124
- * CCQM: Consultative Committee for Amount of Substance:: Metrology in Chemistry and Biology
125
- * CCRI: Consultative Committee for Ionizing Radiation
126
- * CCT: Consultative Committee for Thermometry
127
- * CCTF: Consultative Committee for Time and Frequency
128
- * CCU: Consultative Committee for Units
129
- * CCL-CCTF: Frequency Standards Working Group
130
- * JCGM: Joint Committee for Guides in Metrology
131
- * JCRB: Joint Committee of the Regional Metrology Organizations and the BIPM
132
- * JCTLM: Joint Committee for Traceability in Laboratory Medicine
133
- * INetQI: International Network on Quality Infrastructure
134
- --
135
- `:workgroup:`:: The name of the relevant workgroup (mandatory)
136
-
137
- `:language:` :: The language of the document (`en` or `fr`) (mandatory)
138
-
139
- `:comment-period-from:`:: Start of the period during which comments are allowed on the document draft
140
- `:comment-period-to:`:: End of the period during which comments are allowed on the document draft (optional)
141
-
142
- `:obsoleted-date:`:: The date a document was superseded
143
- `:implemented-date:`:: The date a document became effective
144
-
145
- The attribute `:draft:`, if present, includes review notes in the XML output;
146
- these are otherwise suppressed.
147
-
148
- == Markup
149
-
150
- Cross-references formatted as `<<{{anchor}},pagenumber%>>` are rendered in PDF as just the page number;
151
- they are used for tables of content. In HTML output, they are treated as normal cross-references.
152
-
153
46
  == Data Models
154
47
 
155
48
  The document model for BIPM is given in https://github.com/metanorma/metanorma-model-bipm[metanorma-model-bipm].
@@ -596,6 +596,7 @@
596
596
  <ref name="bookmark"/>
597
597
  <ref name="image"/>
598
598
  <ref name="index"/>
599
+ <ref name="index-xref"/>
599
600
  </choice>
600
601
  </define>
601
602
  <define name="PureTextElement">
@@ -728,15 +729,61 @@
728
729
  </define>
729
730
  <define name="index">
730
731
  <element name="index">
731
- <attribute name="primary"/>
732
+ <attribute name="to">
733
+ <data type="IDREF"/>
734
+ </attribute>
735
+ <element name="primary">
736
+ <oneOrMore>
737
+ <ref name="PureTextElement"/>
738
+ </oneOrMore>
739
+ </element>
732
740
  <optional>
733
- <attribute name="secondary"/>
741
+ <element name="secondary">
742
+ <oneOrMore>
743
+ <ref name="PureTextElement"/>
744
+ </oneOrMore>
745
+ </element>
734
746
  </optional>
735
747
  <optional>
736
- <attribute name="tertiary"/>
748
+ <element name="tertiary">
749
+ <oneOrMore>
750
+ <ref name="PureTextElement"/>
751
+ </oneOrMore>
752
+ </element>
737
753
  </optional>
738
754
  </element>
739
755
  </define>
756
+ <define name="index-xref">
757
+ <element name="index-xref">
758
+ <attribute name="also">
759
+ <data type="boolean"/>
760
+ </attribute>
761
+ <element name="primary">
762
+ <oneOrMore>
763
+ <ref name="PureTextElement"/>
764
+ </oneOrMore>
765
+ </element>
766
+ <optional>
767
+ <element name="secondary">
768
+ <oneOrMore>
769
+ <ref name="PureTextElement"/>
770
+ </oneOrMore>
771
+ </element>
772
+ </optional>
773
+ <optional>
774
+ <element name="tertiary">
775
+ <oneOrMore>
776
+ <ref name="PureTextElement"/>
777
+ </oneOrMore>
778
+ </element>
779
+ </optional>
780
+ <element name="target">
781
+ <oneOrMore>
782
+ <ref name="PureTextElement"/>
783
+ </oneOrMore>
784
+ </element>
785
+ </element>
786
+ </define>
740
787
  <!-- bare ID element, used for referencing arbitrary spans of text -->
741
788
  <define name="bookmark">
742
789
  <element name="bookmark">
@@ -42,9 +42,163 @@
42
42
  <data type="boolean"/>
43
43
  </attribute>
44
44
  </optional>
45
+ <optional>
46
+ <attribute name="nosee">
47
+ <data type="boolean"/>
48
+ </attribute>
49
+ </optional>
50
+ <optional>
51
+ <attribute name="nopage">
52
+ <data type="boolean"/>
53
+ </attribute>
54
+ </optional>
45
55
  <text/>
46
56
  </element>
47
57
  </define>
58
+ <define name="Clause-Section">
59
+ <optional>
60
+ <attribute name="id">
61
+ <data type="ID"/>
62
+ </attribute>
63
+ </optional>
64
+ <optional>
65
+ <attribute name="language"/>
66
+ </optional>
67
+ <optional>
68
+ <attribute name="script"/>
69
+ </optional>
70
+ <optional>
71
+ <attribute name="inline-header">
72
+ <data type="boolean"/>
73
+ </attribute>
74
+ </optional>
75
+ <optional>
76
+ <attribute name="obligation">
77
+ <choice>
78
+ <value>normative</value>
79
+ <value>informative</value>
80
+ </choice>
81
+ </attribute>
82
+ </optional>
83
+ <optional>
84
+ <attribute name="type"/>
85
+ </optional>
86
+ <optional>
87
+ <attribute name="unnumbered">
88
+ <data type="boolean"/>
89
+ </attribute>
90
+ </optional>
91
+ <optional>
92
+ <ref name="section-title"/>
93
+ </optional>
94
+ <group>
95
+ <choice>
96
+ <group>
97
+ <zeroOrMore>
98
+ <ref name="BasicBlock"/>
99
+ </zeroOrMore>
100
+ <zeroOrMore>
101
+ <ref name="note"/>
102
+ </zeroOrMore>
103
+ </group>
104
+ <ref name="amend"/>
105
+ </choice>
106
+ <zeroOrMore>
107
+ <choice>
108
+ <ref name="clause-subsection"/>
109
+ <ref name="terms"/>
110
+ <ref name="definitions"/>
111
+ </choice>
112
+ </zeroOrMore>
113
+ </group>
114
+ </define>
115
+ <define name="Annex-Section">
116
+ <optional>
117
+ <attribute name="id">
118
+ <data type="ID"/>
119
+ </attribute>
120
+ </optional>
121
+ <optional>
122
+ <attribute name="language"/>
123
+ </optional>
124
+ <optional>
125
+ <attribute name="script"/>
126
+ </optional>
127
+ <optional>
128
+ <attribute name="inline-header">
129
+ <data type="boolean"/>
130
+ </attribute>
131
+ </optional>
132
+ <optional>
133
+ <attribute name="obligation">
134
+ <choice>
135
+ <value>normative</value>
136
+ <value>informative</value>
137
+ </choice>
138
+ </attribute>
139
+ </optional>
140
+ <optional>
141
+ <attribute name="unnumbered">
142
+ <data type="boolean"/>
143
+ </attribute>
144
+ </optional>
145
+ <optional>
146
+ <ref name="section-title"/>
147
+ </optional>
148
+ <group>
149
+ <group>
150
+ <zeroOrMore>
151
+ <ref name="BasicBlock"/>
152
+ </zeroOrMore>
153
+ <zeroOrMore>
154
+ <ref name="note"/>
155
+ </zeroOrMore>
156
+ </group>
157
+ <zeroOrMore>
158
+ <choice>
159
+ <ref name="annex-subsection"/>
160
+ <ref name="terms"/>
161
+ <ref name="definitions"/>
162
+ <ref name="references"/>
163
+ </choice>
164
+ </zeroOrMore>
165
+ </group>
166
+ </define>
167
+ <define name="ol">
168
+ <element name="ol">
169
+ <attribute name="id">
170
+ <data type="ID"/>
171
+ </attribute>
172
+ <optional>
173
+ <attribute name="keep-with-next">
174
+ <data type="boolean"/>
175
+ </attribute>
176
+ </optional>
177
+ <optional>
178
+ <attribute name="keep-lines-together">
179
+ <data type="boolean"/>
180
+ </attribute>
181
+ </optional>
182
+ <attribute name="type">
183
+ <choice>
184
+ <value>roman</value>
185
+ <value>alphabet</value>
186
+ <value>arabic</value>
187
+ <value>roman_upper</value>
188
+ <value>alphabet_upper</value>
189
+ </choice>
190
+ </attribute>
191
+ <optional>
192
+ <attribute name="start"/>
193
+ </optional>
194
+ <oneOrMore>
195
+ <ref name="li"/>
196
+ </oneOrMore>
197
+ <zeroOrMore>
198
+ <ref name="note"/>
199
+ </zeroOrMore>
200
+ </element>
201
+ </define>
48
202
  <define name="DocumentType">
49
203
  <choice>
50
204
  <value>brochure</value>
@@ -65,9 +219,9 @@
65
219
  <oneOrMore>
66
220
  <ref name="committee"/>
67
221
  </oneOrMore>
68
- <oneOrMore>
222
+ <zeroOrMore>
69
223
  <ref name="workgroup"/>
70
- </oneOrMore>
224
+ </zeroOrMore>
71
225
  </element>
72
226
  </define>
73
227
  <define name="structuredidentifier">
@@ -98,6 +252,9 @@
98
252
  <optional>
99
253
  <ref name="si-aspect"/>
100
254
  </optional>
255
+ <optional>
256
+ <ref name="meeting-note"/>
257
+ </optional>
101
258
  <ref name="structuredidentifier"/>
102
259
  </define>
103
260
  </include>
@@ -132,30 +289,41 @@
132
289
  </define>
133
290
  <define name="committee">
134
291
  <element name="committee">
135
- <choice>
136
- <value>CGPM</value>
137
- <value>CIPM</value>
138
- <value>BIPM</value>
139
- <value>CCAUV</value>
140
- <value>CCEM</value>
141
- <value>CCL</value>
142
- <value>CCM</value>
143
- <value>CCPR</value>
144
- <value>CCQM</value>
145
- <value>CCRI</value>
146
- <value>CCT</value>
147
- <value>CCTF</value>
148
- <value>CCU</value>
149
- <value>CCL-CCTF</value>
150
- <value>JCGM</value>
151
- <value>JCRB</value>
152
- <value>JCTLM</value>
153
- <value>INetQI</value>
154
- </choice>
292
+ <attribute name="acronym">
293
+ <choice>
294
+ <value>CGPM</value>
295
+ <value>CIPM</value>
296
+ <value>BIPM</value>
297
+ <value>CCAUV</value>
298
+ <value>CCEM</value>
299
+ <value>CCL</value>
300
+ <value>CCM</value>
301
+ <value>CCPR</value>
302
+ <value>CCQM</value>
303
+ <value>CCRI</value>
304
+ <value>CCT</value>
305
+ <value>CCTF</value>
306
+ <value>CCU</value>
307
+ <value>CCL-CCTF</value>
308
+ <value>JCGM</value>
309
+ <value>JCRB</value>
310
+ <value>JCTLM</value>
311
+ <value>INetQI</value>
312
+ </choice>
313
+ </attribute>
314
+ <ref name="LocalizedString"/>
155
315
  </element>
156
316
  </define>
157
317
  <define name="workgroup">
158
318
  <element name="workgroup">
319
+ <optional>
320
+ <attribute name="acronym"/>
321
+ </optional>
322
+ <text/>
323
+ </element>
324
+ </define>
325
+ <define name="meeting-note">
326
+ <element name="meeting-note">
159
327
  <text/>
160
328
  </element>
161
329
  </define>
@@ -175,7 +343,9 @@
175
343
  <optional>
176
344
  <ref name="boilerplate"/>
177
345
  </optional>
178
- <ref name="preface"/>
346
+ <optional>
347
+ <ref name="preface"/>
348
+ </optional>
179
349
  <oneOrMore>
180
350
  <ref name="sections"/>
181
351
  </oneOrMore>