relaton-omg 1.13.0 → 1.16.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,164 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <grammar xmlns="http://relaxng.org/ns/structure/1.0">
3
+ <!--
4
+ Add-ons to biblio.rnc for standoc model: defines the extension point BibDataExtensionType
5
+ of relaton
6
+
7
+ Specialisations as for biblio.rnc. Extension point can be redefined completely for a flavour of standoc
8
+ (SDO); but other elements in Bibdata can only be extended (more specialised vocabularies for Bibdata)
9
+ -->
10
+ <include href="biblio.rng">
11
+ <define name="BibData">
12
+ <ref name="BibliographicItem"/>
13
+ <optional>
14
+ <ref name="ext"/>
15
+ </optional>
16
+ </define>
17
+ </include>
18
+ <define name="ext">
19
+ <element name="ext">
20
+ <ref name="BibDataExtensionType"/>
21
+ </element>
22
+ </define>
23
+ <define name="BibDataExtensionType">
24
+ <optional>
25
+ <attribute name="schema-version"/>
26
+ </optional>
27
+ <ref name="doctype"/>
28
+ <optional>
29
+ <ref name="docsubtype"/>
30
+ </optional>
31
+ <optional>
32
+ <ref name="editorialgroup"/>
33
+ </optional>
34
+ <zeroOrMore>
35
+ <ref name="ics"/>
36
+ </zeroOrMore>
37
+ <zeroOrMore>
38
+ <ref name="structuredidentifier"/>
39
+ </zeroOrMore>
40
+ </define>
41
+ <define name="doctype">
42
+ <element name="doctype">
43
+ <optional>
44
+ <attribute name="abbreviation"/>
45
+ </optional>
46
+ <ref name="DocumentType"/>
47
+ </element>
48
+ </define>
49
+ <define name="DocumentType">
50
+ <text/>
51
+ </define>
52
+ <define name="docsubtype">
53
+ <element name="subdoctype">
54
+ <ref name="DocumentSubtype"/>
55
+ </element>
56
+ </define>
57
+ <define name="DocumentSubtype">
58
+ <text/>
59
+ </define>
60
+ <define name="editorialgroup">
61
+ <element name="editorialgroup">
62
+ <oneOrMore>
63
+ <ref name="technical-committee"/>
64
+ </oneOrMore>
65
+ </element>
66
+ </define>
67
+ <define name="technical-committee">
68
+ <element name="technical-committee">
69
+ <ref name="IsoWorkgroup"/>
70
+ </element>
71
+ </define>
72
+ <define name="IsoWorkgroup">
73
+ <optional>
74
+ <attribute name="number"/>
75
+ </optional>
76
+ <optional>
77
+ <attribute name="type"/>
78
+ </optional>
79
+ <optional>
80
+ <attribute name="identifier"/>
81
+ </optional>
82
+ <optional>
83
+ <attribute name="prefix"/>
84
+ </optional>
85
+ <text/>
86
+ </define>
87
+ <define name="ics">
88
+ <element name="ics">
89
+ <element name="code">
90
+ <text/>
91
+ </element>
92
+ <optional>
93
+ <element name="text">
94
+ <text/>
95
+ </element>
96
+ </optional>
97
+ </element>
98
+ </define>
99
+ <define name="structuredidentifier">
100
+ <element name="structuredidentifier">
101
+ <optional>
102
+ <attribute name="type"/>
103
+ </optional>
104
+ <oneOrMore>
105
+ <element name="agency">
106
+ <text/>
107
+ </element>
108
+ </oneOrMore>
109
+ <optional>
110
+ <element name="class">
111
+ <text/>
112
+ </element>
113
+ </optional>
114
+ <element name="docnumber">
115
+ <text/>
116
+ </element>
117
+ <optional>
118
+ <element name="partnumber">
119
+ <text/>
120
+ </element>
121
+ </optional>
122
+ <optional>
123
+ <element name="edition">
124
+ <text/>
125
+ </element>
126
+ </optional>
127
+ <optional>
128
+ <element name="version">
129
+ <text/>
130
+ </element>
131
+ </optional>
132
+ <optional>
133
+ <element name="supplementtype">
134
+ <text/>
135
+ </element>
136
+ </optional>
137
+ <optional>
138
+ <element name="supplementnumber">
139
+ <text/>
140
+ </element>
141
+ </optional>
142
+ <optional>
143
+ <element name="amendment">
144
+ <text/>
145
+ </element>
146
+ </optional>
147
+ <optional>
148
+ <element name="corrigendum">
149
+ <text/>
150
+ </element>
151
+ </optional>
152
+ <optional>
153
+ <element name="language">
154
+ <text/>
155
+ </element>
156
+ </optional>
157
+ <optional>
158
+ <element name="year">
159
+ <text/>
160
+ </element>
161
+ </optional>
162
+ </element>
163
+ </define>
164
+ </grammar>
data/grammars/biblio.rng CHANGED
@@ -33,9 +33,10 @@
33
33
  <param name="pattern">([\+\-]?\d{4})((-?)((0[1-9]|1[0-2])((-?)([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6]))))?</param>
34
34
  </data>
35
35
  </define>
36
- <start>
37
- <ref name="bibitem"/>
38
- </start>
36
+ <!-- start = bibitem -->
37
+ <define name="BibData">
38
+ <ref name="BibliographicItem"/>
39
+ </define>
39
40
  <define name="status">
40
41
  <element name="status">
41
42
  <ref name="stage"/>
@@ -73,8 +74,14 @@
73
74
  <text/>
74
75
  </element>
75
76
  </define>
76
- <define name="script">
77
+ <define name="locale">
77
78
  <a:documentation>ISO-639</a:documentation>
79
+ <element name="locale">
80
+ <text/>
81
+ </element>
82
+ </define>
83
+ <define name="script">
84
+ <a:documentation>ISO-3166</a:documentation>
78
85
  <element name="script">
79
86
  <text/>
80
87
  </element>
@@ -93,6 +100,9 @@
93
100
  <!-- multiple languages and scripts possible: comma delimit them if so -->
94
101
  <attribute name="language"/>
95
102
  </optional>
103
+ <optional>
104
+ <attribute name="locale"/>
105
+ </optional>
96
106
  <optional>
97
107
  <attribute name="script"/>
98
108
  </optional>
@@ -136,6 +146,9 @@
136
146
  <!-- multiple languages and scripts possible: comma delimit them if so -->
137
147
  <attribute name="language"/>
138
148
  </optional>
149
+ <optional>
150
+ <attribute name="locale"/>
151
+ </optional>
139
152
  <optional>
140
153
  <attribute name="script"/>
141
154
  </optional>
@@ -158,27 +171,30 @@
158
171
  </define>
159
172
  <define name="contributor">
160
173
  <element name="contributor">
161
- <zeroOrMore>
174
+ <oneOrMore>
162
175
  <ref name="role"/>
163
- </zeroOrMore>
176
+ </oneOrMore>
164
177
  <ref name="ContributorInfo"/>
165
178
  </element>
166
179
  </define>
167
180
  <define name="role">
168
181
  <element name="role">
169
- <optional>
170
- <attribute name="type">
171
- <choice>
172
- <value>author</value>
173
- <value>performer</value>
174
- <value>publisher</value>
175
- <value>editor</value>
176
- <value>adapter</value>
177
- <value>translator</value>
178
- <value>distributor</value>
179
- </choice>
180
- </attribute>
181
- </optional>
182
+ <attribute name="type">
183
+ <choice>
184
+ <value>author</value>
185
+ <value>performer</value>
186
+ <value>publisher</value>
187
+ <value>editor</value>
188
+ <value>adapter</value>
189
+ <value>translator</value>
190
+ <value>distributor</value>
191
+ <value>realizer</value>
192
+ <value>owner</value>
193
+ <value>authorizer</value>
194
+ <value>enabler</value>
195
+ <value>subject</value>
196
+ </choice>
197
+ </attribute>
182
198
  <zeroOrMore>
183
199
  <ref name="roledescription"/>
184
200
  </zeroOrMore>
@@ -200,6 +216,9 @@
200
216
  <optional>
201
217
  <ref name="fullname"/>
202
218
  </optional>
219
+ <zeroOrMore>
220
+ <ref name="credential"/>
221
+ </zeroOrMore>
203
222
  <zeroOrMore>
204
223
  <ref name="affiliation"/>
205
224
  </zeroOrMore>
@@ -216,6 +235,11 @@
216
235
  <ref name="FullNameType"/>
217
236
  </element>
218
237
  </define>
238
+ <define name="credential">
239
+ <element name="credential">
240
+ <text/>
241
+ </element>
242
+ </define>
219
243
  <define name="FullNameType">
220
244
  <choice>
221
245
  <group>
@@ -289,7 +313,9 @@
289
313
  <zeroOrMore>
290
314
  <ref name="affiliationdescription"/>
291
315
  </zeroOrMore>
292
- <ref name="organization"/>
316
+ <optional>
317
+ <ref name="organization"/>
318
+ </optional>
293
319
  </element>
294
320
  </define>
295
321
  <define name="affiliationname">
@@ -500,6 +526,17 @@
500
526
  </define>
501
527
  <define name="localityStack">
502
528
  <element name="localityStack">
529
+ <optional>
530
+ <attribute name="connective">
531
+ <choice>
532
+ <value>and</value>
533
+ <value>or</value>
534
+ <value>from</value>
535
+ <value>to</value>
536
+ <value/>
537
+ </choice>
538
+ </attribute>
539
+ </optional>
503
540
  <zeroOrMore>
504
541
  <ref name="locality"/>
505
542
  </zeroOrMore>
@@ -512,6 +549,17 @@
512
549
  </define>
513
550
  <define name="sourceLocalityStack">
514
551
  <element name="sourceLocalityStack">
552
+ <optional>
553
+ <attribute name="connective">
554
+ <choice>
555
+ <value>and</value>
556
+ <value>or</value>
557
+ <value>from</value>
558
+ <value>to</value>
559
+ <value/>
560
+ </choice>
561
+ </attribute>
562
+ </optional>
515
563
  <zeroOrMore>
516
564
  <ref name="sourceLocality"/>
517
565
  </zeroOrMore>
@@ -614,6 +662,9 @@
614
662
  <ref name="BibItemType"/>
615
663
  </attribute>
616
664
  </optional>
665
+ <optional>
666
+ <attribute name="schema-version"/>
667
+ </optional>
617
668
  <optional>
618
669
  <ref name="fetched"/>
619
670
  </optional>
@@ -650,6 +701,9 @@
650
701
  <zeroOrMore>
651
702
  <ref name="language"/>
652
703
  </zeroOrMore>
704
+ <zeroOrMore>
705
+ <ref name="locale"/>
706
+ </zeroOrMore>
653
707
  <zeroOrMore>
654
708
  <ref name="script"/>
655
709
  </zeroOrMore>
@@ -705,6 +759,9 @@
705
759
  <ref name="BibItemType"/>
706
760
  </attribute>
707
761
  </optional>
762
+ <optional>
763
+ <attribute name="schema-version"/>
764
+ </optional>
708
765
  <optional>
709
766
  <ref name="fetched"/>
710
767
  </optional>
@@ -741,6 +798,9 @@
741
798
  <zeroOrMore>
742
799
  <ref name="language"/>
743
800
  </zeroOrMore>
801
+ <zeroOrMore>
802
+ <ref name="locale"/>
803
+ </zeroOrMore>
744
804
  <zeroOrMore>
745
805
  <ref name="script"/>
746
806
  </zeroOrMore>
@@ -854,6 +914,15 @@
854
914
  <optional>
855
915
  <attribute name="type"/>
856
916
  </optional>
917
+ <optional>
918
+ <attribute name="language"/>
919
+ </optional>
920
+ <optional>
921
+ <attribute name="locale"/>
922
+ </optional>
923
+ <optional>
924
+ <attribute name="script"/>
925
+ </optional>
857
926
  <data type="anyURI"/>
858
927
  </define>
859
928
  <define name="DateType">
@@ -882,6 +951,7 @@
882
951
  <value>vote-started</value>
883
952
  <value>vote-ended</value>
884
953
  <value>announced</value>
954
+ <value>stable-until</value>
885
955
  </choice>
886
956
  </define>
887
957
  <define name="bdate">
@@ -930,6 +1000,9 @@
930
1000
  <optional>
931
1001
  <attribute name="language"/>
932
1002
  </optional>
1003
+ <optional>
1004
+ <attribute name="locale"/>
1005
+ </optional>
933
1006
  <optional>
934
1007
  <attribute name="script"/>
935
1008
  </optional>
@@ -1210,7 +1283,7 @@
1210
1283
  <value>mergedInto</value>
1211
1284
  <value>splits</value>
1212
1285
  <value>splitInto</value>
1213
- <value>instance</value>
1286
+ <value>instanceOf</value>
1214
1287
  <value>hasInstance</value>
1215
1288
  <value>exemplarOf</value>
1216
1289
  <value>hasExemplar</value>
@@ -1253,7 +1326,7 @@
1253
1326
  <value>commentaryOf</value>
1254
1327
  <value>hasCommentary</value>
1255
1328
  <value>related</value>
1256
- <value>complements</value>
1329
+ <value>hasComplement</value>
1257
1330
  <value>complementOf</value>
1258
1331
  <value>obsoletes</value>
1259
1332
  <value>obsoletedBy</value>
@@ -0,0 +1,11 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <grammar xmlns="http://relaxng.org/ns/structure/1.0">
3
+ <include href="basicdoc.rng"/>
4
+ <include href="relaton-omg.rng"/>
5
+ <start>
6
+ <choice>
7
+ <ref name="bibitem"/>
8
+ <ref name="bibdata"/>
9
+ </choice>
10
+ </start>
11
+ </grammar>
@@ -0,0 +1,4 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <grammar xmlns="http://relaxng.org/ns/structure/1.0">
3
+ <include href="biblio-standoc.rng"/>
4
+ </grammar>
@@ -22,6 +22,15 @@ module RelatonOmg
22
22
  end
23
23
  end
24
24
 
25
+ #
26
+ # Fetches flavor shcema version from XML
27
+ #
28
+ # @return [String] flavor shcema version
29
+ #
30
+ def ext_schema
31
+ @ext_schema ||= schema_versions["relaton-model-omg"]
32
+ end
33
+
25
34
  # @param opts [Hash]
26
35
  # @option opts [Nokogiri::XML::Builder] :builder XML builder
27
36
  # @option opts [Boolean] :bibdata
@@ -13,19 +13,19 @@ module RelatonOmg
13
13
  # @param code [String]
14
14
  # @param date [String, NilClass] year
15
15
  # @param opts [Hash]
16
- # @return [RelatonIetf::IetfBibliographicItem]
16
+ # @return [RelatonOmg::OmgBibliographicItem]
17
17
  def get(code, date, opts)
18
18
  ::RelatonOmg::OmgBibliography.get(code, date, opts)
19
19
  end
20
20
 
21
21
  # @param xml [String]
22
- # @return [RelatonIetf::IetfBibliographicItem]
22
+ # @return [RelatonOmg::OmgBibliographicItem]
23
23
  def from_xml(xml)
24
24
  ::RelatonOmg::XMLParser.from_xml xml
25
25
  end
26
26
 
27
27
  # @param hash [Hash]
28
- # @return [RelatonIetf::IetfBibliographicItem]
28
+ # @return [RelatonOmg::OmgBibliographicItem]
29
29
  def hash_to_bib(hash)
30
30
  # item_hash = ::RelatonOmg::HashConverter.hash_to_bib(hash)
31
31
  ::RelatonOmg::OmgBibliographicItem.from_hash hash
@@ -1,3 +1,3 @@
1
1
  module RelatonOmg
2
- VERSION = "1.13.0".freeze
2
+ VERSION = "1.16.0".freeze
3
3
  end
data/relaton_omg.gemspec CHANGED
@@ -12,7 +12,7 @@ Gem::Specification.new do |spec|
12
12
  "using the IsoBibliographicItem model"
13
13
  spec.homepage = "https://github.com/relaton/relaton-ogn"
14
14
  spec.license = "BSD-2-Clause"
15
- spec.required_ruby_version = Gem::Requirement.new(">= 2.5.0")
15
+ spec.required_ruby_version = Gem::Requirement.new(">= 2.7.0")
16
16
 
17
17
  spec.metadata["homepage_uri"] = spec.homepage
18
18
  spec.metadata["source_code_uri"] = "https://github.com/relaton/relaton-ogn"
@@ -26,13 +26,5 @@ Gem::Specification.new do |spec|
26
26
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
27
27
  spec.require_paths = ["lib"]
28
28
 
29
- spec.add_development_dependency "byebug"
30
- spec.add_development_dependency "equivalent-xml", "~> 0.6"
31
- spec.add_development_dependency "pry-byebug"
32
- spec.add_development_dependency "ruby-jing"
33
- spec.add_development_dependency "simplecov"
34
- spec.add_development_dependency "vcr"
35
- spec.add_development_dependency "webmock"
36
-
37
- spec.add_dependency "relaton-bib", "~> 1.13.0"
29
+ spec.add_dependency "relaton-bib", "~> 1.16.0"
38
30
  end
metadata CHANGED
@@ -1,127 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: relaton-omg
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.13.0
4
+ version: 1.16.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-08-21 00:00:00.000000000 Z
11
+ date: 2023-09-03 00:00:00.000000000 Z
12
12
  dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: byebug
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - ">="
18
- - !ruby/object:Gem::Version
19
- version: '0'
20
- type: :development
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - ">="
25
- - !ruby/object:Gem::Version
26
- version: '0'
27
- - !ruby/object:Gem::Dependency
28
- name: equivalent-xml
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - "~>"
32
- - !ruby/object:Gem::Version
33
- version: '0.6'
34
- type: :development
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - "~>"
39
- - !ruby/object:Gem::Version
40
- version: '0.6'
41
- - !ruby/object:Gem::Dependency
42
- name: pry-byebug
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - ">="
46
- - !ruby/object:Gem::Version
47
- version: '0'
48
- type: :development
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - ">="
53
- - !ruby/object:Gem::Version
54
- version: '0'
55
- - !ruby/object:Gem::Dependency
56
- name: ruby-jing
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - ">="
60
- - !ruby/object:Gem::Version
61
- version: '0'
62
- type: :development
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - ">="
67
- - !ruby/object:Gem::Version
68
- version: '0'
69
- - !ruby/object:Gem::Dependency
70
- name: simplecov
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - ">="
74
- - !ruby/object:Gem::Version
75
- version: '0'
76
- type: :development
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - ">="
81
- - !ruby/object:Gem::Version
82
- version: '0'
83
- - !ruby/object:Gem::Dependency
84
- name: vcr
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - ">="
88
- - !ruby/object:Gem::Version
89
- version: '0'
90
- type: :development
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - ">="
95
- - !ruby/object:Gem::Version
96
- version: '0'
97
- - !ruby/object:Gem::Dependency
98
- name: webmock
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - ">="
102
- - !ruby/object:Gem::Version
103
- version: '0'
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - ">="
109
- - !ruby/object:Gem::Version
110
- version: '0'
111
13
  - !ruby/object:Gem::Dependency
112
14
  name: relaton-bib
113
15
  requirement: !ruby/object:Gem::Requirement
114
16
  requirements:
115
17
  - - "~>"
116
18
  - !ruby/object:Gem::Version
117
- version: 1.13.0
19
+ version: 1.16.0
118
20
  type: :runtime
119
21
  prerelease: false
120
22
  version_requirements: !ruby/object:Gem::Requirement
121
23
  requirements:
122
24
  - - "~>"
123
25
  - !ruby/object:Gem::Version
124
- version: 1.13.0
26
+ version: 1.16.0
125
27
  description: 'RelatonOmg: retrieve OMG Standards for bibliographic using the IsoBibliographicItem
126
28
  model'
127
29
  email:
@@ -131,6 +33,7 @@ extensions: []
131
33
  extra_rdoc_files: []
132
34
  files:
133
35
  - ".github/workflows/rake.yml"
36
+ - ".github/workflows/release.yml"
134
37
  - ".gitignore"
135
38
  - ".rspec"
136
39
  - ".rubocop.yml"
@@ -142,7 +45,11 @@ files:
142
45
  - bin/console
143
46
  - bin/rspec
144
47
  - bin/setup
48
+ - grammars/basicdoc.rng
49
+ - grammars/biblio-standoc.rng
145
50
  - grammars/biblio.rng
51
+ - grammars/relaton-omg-compile.rng
52
+ - grammars/relaton-omg.rng
146
53
  - lib/relaton_omg.rb
147
54
  - lib/relaton_omg/hash_converter.rb
148
55
  - lib/relaton_omg/omg_bibliographic_item.rb
@@ -158,7 +65,7 @@ licenses:
158
65
  metadata:
159
66
  homepage_uri: https://github.com/relaton/relaton-ogn
160
67
  source_code_uri: https://github.com/relaton/relaton-ogn
161
- post_install_message:
68
+ post_install_message:
162
69
  rdoc_options: []
163
70
  require_paths:
164
71
  - lib
@@ -166,15 +73,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
166
73
  requirements:
167
74
  - - ">="
168
75
  - !ruby/object:Gem::Version
169
- version: 2.5.0
76
+ version: 2.7.0
170
77
  required_rubygems_version: !ruby/object:Gem::Requirement
171
78
  requirements:
172
79
  - - ">="
173
80
  - !ruby/object:Gem::Version
174
81
  version: '0'
175
82
  requirements: []
176
- rubygems_version: 3.2.3
177
- signing_key:
83
+ rubygems_version: 3.3.26
84
+ signing_key:
178
85
  specification_version: 4
179
86
  summary: 'RelatonOmg: retrieve OMG Standards for bibliographic using the IsoBibliographicItem
180
87
  model'