ruby_speech 2.1.1-java → 2.1.2-java

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.
@@ -1,5 +1,8 @@
1
1
  # [develop](https://github.com/benlangfeld/ruby_speech)
2
2
 
3
+ # [2.1.2](https://github.com/benlangfeld/ruby_speech/compare/v2.1.1...v2.1.2) - [2013-06-05](https://rubygems.org/gems/ruby_speech/versions/2.1.2)
4
+ * Bugfix: Allow wrapping a pre-parsed XML node nested arbitrary deeply as an NLSML document
5
+
3
6
  # [2.1.1](https://github.com/benlangfeld/ruby_speech/compare/v2.1.0...v2.1.1) - [2013-05-09](https://rubygems.org/gems/ruby_speech/versions/2.1.1)
4
7
  * Bugfix: Support numeric SISR literal tags
5
8
 
@@ -4,15 +4,16 @@ module RubySpeech
4
4
  module NLSML
5
5
  class Document < SimpleDelegator
6
6
  def initialize(xml)
7
- unless xml.root.namespace
8
- xml.root.default_namespace = NLSML_NAMESPACE
9
- xml = Nokogiri::XML.parse xml.to_xml, nil, nil, Nokogiri::XML::ParseOptions::NOBLANKS
7
+ result = xml.respond_to?(:root) ? xml.root : xml
8
+ unless result.namespace
9
+ result.default_namespace = NLSML_NAMESPACE
10
+ result = Nokogiri::XML.parse(xml.to_xml, nil, nil, Nokogiri::XML::ParseOptions::NOBLANKS).root
10
11
  end
11
- super
12
+ super result
12
13
  end
13
14
 
14
15
  def grammar
15
- result['grammar']
16
+ self['grammar']
16
17
  end
17
18
 
18
19
  def interpretations
@@ -44,15 +45,15 @@ module RubySpeech
44
45
  end
45
46
 
46
47
  def nomatch_elements
47
- result.xpath 'ns:interpretation/ns:input/ns:nomatch', 'ns' => NLSML_NAMESPACE
48
+ xpath 'ns:interpretation/ns:input/ns:nomatch', 'ns' => NLSML_NAMESPACE
48
49
  end
49
50
 
50
51
  def noinput_elements
51
- result.xpath 'ns:interpretation/ns:input/ns:noinput', 'ns' => NLSML_NAMESPACE
52
+ xpath 'ns:interpretation/ns:input/ns:noinput', 'ns' => NLSML_NAMESPACE
52
53
  end
53
54
 
54
55
  def input_elements
55
- result.xpath 'ns:interpretation/ns:input', 'ns' => NLSML_NAMESPACE
56
+ xpath 'ns:interpretation/ns:input', 'ns' => NLSML_NAMESPACE
56
57
  end
57
58
 
58
59
  def input_hash_for_interpretation(interpretation)
@@ -107,12 +108,8 @@ module RubySpeech
107
108
  }
108
109
  end
109
110
 
110
- def result
111
- root
112
- end
113
-
114
111
  def interpretation_nodes
115
- nodes = result.xpath 'ns:interpretation', 'ns' => NLSML_NAMESPACE
112
+ nodes = xpath 'ns:interpretation', 'ns' => NLSML_NAMESPACE
116
113
  nodes.sort_by { |int| -int[:confidence].to_f }
117
114
  end
118
115
  end
@@ -1,3 +1,3 @@
1
1
  module RubySpeech
2
- VERSION = "2.1.1"
2
+ VERSION = "2.1.2"
3
3
  end
@@ -124,6 +124,41 @@ describe RubySpeech::NLSML do
124
124
  subject.should_not be == RubySpeech.parse(empty_result)
125
125
  end
126
126
 
127
+ context "when the XML is already parsed and is not the root of a document" do
128
+ let :example_document do
129
+ '''
130
+ <foo>
131
+ <result xmlns="http://www.ietf.org/xml/ns/mrcpv2" grammar="http://flight">
132
+ <interpretation confidence="0.6">
133
+ <input mode="speech">I want to go to Pittsburgh</input>
134
+ <instance>
135
+ <airline>
136
+ <to_city>Pittsburgh</to_city>
137
+ </airline>
138
+ </instance>
139
+ </interpretation>
140
+ <interpretation confidence="0.4">
141
+ <input>I want to go to Stockholm</input>
142
+ <instance>
143
+ <airline>
144
+ <to_city>Stockholm</to_city>
145
+ </airline>
146
+ </instance>
147
+ </interpretation>
148
+ </result>
149
+ </foo>
150
+ '''
151
+ end
152
+
153
+ let(:node) { Nokogiri::XML(example_document).at_xpath('//mrcp:result', mrcp: "http://www.ietf.org/xml/ns/mrcpv2") }
154
+
155
+ subject do
156
+ RubySpeech::NLSML::Document.new node
157
+ end
158
+
159
+ its(:grammar) { should == 'http://flight' }
160
+ end
161
+
127
162
  context "with an interpretation that has no instance" do
128
163
  let :example_document do
129
164
  '''
metadata CHANGED
@@ -2,32 +2,32 @@
2
2
  name: ruby_speech
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 2.1.1
5
+ version: 2.1.2
6
6
  platform: java
7
7
  authors:
8
8
  - Ben Langfeld
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-05-09 00:00:00.000000000 Z
12
+ date: 2013-06-12 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: niceogiri
16
16
  version_requirements: !ruby/object:Gem::Requirement
17
17
  requirements:
18
- - - "~>"
18
+ - - ~>
19
19
  - !ruby/object:Gem::Version
20
20
  version: '1.1'
21
- - - ">="
21
+ - - '>='
22
22
  - !ruby/object:Gem::Version
23
23
  version: 1.1.2
24
24
  none: false
25
25
  requirement: !ruby/object:Gem::Requirement
26
26
  requirements:
27
- - - "~>"
27
+ - - ~>
28
28
  - !ruby/object:Gem::Version
29
29
  version: '1.1'
30
- - - ">="
30
+ - - '>='
31
31
  - !ruby/object:Gem::Version
32
32
  version: 1.1.2
33
33
  none: false
@@ -37,19 +37,19 @@ dependencies:
37
37
  name: nokogiri
38
38
  version_requirements: !ruby/object:Gem::Requirement
39
39
  requirements:
40
- - - "~>"
40
+ - - ~>
41
41
  - !ruby/object:Gem::Version
42
42
  version: '1.5'
43
- - - ">="
43
+ - - '>='
44
44
  - !ruby/object:Gem::Version
45
45
  version: 1.5.6
46
46
  none: false
47
47
  requirement: !ruby/object:Gem::Requirement
48
48
  requirements:
49
- - - "~>"
49
+ - - ~>
50
50
  - !ruby/object:Gem::Version
51
51
  version: '1.5'
52
- - - ">="
52
+ - - '>='
53
53
  - !ruby/object:Gem::Version
54
54
  version: 1.5.6
55
55
  none: false
@@ -59,13 +59,13 @@ dependencies:
59
59
  name: activesupport
60
60
  version_requirements: !ruby/object:Gem::Requirement
61
61
  requirements:
62
- - - ">="
62
+ - - '>='
63
63
  - !ruby/object:Gem::Version
64
64
  version: 3.0.7
65
65
  none: false
66
66
  requirement: !ruby/object:Gem::Requirement
67
67
  requirements:
68
- - - ">="
68
+ - - '>='
69
69
  - !ruby/object:Gem::Version
70
70
  version: 3.0.7
71
71
  none: false
@@ -75,13 +75,13 @@ dependencies:
75
75
  name: bundler
76
76
  version_requirements: !ruby/object:Gem::Requirement
77
77
  requirements:
78
- - - ">="
78
+ - - '>='
79
79
  - !ruby/object:Gem::Version
80
80
  version: 1.0.0
81
81
  none: false
82
82
  requirement: !ruby/object:Gem::Requirement
83
83
  requirements:
84
- - - ">="
84
+ - - '>='
85
85
  - !ruby/object:Gem::Version
86
86
  version: 1.0.0
87
87
  none: false
@@ -91,13 +91,13 @@ dependencies:
91
91
  name: rspec
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - ">="
94
+ - - '>='
95
95
  - !ruby/object:Gem::Version
96
96
  version: '2.7'
97
97
  none: false
98
98
  requirement: !ruby/object:Gem::Requirement
99
99
  requirements:
100
- - - ">="
100
+ - - '>='
101
101
  - !ruby/object:Gem::Version
102
102
  version: '2.7'
103
103
  none: false
@@ -107,13 +107,13 @@ dependencies:
107
107
  name: ci_reporter
108
108
  version_requirements: !ruby/object:Gem::Requirement
109
109
  requirements:
110
- - - ">="
110
+ - - '>='
111
111
  - !ruby/object:Gem::Version
112
112
  version: 1.6.3
113
113
  none: false
114
114
  requirement: !ruby/object:Gem::Requirement
115
115
  requirements:
116
- - - ">="
116
+ - - '>='
117
117
  - !ruby/object:Gem::Version
118
118
  version: 1.6.3
119
119
  none: false
@@ -123,13 +123,13 @@ dependencies:
123
123
  name: yard
124
124
  version_requirements: !ruby/object:Gem::Requirement
125
125
  requirements:
126
- - - ">="
126
+ - - '>='
127
127
  - !ruby/object:Gem::Version
128
128
  version: 0.7.0
129
129
  none: false
130
130
  requirement: !ruby/object:Gem::Requirement
131
131
  requirements:
132
- - - ">="
132
+ - - '>='
133
133
  - !ruby/object:Gem::Version
134
134
  version: 0.7.0
135
135
  none: false
@@ -139,17 +139,15 @@ dependencies:
139
139
  name: rake
140
140
  version_requirements: !ruby/object:Gem::Requirement
141
141
  requirements:
142
- - - ">="
142
+ - - '>='
143
143
  - !ruby/object:Gem::Version
144
- version: !binary |-
145
- MA==
144
+ version: '0'
146
145
  none: false
147
146
  requirement: !ruby/object:Gem::Requirement
148
147
  requirements:
149
- - - ">="
148
+ - - '>='
150
149
  - !ruby/object:Gem::Version
151
- version: !binary |-
152
- MA==
150
+ version: '0'
153
151
  none: false
154
152
  prerelease: false
155
153
  type: :development
@@ -157,13 +155,13 @@ dependencies:
157
155
  name: guard
158
156
  version_requirements: !ruby/object:Gem::Requirement
159
157
  requirements:
160
- - - ">="
158
+ - - '>='
161
159
  - !ruby/object:Gem::Version
162
160
  version: 0.9.0
163
161
  none: false
164
162
  requirement: !ruby/object:Gem::Requirement
165
163
  requirements:
166
- - - ">="
164
+ - - '>='
167
165
  - !ruby/object:Gem::Version
168
166
  version: 0.9.0
169
167
  none: false
@@ -173,17 +171,15 @@ dependencies:
173
171
  name: guard-rspec
174
172
  version_requirements: !ruby/object:Gem::Requirement
175
173
  requirements:
176
- - - ">="
174
+ - - '>='
177
175
  - !ruby/object:Gem::Version
178
- version: !binary |-
179
- MA==
176
+ version: '0'
180
177
  none: false
181
178
  requirement: !ruby/object:Gem::Requirement
182
179
  requirements:
183
- - - ">="
180
+ - - '>='
184
181
  - !ruby/object:Gem::Version
185
- version: !binary |-
186
- MA==
182
+ version: '0'
187
183
  none: false
188
184
  prerelease: false
189
185
  type: :development
@@ -191,17 +187,15 @@ dependencies:
191
187
  name: ruby_gntp
192
188
  version_requirements: !ruby/object:Gem::Requirement
193
189
  requirements:
194
- - - ">="
190
+ - - '>='
195
191
  - !ruby/object:Gem::Version
196
- version: !binary |-
197
- MA==
192
+ version: '0'
198
193
  none: false
199
194
  requirement: !ruby/object:Gem::Requirement
200
195
  requirements:
201
- - - ">="
196
+ - - '>='
202
197
  - !ruby/object:Gem::Version
203
- version: !binary |-
204
- MA==
198
+ version: '0'
205
199
  none: false
206
200
  prerelease: false
207
201
  type: :development
@@ -209,17 +203,15 @@ dependencies:
209
203
  name: guard-rake
210
204
  version_requirements: !ruby/object:Gem::Requirement
211
205
  requirements:
212
- - - ">="
206
+ - - '>='
213
207
  - !ruby/object:Gem::Version
214
- version: !binary |-
215
- MA==
208
+ version: '0'
216
209
  none: false
217
210
  requirement: !ruby/object:Gem::Requirement
218
211
  requirements:
219
- - - ">="
212
+ - - '>='
220
213
  - !ruby/object:Gem::Version
221
- version: !binary |-
222
- MA==
214
+ version: '0'
223
215
  none: false
224
216
  prerelease: false
225
217
  type: :development
@@ -227,17 +219,15 @@ dependencies:
227
219
  name: rake-compiler
228
220
  version_requirements: !ruby/object:Gem::Requirement
229
221
  requirements:
230
- - - ">="
222
+ - - '>='
231
223
  - !ruby/object:Gem::Version
232
- version: !binary |-
233
- MA==
224
+ version: '0'
234
225
  none: false
235
226
  requirement: !ruby/object:Gem::Requirement
236
227
  requirements:
237
- - - ">="
228
+ - - '>='
238
229
  - !ruby/object:Gem::Version
239
- version: !binary |-
240
- MA==
230
+ version: '0'
241
231
  none: false
242
232
  prerelease: false
243
233
  type: :development
@@ -248,9 +238,9 @@ executables: []
248
238
  extensions: []
249
239
  extra_rdoc_files: []
250
240
  files:
251
- - ".gitignore"
252
- - ".rspec"
253
- - ".travis.yml"
241
+ - .gitignore
242
+ - .rspec
243
+ - .travis.yml
254
244
  - CHANGELOG.md
255
245
  - Gemfile
256
246
  - Guardfile
@@ -345,23 +335,21 @@ require_paths:
345
335
  - lib
346
336
  required_ruby_version: !ruby/object:Gem::Requirement
347
337
  requirements:
348
- - - ">="
338
+ - - '>='
349
339
  - !ruby/object:Gem::Version
350
340
  segments:
351
341
  - 0
352
342
  hash: 2
353
- version: !binary |-
354
- MA==
343
+ version: '0'
355
344
  none: false
356
345
  required_rubygems_version: !ruby/object:Gem::Requirement
357
346
  requirements:
358
- - - ">="
347
+ - - '>='
359
348
  - !ruby/object:Gem::Version
360
349
  segments:
361
350
  - 0
362
351
  hash: 2
363
- version: !binary |-
364
- MA==
352
+ version: '0'
365
353
  none: false
366
354
  requirements: []
367
355
  rubyforge_project: ruby_speech