oddb2xml 1.2.2 → 1.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/History.txt CHANGED
@@ -1,3 +1,12 @@
1
+ === 1.2.3 / 25.01.2013
2
+
3
+ * Change CBGG value as 3
4
+ * Add CLAG value from @fridges
5
+ * Change dat as only a file with `-a nonpharma`
6
+ * Update CKZL value with sl_entry or not
7
+ * Update to use also BM_update from ywesee
8
+ * Update to use also category from Packungen.xls
9
+
1
10
  === 1.2.2 / 24.01.2013
2
11
 
3
12
  * Improve compressor for dat
data/README.md CHANGED
@@ -1,17 +1,40 @@
1
1
  # oddb2xml
2
2
 
3
- oddb2xml, creates xml files using swissINDEX, BAG-XML and Swissmedic.
3
+ * oddb2xml -a nonpharma -o fi
4
+
5
+ creates the following xml files:
6
+
7
+ * oddb_substance.xml
8
+ * oddb_limitation.xml
9
+ * oddb_interaction.xml
10
+ * oddb_code.xml
11
+ * oddb_product.xml
12
+ * oddb_article.xml
13
+ * oddb_fi.xml
14
+ * oddb_fi_product.xml
15
+
16
+ and
17
+
18
+ * oddb2xml -f dat
19
+ * oddb2xml -f dat -a nonpharma
20
+
21
+ creates .dat files according to ([IGM-11](http://dev.ywesee.com/uploads/att/IGM.pdf))
22
+
23
+ * oddb.dat
24
+ * oddb_with_migel.dat
25
+
26
+ the files are using [swissINDEX](http://www.refdata.ch/downloads/company/download/swissindex_TechnischeBeschreibung.pdf), [BAG-XML](http://bag.e-mediat.net/SL2007.Web.External/Default.aspx?webgrab=ignore) and [Swissmedic](http://www.swissmedic.ch/daten/00080/00251/index.html?lang=de) as sources.
4
27
 
5
28
  The following additional data is in the files:
6
29
 
7
- * Wirkstoffe
8
- * Kühlkette (gemäss Swissmedic)
9
- * Orphan Drugs (gemäss Swissmedic)
10
- * FI (de und fr)
11
- * Limitation-Texte (gemäss BAG XML)
12
- * Interaktionen (EPha.ch)
13
- * Betäubungsmittel und psychotrope Stoffe (gemäss Swissmedic)
14
- * Non-Pharma from Refdata and Suppliers
30
+ * [Wirkstoffe](http://bag.e-mediat.net/SL2007.Web.External/File.axd?file=XMLPublications.zip) (BAG XML)
31
+ * [Kühlkette](http://www.swissmedic.ch/daten/00080/00254/index.html?lang=de&download=NHzLpZeg7t,lnp6I0NTU042l2Z6ln1acy4Zn4Z2qZpnO2Yuq2Z6gpJCDdH57e2ym162epYbg2c_JjKbNoKOn6A--) (Swissmedic)
32
+ * [Orphan Drugs](http://www.swissmedic.ch/daten/00081/index.html?lang=de&download=NHzLpZeg7t,lnp6I0NTU042l2Z6ln1acy4Zn4Z2qZpnO2Yuq2Z6gpJCDdH55f2ym162epYbg2c_JjKbNoKSn6A--&.xls) (Swissmedic)
33
+ * [FI: de, fr](http://download.swissmedicinfo.ch) (Swissmedic)
34
+ * Limitation-Texte (BAG XML)
35
+ * Interaktionen [EPha.ch](http://epha.ch)
36
+ * [Betäubungsmittel](http://www.swissmedic.ch/produktbereiche/00447/00536/index.html?lang=de&download=NHzLpZeg7t,lnp6I0NTU042l2Z6ln1acy4Zn4Z2qZpnO2Yuq2Z6gpJCDdH1,fWym162epYbg2c_JjKbNoKSn6A--&.pdf) und psychotrope Stoffe (Swissmedic)
37
+ * Non-Pharma from Refdata and Suppliers (swissINDEX)
15
38
 
16
39
  ## usage
17
40
 
@@ -19,25 +42,26 @@ see `--help`.
19
42
 
20
43
  ```
21
44
  $ oddb2xml --help
22
- oddb2xml ver.1.0.7
45
+ oddb2xml ver.1.2.2
23
46
  Usage:
24
47
  oddb2xml [option]
25
- -c F, --compress=F Compress format F. {tar.gz|zip}
26
48
  -a T, --append=T Additional target. T, only 'nonpharma' is available.
49
+ -c F, --compress=F Compress format F. {tar.gz|zip}
50
+ -f dat, create dat files according to IGM-11 standard.
51
+ -h, --help Show this help message.
52
+ -o fi, create fi xml files.
27
53
  -t S, --tag-suffix=S XML tag suffix S. Default is none. [A-z0-9_]
28
54
  If S is given, it is also used as prefix of filename.
29
- -h, --help Show this help message.
30
55
  ```
31
56
 
32
57
 
33
- ## example
34
-
35
- option examples.
58
+ ## Option examples
36
59
 
37
60
  ```
38
- $ oddb2xml # => oddb_article.xml, oddb_product.xml, oddb_substance.xml
39
61
  $ oddb2xml -t md # => md_article.xml, md_product.xml, md_substance.xml
40
62
  $ oddb2xml -a nonpharma -t md -c tar.gz # => md_xml_dd.mm.yyyy_hh.mm.tar.gz
63
+ $ oddb2xml -f dat # => oddb.dat
64
+ $ oddb2xml -f dat -a nonpharma # => oddb_with_migel.dat
41
65
  ```
42
66
 
43
67
  output.
@@ -50,6 +74,26 @@ FR
50
74
  Pharma products: 14801
51
75
  ```
52
76
 
77
+ ## XSD files
78
+ If you need the XSD files, generate them yourself using the javabeans tool:
79
+
80
+ * http://xmlbeans.apache.org/docs/2.0.0/guide/tools.html#inst2xsd
81
+
82
+ this will generate you a valid XSD file that can be used to validate against the XML file.
83
+
84
+ ## XML files
85
+
86
+ xml files generated are:
87
+
88
+ * oddb_substance.xml
89
+ * oddb_limitation.xml
90
+ * oddb_interaction.xml
91
+ * oddb_code.xml
92
+ * oddb_product.xml
93
+ * oddb_article.xml
94
+ * oddb_fi.xml
95
+ * oddb_fi_product.xml
96
+
53
97
  ### article.xml
54
98
 
55
99
  oddb2xml creates article.xml as oddb_article.xml by default.
@@ -161,20 +205,32 @@ product.xml has relation to substance as `<SUBNO>`.
161
205
  </SUBSTANCE>
162
206
  ```
163
207
 
164
- ## About SSLv3 cert
208
+ ## SSLv3 cert for Windows Users
165
209
 
166
- Some websites need SSLv3 connection.
210
+ Some websites need SSLv3 connection.
167
211
  If you don't have these root CA files (x509), Please install these Certificates before running.
168
- Please confirm wit `ruby -ropenssl -e 'p OpenSSL::X509::DEFAULT_CERT_FILE'`.
169
-
170
212
  see [cURL Website](http://curl.haxx.se/ca/)
171
213
 
214
+ You can confirm wit `ruby -ropenssl -e 'p OpenSSL::X509::DEFAULT_CERT_FILE'`.
172
215
 
173
- ### Windows User
216
+ ### Windows User: Making your SSL Certificate permanent via your PATH
174
217
 
175
218
  1. Download this [cacert.pem](http://curl.haxx.se/ca/cacert.pem) (cURL) into your HOME directory.
176
- 1. Then Choose Menu "Control Panel" > "System" > "Advanced system settings" (This open "System Properties" Window.)
177
- 2. Click "Advanced" Tab.
178
- 3. Click "Environment Variables" button.
179
- 4. Add set variable entry "SSL\_CERT\_FILE=%HOMEPATH%\cacert.pem" (Variable name: SSL\_CCERT\_FILE, Variable value: %HOMEPATH%\cacert.pem) with "New..." button into upper are "User variables for xxx"
180
- 5. (Please do not remove this cacert.pem. All SSLv3 connections use this file.)
219
+ * or directly select cacert.pem from your oddb2xml-x.x.x gems directory.
220
+ * tools/cacert.pem is bundled with the oddb2xml gem.
221
+ 2. Then Choose Menu "Control Panel" > "System" > "Advanced system settings"
222
+ * This opens the "System Properties" Window.
223
+ 3. Click "Advanced" Tab.
224
+ 4. Click "Environment Variables" button.
225
+ 5. Add set variable entry "SSL\_CERT\_FILE=%HOMEPATH%\cacert.pem"
226
+ * Variable name: SSL\_CCERT\_FILE
227
+ * Variable value: %HOMEPATH%\cacert.pem
228
+ * with "New..." button into upper are "User variables for xxx"
229
+ 6. Do not remove this cacert.pem. All SSLv3 connections use this file.
230
+
231
+ ### win_fetch_cacerts.rb
232
+ You can also run
233
+
234
+ * tools/win_fetch_cacerts.rb
235
+
236
+ for your currently open Terminal to download and set the Certificate.
@@ -52,7 +52,8 @@ module Oddb2xml
52
52
  end
53
53
  end
54
54
  private
55
- def prepare_articles
55
+ def prepare_articles(reset=false)
56
+ @articles = nil if reset
56
57
  unless @articles
57
58
  @articles = [] # base is 'DE'
58
59
  @index['DE'].each_pair do |pharmacode, index|
@@ -735,10 +736,16 @@ module Oddb2xml
735
736
  de_pac = obj[:de]
736
737
  # Oddb2tdat.parse
737
738
  if obj[:de][:status] =~ /A|I/
738
- pac = nil
739
+ pac,num = nil, nil
739
740
  if obj[:seq]
740
741
  pac = obj[:seq][:packages][de_pac[:pharmacode]]
741
742
  end
743
+ # :swissmedic_number
744
+ if de_pac[:ean].length == 13
745
+ num = de_pac[:ean][4,8].intern
746
+ elsif pac
747
+ num = pac[:swissmedic_number].intern
748
+ end
742
749
  row << "%#{DAT_LEN[:RECA]}s" % '11'
743
750
  row << "%#{DAT_LEN[:CMUT]}s" % if (phar = de_pac[:pharmacode] and phar.size > 3) # does not check expiration_date
744
751
  obj[:de][:status] == "I" ? '3' : '1'
@@ -753,15 +760,31 @@ module Oddb2xml
753
760
  ).to_s[0, DAT_LEN[:ABEZ]].gsub(/"/, '')
754
761
  row << "%#{DAT_LEN[:PRMO]}s" % (pac ? format_price(pac[:prices][:exf_price][:price].to_s) : ('0' * DAT_LEN[:PRMO]))
755
762
  row << "%#{DAT_LEN[:PRPU]}s" % (pac ? format_price(pac[:prices][:pub_price][:price].to_s) : ('0' * DAT_LEN[:PRPU]))
756
- row << "%#{DAT_LEN[:CKZL]}s" % '3' # sl_entry and lppv
757
- row << "%#{DAT_LEN[:CLAG]}s" % '0'
758
- row << "%#{DAT_LEN[:CBGG]}s" % ((pac && pac[:narcosis_flag] == 'Y') ? '1' : '0')
759
- row << "%#{DAT_LEN[:CIKS]}s" % if (pac && pac[:swissmedic_category] =~ /^[ABCDE]$/)
760
- pac[:swissmedic_category].gsub(/(\+|\s)/, '')
763
+ row << "%#{DAT_LEN[:CKZL]}s" % (pac ? '1' : '3') # sl_entry or not
764
+ row << "%#{DAT_LEN[:CLAG]}s" % if ((num && num.to_s =~ /(\d{5})(\d{3})/) and
765
+ @fridges.include?($1.to_s))
766
+ '1'
767
+ else
768
+ '0'
769
+ end
770
+ row << "%#{DAT_LEN[:CBGG]}s" % if ((pac && pac[:narcosis_flag] == 'Y') or # BAGXml
771
+ (@flags[de_pac[:ean]])) # ywesee BM_update
772
+ '3'
761
773
  else
762
774
  '0'
763
775
  end
764
- row << "%0#{DAT_LEN[:ITHE]}d" % (pac ? format_date(@packs[pac[:swissmedic_number].intern].to_s) : ('0' * DAT_LEN[:ITHE])).to_i
776
+ row << "%#{DAT_LEN[:CIKS]}s" % if (pac && pac[:swissmedic_category] =~ /^[ABCDE]$/) # BAGXml
777
+ pac[:swissmedic_category]
778
+ elsif (@packs[num]) # Packungen.xls
779
+ @packs[num][:swissmedic_category]
780
+ else
781
+ '0'
782
+ end.gsub(/(\+|\s)/, '')
783
+ row << "%0#{DAT_LEN[:ITHE]}d" % if (pac && @packs[num])
784
+ format_date(@packs[num][:ith_swissmedic])
785
+ else
786
+ ('0' * DAT_LEN[:ITHE])
787
+ end.to_i
765
788
  row << "%0#{DAT_LEN[:CEAN]}d" % de_pac[:ean].to_i
766
789
  row << "%#{DAT_LEN[:CMWS]}s" % '2' # pharma
767
790
  rows << row
@@ -770,7 +793,8 @@ module Oddb2xml
770
793
  rows.join("\n")
771
794
  end
772
795
  def build_with_migel_dat
773
- prepare_articles
796
+ reset = true
797
+ prepare_articles(reset)
774
798
  rows = []
775
799
  @articles.each do |obj|
776
800
  row = ''
data/lib/oddb2xml/cli.rb CHANGED
@@ -57,14 +57,6 @@ module Oddb2xml
57
57
  @actions = EphaExtractor.new(str).to_arry
58
58
  end
59
59
  end
60
- # ywesee
61
- threads << Thread.new do
62
- downloader = YweseeBMDownloader.new
63
- str = downloader.download
64
- @mutex.synchronize do
65
- @flags = YweseeBMExtractor.new(str).to_hash
66
- end
67
- end
68
60
  else # dat
69
61
  # swissmedic - package
70
62
  threads << Thread.new do
@@ -75,6 +67,14 @@ module Oddb2xml
75
67
  end
76
68
  end
77
69
  end
70
+ # ywesee
71
+ threads << Thread.new do
72
+ downloader = YweseeBMDownloader.new
73
+ str = downloader.download
74
+ @mutex.synchronize do
75
+ @flags = YweseeBMExtractor.new(str).to_hash
76
+ end
77
+ end
78
78
  # bag
79
79
  threads << Thread.new do
80
80
  downloader = BagXmlDownloader.new(@options)
@@ -129,22 +129,18 @@ module Oddb2xml
129
129
  begin
130
130
  files.each_pair do |sbj, file|
131
131
  builder = Builder.new do |builder|
132
- index = {}
133
- LANGUAGES.each do |lang|
134
- index[lang] = {} unless index[lang]
135
- # TODO
136
- # to fix @index structure
137
- if @options[:format] == :dat
138
- type = (sbj == :dat ? :pharma : :nonpharma)
139
- index[lang] = @index[lang][type]
140
- else
132
+ if @options[:format] != :dat
133
+ index = {}
134
+ LANGUAGES.each do |lang|
135
+ index[lang] = {} unless index[lang]
141
136
  types.each do |type|
142
137
  index[lang].merge!(@index[lang][type]) if @index[lang][type]
143
138
  end
144
139
  end
140
+ builder.index = index
141
+ builder.subject = sbj
145
142
  end
146
- builder.subject = sbj
147
- builder.index = index
143
+ # common sources
148
144
  builder.items = @items
149
145
  builder.flags = @flags
150
146
  # additions
@@ -158,7 +154,17 @@ module Oddb2xml
158
154
  end
159
155
  output = ''
160
156
  if @options[:format] == :dat
161
- output = builder.to_dat
157
+ types.each do |type|
158
+ index = {}
159
+ LANGUAGES.each do |lang|
160
+ index[lang] = @index[lang][type]
161
+ end
162
+ builder.index = index
163
+ _sbj = (type == :pharma ? :dat : :with_migel_dat)
164
+ builder.subject = _sbj
165
+ output << "\n" if _sbj == :nonpharma
166
+ output << builder.to_dat
167
+ end
162
168
  else
163
169
  output = builder.to_xml
164
170
  end
@@ -187,8 +193,8 @@ module Oddb2xml
187
193
  @_files = {}
188
194
  if @options[:format] == :dat
189
195
  @_files[:dat] = "#{prefix}.dat"
190
- if @options[:nonpharma]
191
- @_files[:with_migel_dat] = "#{prefix}_with_migel.dat"
196
+ if @options[:nonpharma] # into one file
197
+ @_files[:dat] = "#{prefix}_with_migel.dat"
192
198
  end
193
199
  else # xml
194
200
  ##
@@ -166,11 +166,15 @@ module Oddb2xml
166
166
  case @type
167
167
  when :packages
168
168
  i_5,i_3 = 0,10 # :swissmedic_number
169
+ cat = 13 # :swissmedic_category
169
170
  ith = 4 # :ith_swissmedic (swissmedic-diff)
170
171
  @sheet.each do |row|
171
172
  no8 = extract_number(row, i_5).to_s + extract_number(row, i_3, /^\d{3}$/).to_s
172
173
  unless no8.empty?
173
- data[no8.intern] = row[ith].to_s
174
+ data[no8.intern] = {
175
+ :ith_swissmedic => row[ith].to_s,
176
+ :swissmedic_category => row[cat].to_s,
177
+ }
174
178
  end
175
179
  end
176
180
  end
@@ -1,3 +1,3 @@
1
1
  module Oddb2xml
2
- VERSION = "1.2.2"
2
+ VERSION = "1.2.3"
3
3
  end
metadata CHANGED
@@ -1,218 +1,168 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: oddb2xml
3
- version: !ruby/object:Gem::Version
4
- hash: 27
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.2.3
5
5
  prerelease:
6
- segments:
7
- - 1
8
- - 2
9
- - 2
10
- version: 1.2.2
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Yasuhiro Asaka, Zeno R.R. Davatz
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2013-01-24 00:00:00 Z
19
- dependencies:
20
- - !ruby/object:Gem::Dependency
12
+ date: 2013-01-25 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
21
15
  name: rubyzip
22
- prerelease: false
23
- requirement: &id001 !ruby/object:Gem::Requirement
16
+ requirement: &12392380 !ruby/object:Gem::Requirement
24
17
  none: false
25
- requirements:
26
- - - ">="
27
- - !ruby/object:Gem::Version
28
- hash: 3
29
- segments:
30
- - 0
31
- version: "0"
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
32
22
  type: :runtime
33
- version_requirements: *id001
34
- - !ruby/object:Gem::Dependency
35
- name: archive-tar-minitar
36
23
  prerelease: false
37
- requirement: &id002 !ruby/object:Gem::Requirement
24
+ version_requirements: *12392380
25
+ - !ruby/object:Gem::Dependency
26
+ name: archive-tar-minitar
27
+ requirement: &12391500 !ruby/object:Gem::Requirement
38
28
  none: false
39
- requirements:
40
- - - ">="
41
- - !ruby/object:Gem::Version
42
- hash: 3
43
- segments:
44
- - 0
45
- version: "0"
29
+ requirements:
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
46
33
  type: :runtime
47
- version_requirements: *id002
48
- - !ruby/object:Gem::Dependency
49
- name: mechanize
50
34
  prerelease: false
51
- requirement: &id003 !ruby/object:Gem::Requirement
35
+ version_requirements: *12391500
36
+ - !ruby/object:Gem::Dependency
37
+ name: mechanize
38
+ requirement: &12390520 !ruby/object:Gem::Requirement
52
39
  none: false
53
- requirements:
54
- - - ">="
55
- - !ruby/object:Gem::Version
56
- hash: 3
57
- segments:
58
- - 0
59
- version: "0"
40
+ requirements:
41
+ - - ! '>='
42
+ - !ruby/object:Gem::Version
43
+ version: '0'
60
44
  type: :runtime
61
- version_requirements: *id003
62
- - !ruby/object:Gem::Dependency
63
- name: nokogiri
64
45
  prerelease: false
65
- requirement: &id004 !ruby/object:Gem::Requirement
46
+ version_requirements: *12390520
47
+ - !ruby/object:Gem::Dependency
48
+ name: nokogiri
49
+ requirement: &12389260 !ruby/object:Gem::Requirement
66
50
  none: false
67
- requirements:
68
- - - ">="
69
- - !ruby/object:Gem::Version
70
- hash: 3
71
- segments:
72
- - 0
73
- version: "0"
51
+ requirements:
52
+ - - ! '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
74
55
  type: :runtime
75
- version_requirements: *id004
76
- - !ruby/object:Gem::Dependency
77
- name: savon
78
56
  prerelease: false
79
- requirement: &id005 !ruby/object:Gem::Requirement
57
+ version_requirements: *12389260
58
+ - !ruby/object:Gem::Dependency
59
+ name: savon
60
+ requirement: &12387620 !ruby/object:Gem::Requirement
80
61
  none: false
81
- requirements:
82
- - - ">="
83
- - !ruby/object:Gem::Version
84
- hash: 3
85
- segments:
86
- - 2
87
- - 0
88
- version: "2.0"
62
+ requirements:
63
+ - - ! '>='
64
+ - !ruby/object:Gem::Version
65
+ version: '2.0'
89
66
  type: :runtime
90
- version_requirements: *id005
91
- - !ruby/object:Gem::Dependency
92
- name: spreadsheet
93
67
  prerelease: false
94
- requirement: &id006 !ruby/object:Gem::Requirement
68
+ version_requirements: *12387620
69
+ - !ruby/object:Gem::Dependency
70
+ name: spreadsheet
71
+ requirement: &12386440 !ruby/object:Gem::Requirement
95
72
  none: false
96
- requirements:
97
- - - ">="
98
- - !ruby/object:Gem::Version
99
- hash: 3
100
- segments:
101
- - 0
102
- version: "0"
73
+ requirements:
74
+ - - ! '>='
75
+ - !ruby/object:Gem::Version
76
+ version: '0'
103
77
  type: :runtime
104
- version_requirements: *id006
105
- - !ruby/object:Gem::Dependency
106
- name: rspec
107
78
  prerelease: false
108
- requirement: &id007 !ruby/object:Gem::Requirement
79
+ version_requirements: *12386440
80
+ - !ruby/object:Gem::Dependency
81
+ name: rspec
82
+ requirement: &12385520 !ruby/object:Gem::Requirement
109
83
  none: false
110
- requirements:
111
- - - ">="
112
- - !ruby/object:Gem::Version
113
- hash: 3
114
- segments:
115
- - 0
116
- version: "0"
84
+ requirements:
85
+ - - ! '>='
86
+ - !ruby/object:Gem::Version
87
+ version: '0'
117
88
  type: :development
118
- version_requirements: *id007
119
- - !ruby/object:Gem::Dependency
120
- name: webmock
121
89
  prerelease: false
122
- requirement: &id008 !ruby/object:Gem::Requirement
90
+ version_requirements: *12385520
91
+ - !ruby/object:Gem::Dependency
92
+ name: webmock
93
+ requirement: &12384700 !ruby/object:Gem::Requirement
123
94
  none: false
124
- requirements:
125
- - - ">="
126
- - !ruby/object:Gem::Version
127
- hash: 3
128
- segments:
129
- - 0
130
- version: "0"
95
+ requirements:
96
+ - - ! '>='
97
+ - !ruby/object:Gem::Version
98
+ version: '0'
131
99
  type: :development
132
- version_requirements: *id008
133
- - !ruby/object:Gem::Dependency
134
- name: ZenTest
135
100
  prerelease: false
136
- requirement: &id009 !ruby/object:Gem::Requirement
101
+ version_requirements: *12384700
102
+ - !ruby/object:Gem::Dependency
103
+ name: ZenTest
104
+ requirement: &12383480 !ruby/object:Gem::Requirement
137
105
  none: false
138
- requirements:
139
- - - ">="
140
- - !ruby/object:Gem::Version
141
- hash: 3
142
- segments:
143
- - 0
144
- version: "0"
106
+ requirements:
107
+ - - ! '>='
108
+ - !ruby/object:Gem::Version
109
+ version: '0'
145
110
  type: :development
146
- version_requirements: *id009
147
- - !ruby/object:Gem::Dependency
148
- name: hoe
149
111
  prerelease: false
150
- requirement: &id010 !ruby/object:Gem::Requirement
112
+ version_requirements: *12383480
113
+ - !ruby/object:Gem::Dependency
114
+ name: hoe
115
+ requirement: &12382600 !ruby/object:Gem::Requirement
151
116
  none: false
152
- requirements:
153
- - - ">="
154
- - !ruby/object:Gem::Version
155
- hash: 15
156
- segments:
157
- - 3
158
- - 4
159
- version: "3.4"
117
+ requirements:
118
+ - - ! '>='
119
+ - !ruby/object:Gem::Version
120
+ version: '3.4'
160
121
  type: :development
161
- version_requirements: *id010
162
- - !ruby/object:Gem::Dependency
163
- name: rdoc
164
122
  prerelease: false
165
- requirement: &id011 !ruby/object:Gem::Requirement
123
+ version_requirements: *12382600
124
+ - !ruby/object:Gem::Dependency
125
+ name: rdoc
126
+ requirement: &12381680 !ruby/object:Gem::Requirement
166
127
  none: false
167
- requirements:
168
- - - ">="
169
- - !ruby/object:Gem::Version
170
- hash: 3
171
- segments:
172
- - 0
173
- version: "0"
128
+ requirements:
129
+ - - ! '>='
130
+ - !ruby/object:Gem::Version
131
+ version: '0'
174
132
  type: :development
175
- version_requirements: *id011
176
- - !ruby/object:Gem::Dependency
177
- name: rdoc
178
133
  prerelease: false
179
- requirement: &id012 !ruby/object:Gem::Requirement
134
+ version_requirements: *12381680
135
+ - !ruby/object:Gem::Dependency
136
+ name: rdoc
137
+ requirement: &12380280 !ruby/object:Gem::Requirement
180
138
  none: false
181
- requirements:
139
+ requirements:
182
140
  - - ~>
183
- - !ruby/object:Gem::Version
184
- hash: 19
185
- segments:
186
- - 3
187
- - 10
188
- version: "3.10"
141
+ - !ruby/object:Gem::Version
142
+ version: '3.10'
189
143
  type: :development
190
- version_requirements: *id012
191
- - !ruby/object:Gem::Dependency
192
- name: hoe
193
144
  prerelease: false
194
- requirement: &id013 !ruby/object:Gem::Requirement
145
+ version_requirements: *12380280
146
+ - !ruby/object:Gem::Dependency
147
+ name: hoe
148
+ requirement: &12379200 !ruby/object:Gem::Requirement
195
149
  none: false
196
- requirements:
150
+ requirements:
197
151
  - - ~>
198
- - !ruby/object:Gem::Version
199
- hash: 25
200
- segments:
201
- - 2
202
- - 13
203
- version: "2.13"
152
+ - !ruby/object:Gem::Version
153
+ version: '2.13'
204
154
  type: :development
205
- version_requirements: *id013
155
+ prerelease: false
156
+ version_requirements: *12379200
206
157
  description: oddb2xml creates xml files using swissINDEX, BAG-XML and Swissmedic.
207
158
  email: yasaka@ywesee.com, zdavatz@ywesee.com
208
- executables:
159
+ executables:
209
160
  - oddb2xml
210
161
  extensions: []
211
-
212
- extra_rdoc_files:
162
+ extra_rdoc_files:
213
163
  - History.txt
214
164
  - Manifest.txt
215
- files:
165
+ files:
216
166
  - .gitignore
217
167
  - .rspec
218
168
  - Gemfile
@@ -263,37 +213,28 @@ files:
263
213
  - .gemtest
264
214
  homepage:
265
215
  licenses: []
266
-
267
216
  post_install_message:
268
- rdoc_options:
217
+ rdoc_options:
269
218
  - --main
270
219
  - README.txt
271
- require_paths:
220
+ require_paths:
272
221
  - lib
273
- required_ruby_version: !ruby/object:Gem::Requirement
222
+ required_ruby_version: !ruby/object:Gem::Requirement
274
223
  none: false
275
- requirements:
276
- - - ">="
277
- - !ruby/object:Gem::Version
278
- hash: 3
279
- segments:
280
- - 0
281
- version: "0"
282
- required_rubygems_version: !ruby/object:Gem::Requirement
224
+ requirements:
225
+ - - ! '>='
226
+ - !ruby/object:Gem::Version
227
+ version: '0'
228
+ required_rubygems_version: !ruby/object:Gem::Requirement
283
229
  none: false
284
- requirements:
285
- - - ">="
286
- - !ruby/object:Gem::Version
287
- hash: 3
288
- segments:
289
- - 0
290
- version: "0"
230
+ requirements:
231
+ - - ! '>='
232
+ - !ruby/object:Gem::Version
233
+ version: '0'
291
234
  requirements: []
292
-
293
235
  rubyforge_project: oddb2xml
294
236
  rubygems_version: 1.8.15
295
237
  signing_key:
296
238
  specification_version: 3
297
239
  summary: oddb2xml creates xml files.
298
240
  test_files: []
299
-