aixm 0.2.0 → 0.2.1
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +10 -0
- data/README.md +149 -116
- data/lib/aixm/component/class_layer.rb +3 -3
- data/lib/aixm/component/geometry.rb +3 -3
- data/lib/aixm/component/geometry/arc.rb +2 -2
- data/lib/aixm/component/geometry/border.rb +2 -2
- data/lib/aixm/component/geometry/circle.rb +2 -2
- data/lib/aixm/component/geometry/point.rb +2 -2
- data/lib/aixm/component/schedule.rb +2 -2
- data/lib/aixm/component/vertical_limits.rb +2 -2
- data/lib/aixm/document.rb +4 -4
- data/lib/aixm/feature/airspace.rb +42 -17
- data/lib/aixm/feature/navigational_aid/base.rb +41 -8
- data/lib/aixm/feature/navigational_aid/designated_point.rb +29 -15
- data/lib/aixm/feature/navigational_aid/dme.rb +32 -9
- data/lib/aixm/feature/navigational_aid/marker.rb +25 -7
- data/lib/aixm/feature/navigational_aid/ndb.rb +25 -9
- data/lib/aixm/feature/navigational_aid/tacan.rb +21 -20
- data/lib/aixm/feature/navigational_aid/vor.rb +66 -26
- data/lib/aixm/version.rb +1 -1
- data/spec/factory.rb +69 -13
- data/spec/lib/aixm/component/class_layer_spec.rb +4 -4
- data/spec/lib/aixm/component/geometry/arc_spec.rb +3 -3
- data/spec/lib/aixm/component/geometry/border_spec.rb +2 -2
- data/spec/lib/aixm/component/geometry/circle_spec.rb +3 -3
- data/spec/lib/aixm/component/geometry/point_spec.rb +3 -3
- data/spec/lib/aixm/component/geometry_spec.rb +4 -4
- data/spec/lib/aixm/component/schedule_spec.rb +2 -2
- data/spec/lib/aixm/component/vertical_limits_spec.rb +4 -4
- data/spec/lib/aixm/document_spec.rb +282 -28
- data/spec/lib/aixm/feature/airspace_spec.rb +14 -10
- data/spec/lib/aixm/feature/navigational_aid/designated_point_spec.rb +9 -6
- data/spec/lib/aixm/feature/navigational_aid/dme_spec.rb +9 -6
- data/spec/lib/aixm/feature/navigational_aid/marker_spec.rb +7 -4
- data/spec/lib/aixm/feature/navigational_aid/ndb_spec.rb +9 -6
- data/spec/lib/aixm/feature/navigational_aid/tacan_spec.rb +9 -6
- data/spec/lib/aixm/feature/navigational_aid/vor_spec.rb +156 -7
- metadata +2 -2
@@ -19,9 +19,9 @@ describe AIXM::Component::ClassLayer do
|
|
19
19
|
end
|
20
20
|
end
|
21
21
|
|
22
|
-
describe :
|
22
|
+
describe :to_aixm do
|
23
23
|
it "must build correct XML" do
|
24
|
-
subject.
|
24
|
+
subject.to_aixm.must_equal <<~END
|
25
25
|
<codeClass>C</codeClass>
|
26
26
|
<codeDistVerUpper>STD</codeDistVerUpper>
|
27
27
|
<valDistVerUpper>65</valDistVerUpper>
|
@@ -51,9 +51,9 @@ describe AIXM::Component::ClassLayer do
|
|
51
51
|
end
|
52
52
|
end
|
53
53
|
|
54
|
-
describe :
|
54
|
+
describe :to_aixm do
|
55
55
|
it "must build correct XML" do
|
56
|
-
subject.
|
56
|
+
subject.to_aixm.must_equal <<~END
|
57
57
|
<codeDistVerUpper>STD</codeDistVerUpper>
|
58
58
|
<valDistVerUpper>65</valDistVerUpper>
|
59
59
|
<uomDistVerUpper>FL</uomDistVerUpper>
|
@@ -29,14 +29,14 @@ describe AIXM::Component::Geometry::Arc do
|
|
29
29
|
end
|
30
30
|
end
|
31
31
|
|
32
|
-
describe :
|
32
|
+
describe :to_aixm do
|
33
33
|
it "must build correct XML for clockwise arcs" do
|
34
34
|
subject = AIXM.arc(
|
35
35
|
xy: AIXM.xy(lat: 11.1, long: 33.3),
|
36
36
|
center_xy: AIXM.xy(lat: 22.2, long: 33.3),
|
37
37
|
clockwise: true
|
38
38
|
)
|
39
|
-
subject.
|
39
|
+
subject.to_aixm.must_equal <<~END
|
40
40
|
<Avx>
|
41
41
|
<codeType>CWA</codeType>
|
42
42
|
<geoLat>110600.00N</geoLat>
|
@@ -54,7 +54,7 @@ describe AIXM::Component::Geometry::Arc do
|
|
54
54
|
center_xy: AIXM.xy(lat: 22.2, long: 33.3),
|
55
55
|
clockwise: false
|
56
56
|
)
|
57
|
-
subject.
|
57
|
+
subject.to_aixm.must_equal <<~END
|
58
58
|
<Avx>
|
59
59
|
<codeType>CCA</codeType>
|
60
60
|
<geoLat>110600.00N</geoLat>
|
@@ -11,13 +11,13 @@ describe AIXM::Component::Geometry::Border do
|
|
11
11
|
end
|
12
12
|
end
|
13
13
|
|
14
|
-
describe :
|
14
|
+
describe :to_aixm do
|
15
15
|
it "must build correct XML" do
|
16
16
|
subject = AIXM.border(
|
17
17
|
xy: AIXM.xy(lat: 11.1, long: 22.2),
|
18
18
|
name: 'foobar'
|
19
19
|
)
|
20
|
-
subject.
|
20
|
+
subject.to_aixm.must_equal <<~END
|
21
21
|
<Avx>
|
22
22
|
<codeType>FNT</codeType>
|
23
23
|
<geoLat>110600.00N</geoLat>
|
@@ -27,13 +27,13 @@ describe AIXM::Component::Geometry::Circle do
|
|
27
27
|
end
|
28
28
|
end
|
29
29
|
|
30
|
-
describe :
|
30
|
+
describe :to_aixm do
|
31
31
|
it "must build correct XML for circles not near the equator" do
|
32
32
|
subject = AIXM.circle(
|
33
33
|
center_xy: AIXM.xy(lat: 11.1, long: 22.2),
|
34
34
|
radius: 25
|
35
35
|
)
|
36
|
-
subject.
|
36
|
+
subject.to_aixm.must_equal <<~END
|
37
37
|
<Avx>
|
38
38
|
<codeType>CWA</codeType>
|
39
39
|
<geoLat>111929.39N</geoLat>
|
@@ -50,7 +50,7 @@ describe AIXM::Component::Geometry::Circle do
|
|
50
50
|
center_xy: AIXM.xy(lat: -0.0005, long: -22.2),
|
51
51
|
radius: 50
|
52
52
|
)
|
53
|
-
subject.
|
53
|
+
subject.to_aixm.must_equal <<~END
|
54
54
|
<Avx>
|
55
55
|
<codeType>CWA</codeType>
|
56
56
|
<geoLat>002656.98N</geoLat>
|
@@ -14,10 +14,10 @@ describe AIXM::Component::Geometry::Point do
|
|
14
14
|
end
|
15
15
|
end
|
16
16
|
|
17
|
-
describe :
|
17
|
+
describe :to_aixm do
|
18
18
|
it "must build correct XML for N/E points" do
|
19
19
|
subject = AIXM.point(xy: AIXM.xy(lat: 11.1, long: 22.2))
|
20
|
-
subject.
|
20
|
+
subject.to_aixm.must_equal <<~END
|
21
21
|
<Avx>
|
22
22
|
<codeType>GRC</codeType>
|
23
23
|
<geoLat>110600.00N</geoLat>
|
@@ -29,7 +29,7 @@ describe AIXM::Component::Geometry::Point do
|
|
29
29
|
|
30
30
|
it "must build correct XML for S/W points" do
|
31
31
|
subject = AIXM.point(xy: AIXM.xy(lat: -11.1, long: -22.2))
|
32
|
-
subject.
|
32
|
+
subject.to_aixm.must_equal <<~END
|
33
33
|
<Avx>
|
34
34
|
<codeType>GRC</codeType>
|
35
35
|
<geoLat>110600.00S</geoLat>
|
@@ -72,7 +72,7 @@ describe AIXM::Component::Geometry do
|
|
72
72
|
end
|
73
73
|
|
74
74
|
it "must build valid XML" do
|
75
|
-
subject.
|
75
|
+
subject.to_aixm.must_equal <<~END
|
76
76
|
<Avx>
|
77
77
|
<codeType>GRC</codeType>
|
78
78
|
<geoLat>110000.00N</geoLat>
|
@@ -111,7 +111,7 @@ describe AIXM::Component::Geometry do
|
|
111
111
|
end
|
112
112
|
|
113
113
|
it "must build valid XML" do
|
114
|
-
subject.
|
114
|
+
subject.to_aixm.must_equal <<~END
|
115
115
|
<Avx>
|
116
116
|
<codeType>CWA</codeType>
|
117
117
|
<geoLat>110000.00N</geoLat>
|
@@ -156,7 +156,7 @@ describe AIXM::Component::Geometry do
|
|
156
156
|
end
|
157
157
|
|
158
158
|
it "must build valid XML" do
|
159
|
-
subject.
|
159
|
+
subject.to_aixm.must_equal <<~END
|
160
160
|
<Avx>
|
161
161
|
<codeType>FNT</codeType>
|
162
162
|
<geoLat>110000.00N</geoLat>
|
@@ -198,7 +198,7 @@ describe AIXM::Component::Geometry do
|
|
198
198
|
end
|
199
199
|
|
200
200
|
it "must build valid XML" do
|
201
|
-
subject.
|
201
|
+
subject.to_aixm.must_equal <<~END
|
202
202
|
<Avx>
|
203
203
|
<codeType>CWA</codeType>
|
204
204
|
<geoLat>110523.76N</geoLat>
|
@@ -22,10 +22,10 @@ describe AIXM::Component::Schedule do
|
|
22
22
|
end
|
23
23
|
end
|
24
24
|
|
25
|
-
describe :
|
25
|
+
describe :to_aixm do
|
26
26
|
it "must build correct XML" do
|
27
27
|
subject = AIXM.schedule(code: :continuous)
|
28
|
-
subject.
|
28
|
+
subject.to_aixm.must_equal <<~END
|
29
29
|
<codeWorkHr>H24</codeWorkHr>
|
30
30
|
END
|
31
31
|
end
|
@@ -21,13 +21,13 @@ describe AIXM::Component::VerticalLimits do
|
|
21
21
|
end
|
22
22
|
end
|
23
23
|
|
24
|
-
describe :
|
24
|
+
describe :to_aixm do
|
25
25
|
it "must build correct XML with only upper_z and lower_z" do
|
26
26
|
subject = AIXM.vertical_limits(
|
27
27
|
upper_z: AIXM.z(2000, :qnh),
|
28
28
|
lower_z: AIXM::GROUND
|
29
29
|
)
|
30
|
-
subject.
|
30
|
+
subject.to_aixm.must_equal <<~END
|
31
31
|
<codeDistVerUpper>ALT</codeDistVerUpper>
|
32
32
|
<valDistVerUpper>2000</valDistVerUpper>
|
33
33
|
<uomDistVerUpper>FT</uomDistVerUpper>
|
@@ -43,7 +43,7 @@ describe AIXM::Component::VerticalLimits do
|
|
43
43
|
lower_z: AIXM.z(1000, :qfe),
|
44
44
|
max_z: AIXM.z(6000, :qnh)
|
45
45
|
)
|
46
|
-
subject.
|
46
|
+
subject.to_aixm.must_equal <<~END
|
47
47
|
<codeDistVerUpper>STD</codeDistVerUpper>
|
48
48
|
<valDistVerUpper>65</valDistVerUpper>
|
49
49
|
<uomDistVerUpper>FL</uomDistVerUpper>
|
@@ -62,7 +62,7 @@ describe AIXM::Component::VerticalLimits do
|
|
62
62
|
lower_z: AIXM.z(45, :qne),
|
63
63
|
min_z: AIXM.z(3000, :qnh)
|
64
64
|
)
|
65
|
-
subject.
|
65
|
+
subject.to_aixm.must_equal <<~END
|
66
66
|
<codeDistVerUpper>STD</codeDistVerUpper>
|
67
67
|
<valDistVerUpper>65</valDistVerUpper>
|
68
68
|
<uomDistVerUpper>FL</uomDistVerUpper>
|
@@ -57,7 +57,7 @@ describe AIXM::Document do
|
|
57
57
|
end
|
58
58
|
|
59
59
|
it "must build correct XML without extensions" do
|
60
|
-
subject.
|
60
|
+
subject.to_aixm.must_equal <<~"END"
|
61
61
|
<?xml version="1.0" encoding="UTF-8"?>
|
62
62
|
<AIXM-Snapshot xmlns:xsi="http://www.aixm.aero/schema/4.5/AIXM-Snapshot.xsd" version="4.5" origin="AIXM #{AIXM::VERSION} Ruby gem" created="2018-01-18T12:00:00+01:00" effective="2018-01-18T12:00:00+01:00">
|
63
63
|
<!-- Airspace: [D] POLYGON AIRSPACE -->
|
@@ -156,10 +156,10 @@ describe AIXM::Document do
|
|
156
156
|
<geoLongArc>0045300.00E</geoLongArc>
|
157
157
|
</Avx>
|
158
158
|
</Abd>
|
159
|
-
<!--
|
159
|
+
<!-- NavigationalAid: [DesignatedPoint:ICAO] DESIGNATED POINT NAVAID -->
|
160
160
|
<Dpn>
|
161
161
|
<DpnUid>
|
162
|
-
<codeId>
|
162
|
+
<codeId>DDD</codeId>
|
163
163
|
<geoLat>475133.00N</geoLat>
|
164
164
|
<geoLong>0073336.00E</geoLong>
|
165
165
|
</DpnUid>
|
@@ -169,12 +169,15 @@ describe AIXM::Document do
|
|
169
169
|
<codeType>ICAO</codeType>
|
170
170
|
<valElev>500</valElev>
|
171
171
|
<uomDistVer>FT</uomDistVer>
|
172
|
+
<Dtt>
|
173
|
+
<codeWorkHr>H24</codeWorkHr>
|
174
|
+
</Dtt>
|
172
175
|
<txtRmk>designated point navaid</txtRmk>
|
173
176
|
</Dpn>
|
174
|
-
<!--
|
177
|
+
<!-- NavigationalAid: [DME] DME NAVAID -->
|
175
178
|
<Dme>
|
176
179
|
<DmeUid>
|
177
|
-
<codeId>
|
180
|
+
<codeId>MMM</codeId>
|
178
181
|
<geoLat>475133.00N</geoLat>
|
179
182
|
<geoLong>0073336.00E</geoLong>
|
180
183
|
</DmeUid>
|
@@ -184,9 +187,12 @@ describe AIXM::Document do
|
|
184
187
|
<codeDatum>WGE</codeDatum>
|
185
188
|
<valElev>500</valElev>
|
186
189
|
<uomDistVer>FT</uomDistVer>
|
190
|
+
<Dtt>
|
191
|
+
<codeWorkHr>H24</codeWorkHr>
|
192
|
+
</Dtt>
|
187
193
|
<txtRmk>dme navaid</txtRmk>
|
188
194
|
</Dme>
|
189
|
-
<!--
|
195
|
+
<!-- NavigationalAid: [Marker] MARKER NAVAID -->
|
190
196
|
<Mkr>
|
191
197
|
<MkrUid>
|
192
198
|
<codeId>---</codeId>
|
@@ -200,12 +206,15 @@ describe AIXM::Document do
|
|
200
206
|
<codeDatum>WGE</codeDatum>
|
201
207
|
<valElev>500</valElev>
|
202
208
|
<uomDistVer>FT</uomDistVer>
|
209
|
+
<Mtt>
|
210
|
+
<codeWorkHr>H24</codeWorkHr>
|
211
|
+
</Mtt>
|
203
212
|
<txtRmk>marker navaid</txtRmk>
|
204
213
|
</Mkr>
|
205
|
-
<!--
|
214
|
+
<!-- NavigationalAid: [NDB] NDB NAVAID -->
|
206
215
|
<Ndb>
|
207
216
|
<NdbUid>
|
208
|
-
<codeId>
|
217
|
+
<codeId>NNN</codeId>
|
209
218
|
<geoLat>475133.00N</geoLat>
|
210
219
|
<geoLong>0073336.00E</geoLong>
|
211
220
|
</NdbUid>
|
@@ -216,12 +225,33 @@ describe AIXM::Document do
|
|
216
225
|
<codeDatum>WGE</codeDatum>
|
217
226
|
<valElev>500</valElev>
|
218
227
|
<uomDistVer>FT</uomDistVer>
|
228
|
+
<Ntt>
|
229
|
+
<codeWorkHr>H24</codeWorkHr>
|
230
|
+
</Ntt>
|
219
231
|
<txtRmk>ndb navaid</txtRmk>
|
220
232
|
</Ndb>
|
221
|
-
<!--
|
233
|
+
<!-- NavigationalAid: [TACAN] TACAN NAVAID -->
|
234
|
+
<Tcn>
|
235
|
+
<TcnUid>
|
236
|
+
<codeId>TTT</codeId>
|
237
|
+
<geoLat>475133.00N</geoLat>
|
238
|
+
<geoLong>0073336.00E</geoLong>
|
239
|
+
</TcnUid>
|
240
|
+
<OrgUid/>
|
241
|
+
<txtName>TACAN NAVAID</txtName>
|
242
|
+
<codeChannel>29X</codeChannel>
|
243
|
+
<codeDatum>WGE</codeDatum>
|
244
|
+
<valElev>500</valElev>
|
245
|
+
<uomDistVer>FT</uomDistVer>
|
246
|
+
<Ttt>
|
247
|
+
<codeWorkHr>H24</codeWorkHr>
|
248
|
+
</Ttt>
|
249
|
+
<txtRmk>tacan navaid</txtRmk>
|
250
|
+
</Tcn>
|
251
|
+
<!-- NavigationalAid: [VOR:VOR] VOR NAVAID -->
|
222
252
|
<Vor>
|
223
253
|
<VorUid>
|
224
|
-
<codeId>
|
254
|
+
<codeId>VVV</codeId>
|
225
255
|
<geoLat>475133.00N</geoLat>
|
226
256
|
<geoLong>0073336.00E</geoLong>
|
227
257
|
</VorUid>
|
@@ -234,29 +264,126 @@ describe AIXM::Document do
|
|
234
264
|
<codeDatum>WGE</codeDatum>
|
235
265
|
<valElev>500</valElev>
|
236
266
|
<uomDistVer>FT</uomDistVer>
|
267
|
+
<Vtt>
|
268
|
+
<codeWorkHr>H24</codeWorkHr>
|
269
|
+
</Vtt>
|
237
270
|
<txtRmk>vor navaid</txtRmk>
|
238
271
|
</Vor>
|
239
|
-
<!--
|
272
|
+
<!-- NavigationalAid: [VOR:DVOR] DOPPLER-VOR NAVAID -->
|
273
|
+
<Vor>
|
274
|
+
<VorUid>
|
275
|
+
<codeId>DVV</codeId>
|
276
|
+
<geoLat>475133.00N</geoLat>
|
277
|
+
<geoLong>0073336.00E</geoLong>
|
278
|
+
</VorUid>
|
279
|
+
<OrgUid/>
|
280
|
+
<txtName>DOPPLER-VOR NAVAID</txtName>
|
281
|
+
<codeType>DVOR</codeType>
|
282
|
+
<valFreq>111</valFreq>
|
283
|
+
<uomFreq>MHZ</uomFreq>
|
284
|
+
<codeTypeNorth>TRUE</codeTypeNorth>
|
285
|
+
<codeDatum>WGE</codeDatum>
|
286
|
+
<valElev>500</valElev>
|
287
|
+
<uomDistVer>FT</uomDistVer>
|
288
|
+
<Vtt>
|
289
|
+
<codeWorkHr>H24</codeWorkHr>
|
290
|
+
</Vtt>
|
291
|
+
<txtRmk>doppler-vor navaid</txtRmk>
|
292
|
+
</Vor>
|
293
|
+
<!-- NavigationalAid: [VOR:VOR] VOR/DME NAVAID -->
|
294
|
+
<Vor>
|
295
|
+
<VorUid>
|
296
|
+
<codeId>VDD</codeId>
|
297
|
+
<geoLat>475133.00N</geoLat>
|
298
|
+
<geoLong>0073336.00E</geoLong>
|
299
|
+
</VorUid>
|
300
|
+
<OrgUid/>
|
301
|
+
<txtName>VOR/DME NAVAID</txtName>
|
302
|
+
<codeType>VOR</codeType>
|
303
|
+
<valFreq>111</valFreq>
|
304
|
+
<uomFreq>MHZ</uomFreq>
|
305
|
+
<codeTypeNorth>TRUE</codeTypeNorth>
|
306
|
+
<codeDatum>WGE</codeDatum>
|
307
|
+
<valElev>500</valElev>
|
308
|
+
<uomDistVer>FT</uomDistVer>
|
309
|
+
<Vtt>
|
310
|
+
<codeWorkHr>H24</codeWorkHr>
|
311
|
+
</Vtt>
|
312
|
+
<txtRmk>vor/dme navaid</txtRmk>
|
313
|
+
</Vor>
|
314
|
+
<!-- NavigationalAid: [DME] VOR/DME NAVAID -->
|
315
|
+
<Dme>
|
316
|
+
<DmeUid>
|
317
|
+
<codeId>VDD</codeId>
|
318
|
+
<geoLat>475133.00N</geoLat>
|
319
|
+
<geoLong>0073336.00E</geoLong>
|
320
|
+
</DmeUid>
|
321
|
+
<OrgUid/>
|
322
|
+
<VorUid>
|
323
|
+
<codeId>VDD</codeId>
|
324
|
+
<geoLat>475133.00N</geoLat>
|
325
|
+
<geoLong>0073336.00E</geoLong>
|
326
|
+
</VorUid>
|
327
|
+
<txtName>VOR/DME NAVAID</txtName>
|
328
|
+
<codeChannel>95X</codeChannel>
|
329
|
+
<codeDatum>WGE</codeDatum>
|
330
|
+
<valElev>500</valElev>
|
331
|
+
<uomDistVer>FT</uomDistVer>
|
332
|
+
<Dtt>
|
333
|
+
<codeWorkHr>H24</codeWorkHr>
|
334
|
+
</Dtt>
|
335
|
+
<txtRmk>vor/dme navaid</txtRmk>
|
336
|
+
</Dme>
|
337
|
+
<!-- NavigationalAid: [VOR:VOR] VORTAC NAVAID -->
|
338
|
+
<Vor>
|
339
|
+
<VorUid>
|
340
|
+
<codeId>VTT</codeId>
|
341
|
+
<geoLat>475133.00N</geoLat>
|
342
|
+
<geoLong>0073336.00E</geoLong>
|
343
|
+
</VorUid>
|
344
|
+
<OrgUid/>
|
345
|
+
<txtName>VORTAC NAVAID</txtName>
|
346
|
+
<codeType>VOR</codeType>
|
347
|
+
<valFreq>111</valFreq>
|
348
|
+
<uomFreq>MHZ</uomFreq>
|
349
|
+
<codeTypeNorth>TRUE</codeTypeNorth>
|
350
|
+
<codeDatum>WGE</codeDatum>
|
351
|
+
<valElev>500</valElev>
|
352
|
+
<uomDistVer>FT</uomDistVer>
|
353
|
+
<Vtt>
|
354
|
+
<codeWorkHr>H24</codeWorkHr>
|
355
|
+
</Vtt>
|
356
|
+
<txtRmk>vortac navaid</txtRmk>
|
357
|
+
</Vor>
|
358
|
+
<!-- NavigationalAid: [TACAN] VORTAC NAVAID -->
|
240
359
|
<Tcn>
|
241
360
|
<TcnUid>
|
242
|
-
<codeId>
|
361
|
+
<codeId>VTT</codeId>
|
243
362
|
<geoLat>475133.00N</geoLat>
|
244
363
|
<geoLong>0073336.00E</geoLong>
|
245
364
|
</TcnUid>
|
246
365
|
<OrgUid/>
|
247
|
-
<
|
366
|
+
<VorUid>
|
367
|
+
<codeId>VTT</codeId>
|
368
|
+
<geoLat>475133.00N</geoLat>
|
369
|
+
<geoLong>0073336.00E</geoLong>
|
370
|
+
</VorUid>
|
371
|
+
<txtName>VORTAC NAVAID</txtName>
|
248
372
|
<codeChannel>29X</codeChannel>
|
249
373
|
<codeDatum>WGE</codeDatum>
|
250
374
|
<valElev>500</valElev>
|
251
375
|
<uomDistVer>FT</uomDistVer>
|
252
|
-
<
|
376
|
+
<Ttt>
|
377
|
+
<codeWorkHr>H24</codeWorkHr>
|
378
|
+
</Ttt>
|
379
|
+
<txtRmk>vortac navaid</txtRmk>
|
253
380
|
</Tcn>
|
254
381
|
</AIXM-Snapshot>
|
255
382
|
END
|
256
383
|
end
|
257
384
|
|
258
385
|
it "must build correct XML with OFM extensions" do
|
259
|
-
subject.
|
386
|
+
subject.to_aixm(:ofm).must_equal <<~"END"
|
260
387
|
<?xml version="1.0" encoding="UTF-8"?>
|
261
388
|
<AIXM-Snapshot xmlns:xsi="http://www.aixm.aero/schema/4.5/AIXM-Snapshot.xsd" version="4.5 + OFM extensions of version 0.1" origin="AIXM #{AIXM::VERSION} Ruby gem" created="2018-01-18T12:00:00+01:00" effective="2018-01-18T12:00:00+01:00">
|
262
389
|
<!-- Airspace: [D] POLYGON AIRSPACE -->
|
@@ -360,10 +487,10 @@ describe AIXM::Document do
|
|
360
487
|
<geoLongArc>4.88333333E</geoLongArc>
|
361
488
|
</Avx>
|
362
489
|
</Abd>
|
363
|
-
<!--
|
490
|
+
<!-- NavigationalAid: [DesignatedPoint:ICAO] DESIGNATED POINT NAVAID -->
|
364
491
|
<Dpn>
|
365
492
|
<DpnUid newEntity="true">
|
366
|
-
<codeId>
|
493
|
+
<codeId>DDD</codeId>
|
367
494
|
<geoLat>47.85916667N</geoLat>
|
368
495
|
<geoLong>7.56000000E</geoLong>
|
369
496
|
</DpnUid>
|
@@ -373,12 +500,15 @@ describe AIXM::Document do
|
|
373
500
|
<codeType>ICAO</codeType>
|
374
501
|
<valElev>500</valElev>
|
375
502
|
<uomDistVer>FT</uomDistVer>
|
503
|
+
<Dtt>
|
504
|
+
<codeWorkHr>H24</codeWorkHr>
|
505
|
+
</Dtt>
|
376
506
|
<txtRmk>designated point navaid</txtRmk>
|
377
507
|
</Dpn>
|
378
|
-
<!--
|
508
|
+
<!-- NavigationalAid: [DME] DME NAVAID -->
|
379
509
|
<Dme>
|
380
510
|
<DmeUid newEntity="true">
|
381
|
-
<codeId>
|
511
|
+
<codeId>MMM</codeId>
|
382
512
|
<geoLat>47.85916667N</geoLat>
|
383
513
|
<geoLong>7.56000000E</geoLong>
|
384
514
|
</DmeUid>
|
@@ -388,9 +518,12 @@ describe AIXM::Document do
|
|
388
518
|
<codeDatum>WGE</codeDatum>
|
389
519
|
<valElev>500</valElev>
|
390
520
|
<uomDistVer>FT</uomDistVer>
|
521
|
+
<Dtt>
|
522
|
+
<codeWorkHr>H24</codeWorkHr>
|
523
|
+
</Dtt>
|
391
524
|
<txtRmk>dme navaid</txtRmk>
|
392
525
|
</Dme>
|
393
|
-
<!--
|
526
|
+
<!-- NavigationalAid: [Marker] MARKER NAVAID -->
|
394
527
|
<Mkr>
|
395
528
|
<MkrUid newEntity="true">
|
396
529
|
<codeId>---</codeId>
|
@@ -404,12 +537,15 @@ describe AIXM::Document do
|
|
404
537
|
<codeDatum>WGE</codeDatum>
|
405
538
|
<valElev>500</valElev>
|
406
539
|
<uomDistVer>FT</uomDistVer>
|
540
|
+
<Mtt>
|
541
|
+
<codeWorkHr>H24</codeWorkHr>
|
542
|
+
</Mtt>
|
407
543
|
<txtRmk>marker navaid</txtRmk>
|
408
544
|
</Mkr>
|
409
|
-
<!--
|
545
|
+
<!-- NavigationalAid: [NDB] NDB NAVAID -->
|
410
546
|
<Ndb>
|
411
547
|
<NdbUid newEntity="true">
|
412
|
-
<codeId>
|
548
|
+
<codeId>NNN</codeId>
|
413
549
|
<geoLat>47.85916667N</geoLat>
|
414
550
|
<geoLong>7.56000000E</geoLong>
|
415
551
|
</NdbUid>
|
@@ -420,12 +556,33 @@ describe AIXM::Document do
|
|
420
556
|
<codeDatum>WGE</codeDatum>
|
421
557
|
<valElev>500</valElev>
|
422
558
|
<uomDistVer>FT</uomDistVer>
|
559
|
+
<Ntt>
|
560
|
+
<codeWorkHr>H24</codeWorkHr>
|
561
|
+
</Ntt>
|
423
562
|
<txtRmk>ndb navaid</txtRmk>
|
424
563
|
</Ndb>
|
425
|
-
<!--
|
564
|
+
<!-- NavigationalAid: [TACAN] TACAN NAVAID -->
|
565
|
+
<Tcn>
|
566
|
+
<TcnUid newEntity="true">
|
567
|
+
<codeId>TTT</codeId>
|
568
|
+
<geoLat>47.85916667N</geoLat>
|
569
|
+
<geoLong>7.56000000E</geoLong>
|
570
|
+
</TcnUid>
|
571
|
+
<OrgUid/>
|
572
|
+
<txtName>TACAN NAVAID</txtName>
|
573
|
+
<codeChannel>29X</codeChannel>
|
574
|
+
<codeDatum>WGE</codeDatum>
|
575
|
+
<valElev>500</valElev>
|
576
|
+
<uomDistVer>FT</uomDistVer>
|
577
|
+
<Ttt>
|
578
|
+
<codeWorkHr>H24</codeWorkHr>
|
579
|
+
</Ttt>
|
580
|
+
<txtRmk>tacan navaid</txtRmk>
|
581
|
+
</Tcn>
|
582
|
+
<!-- NavigationalAid: [VOR:VOR] VOR NAVAID -->
|
426
583
|
<Vor>
|
427
584
|
<VorUid newEntity="true">
|
428
|
-
<codeId>
|
585
|
+
<codeId>VVV</codeId>
|
429
586
|
<geoLat>47.85916667N</geoLat>
|
430
587
|
<geoLong>7.56000000E</geoLong>
|
431
588
|
</VorUid>
|
@@ -438,22 +595,119 @@ describe AIXM::Document do
|
|
438
595
|
<codeDatum>WGE</codeDatum>
|
439
596
|
<valElev>500</valElev>
|
440
597
|
<uomDistVer>FT</uomDistVer>
|
598
|
+
<Vtt>
|
599
|
+
<codeWorkHr>H24</codeWorkHr>
|
600
|
+
</Vtt>
|
441
601
|
<txtRmk>vor navaid</txtRmk>
|
442
602
|
</Vor>
|
443
|
-
<!--
|
603
|
+
<!-- NavigationalAid: [VOR:DVOR] DOPPLER-VOR NAVAID -->
|
604
|
+
<Vor>
|
605
|
+
<VorUid newEntity="true">
|
606
|
+
<codeId>DVV</codeId>
|
607
|
+
<geoLat>47.85916667N</geoLat>
|
608
|
+
<geoLong>7.56000000E</geoLong>
|
609
|
+
</VorUid>
|
610
|
+
<OrgUid/>
|
611
|
+
<txtName>DOPPLER-VOR NAVAID</txtName>
|
612
|
+
<codeType>DVOR</codeType>
|
613
|
+
<valFreq>111</valFreq>
|
614
|
+
<uomFreq>MHZ</uomFreq>
|
615
|
+
<codeTypeNorth>TRUE</codeTypeNorth>
|
616
|
+
<codeDatum>WGE</codeDatum>
|
617
|
+
<valElev>500</valElev>
|
618
|
+
<uomDistVer>FT</uomDistVer>
|
619
|
+
<Vtt>
|
620
|
+
<codeWorkHr>H24</codeWorkHr>
|
621
|
+
</Vtt>
|
622
|
+
<txtRmk>doppler-vor navaid</txtRmk>
|
623
|
+
</Vor>
|
624
|
+
<!-- NavigationalAid: [VOR:VOR] VOR/DME NAVAID -->
|
625
|
+
<Vor>
|
626
|
+
<VorUid newEntity="true">
|
627
|
+
<codeId>VDD</codeId>
|
628
|
+
<geoLat>47.85916667N</geoLat>
|
629
|
+
<geoLong>7.56000000E</geoLong>
|
630
|
+
</VorUid>
|
631
|
+
<OrgUid/>
|
632
|
+
<txtName>VOR/DME NAVAID</txtName>
|
633
|
+
<codeType>VOR</codeType>
|
634
|
+
<valFreq>111</valFreq>
|
635
|
+
<uomFreq>MHZ</uomFreq>
|
636
|
+
<codeTypeNorth>TRUE</codeTypeNorth>
|
637
|
+
<codeDatum>WGE</codeDatum>
|
638
|
+
<valElev>500</valElev>
|
639
|
+
<uomDistVer>FT</uomDistVer>
|
640
|
+
<Vtt>
|
641
|
+
<codeWorkHr>H24</codeWorkHr>
|
642
|
+
</Vtt>
|
643
|
+
<txtRmk>vor/dme navaid</txtRmk>
|
644
|
+
</Vor>
|
645
|
+
<!-- NavigationalAid: [DME] VOR/DME NAVAID -->
|
646
|
+
<Dme>
|
647
|
+
<DmeUid newEntity="true">
|
648
|
+
<codeId>VDD</codeId>
|
649
|
+
<geoLat>47.85916667N</geoLat>
|
650
|
+
<geoLong>7.56000000E</geoLong>
|
651
|
+
</DmeUid>
|
652
|
+
<OrgUid/>
|
653
|
+
<VorUid newEntity="true">
|
654
|
+
<codeId>VDD</codeId>
|
655
|
+
<geoLat>47.85916667N</geoLat>
|
656
|
+
<geoLong>7.56000000E</geoLong>
|
657
|
+
</VorUid>
|
658
|
+
<txtName>VOR/DME NAVAID</txtName>
|
659
|
+
<codeChannel>95X</codeChannel>
|
660
|
+
<codeDatum>WGE</codeDatum>
|
661
|
+
<valElev>500</valElev>
|
662
|
+
<uomDistVer>FT</uomDistVer>
|
663
|
+
<Dtt>
|
664
|
+
<codeWorkHr>H24</codeWorkHr>
|
665
|
+
</Dtt>
|
666
|
+
<txtRmk>vor/dme navaid</txtRmk>
|
667
|
+
</Dme>
|
668
|
+
<!-- NavigationalAid: [VOR:VOR] VORTAC NAVAID -->
|
669
|
+
<Vor>
|
670
|
+
<VorUid newEntity="true">
|
671
|
+
<codeId>VTT</codeId>
|
672
|
+
<geoLat>47.85916667N</geoLat>
|
673
|
+
<geoLong>7.56000000E</geoLong>
|
674
|
+
</VorUid>
|
675
|
+
<OrgUid/>
|
676
|
+
<txtName>VORTAC NAVAID</txtName>
|
677
|
+
<codeType>VOR</codeType>
|
678
|
+
<valFreq>111</valFreq>
|
679
|
+
<uomFreq>MHZ</uomFreq>
|
680
|
+
<codeTypeNorth>TRUE</codeTypeNorth>
|
681
|
+
<codeDatum>WGE</codeDatum>
|
682
|
+
<valElev>500</valElev>
|
683
|
+
<uomDistVer>FT</uomDistVer>
|
684
|
+
<Vtt>
|
685
|
+
<codeWorkHr>H24</codeWorkHr>
|
686
|
+
</Vtt>
|
687
|
+
<txtRmk>vortac navaid</txtRmk>
|
688
|
+
</Vor>
|
689
|
+
<!-- NavigationalAid: [TACAN] VORTAC NAVAID -->
|
444
690
|
<Tcn>
|
445
691
|
<TcnUid newEntity="true">
|
446
|
-
<codeId>
|
692
|
+
<codeId>VTT</codeId>
|
447
693
|
<geoLat>47.85916667N</geoLat>
|
448
694
|
<geoLong>7.56000000E</geoLong>
|
449
695
|
</TcnUid>
|
450
696
|
<OrgUid/>
|
451
|
-
<
|
697
|
+
<VorUid newEntity="true">
|
698
|
+
<codeId>VTT</codeId>
|
699
|
+
<geoLat>47.85916667N</geoLat>
|
700
|
+
<geoLong>7.56000000E</geoLong>
|
701
|
+
</VorUid>
|
702
|
+
<txtName>VORTAC NAVAID</txtName>
|
452
703
|
<codeChannel>29X</codeChannel>
|
453
704
|
<codeDatum>WGE</codeDatum>
|
454
705
|
<valElev>500</valElev>
|
455
706
|
<uomDistVer>FT</uomDistVer>
|
456
|
-
<
|
707
|
+
<Ttt>
|
708
|
+
<codeWorkHr>H24</codeWorkHr>
|
709
|
+
</Ttt>
|
710
|
+
<txtRmk>vortac navaid</txtRmk>
|
457
711
|
</Tcn>
|
458
712
|
</AIXM-Snapshot>
|
459
713
|
END
|