aixm 0.3.7 → 0.3.8

Sign up to get free protection for your applications and to get access to all the features.
Files changed (81) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/test.yml +26 -0
  3. data/.ruby-version +1 -1
  4. data/CHANGELOG.md +17 -4
  5. data/README.md +23 -5
  6. data/lib/aixm/component/fato.rb +3 -3
  7. data/lib/aixm/component/frequency.rb +1 -1
  8. data/lib/aixm/component/geometry/border.rb +9 -3
  9. data/lib/aixm/component/helipad.rb +1 -1
  10. data/lib/aixm/component/lighting.rb +1 -1
  11. data/lib/aixm/component/runway.rb +4 -7
  12. data/lib/aixm/config.rb +2 -1
  13. data/lib/aixm/document.rb +1 -0
  14. data/lib/aixm/feature/address.rb +1 -1
  15. data/lib/aixm/feature/airport.rb +13 -4
  16. data/lib/aixm/feature/airspace.rb +11 -8
  17. data/lib/aixm/feature/navigational_aid/designated_point.rb +1 -1
  18. data/lib/aixm/feature/navigational_aid/dme.rb +1 -1
  19. data/lib/aixm/feature/navigational_aid/marker.rb +1 -1
  20. data/lib/aixm/feature/navigational_aid/ndb.rb +1 -1
  21. data/lib/aixm/feature/navigational_aid/tacan.rb +1 -1
  22. data/lib/aixm/feature/navigational_aid/vor.rb +1 -1
  23. data/lib/aixm/feature/obstacle.rb +1 -1
  24. data/lib/aixm/feature/obstacle_group.rb +1 -1
  25. data/lib/aixm/feature/organisation.rb +1 -1
  26. data/lib/aixm/feature/service.rb +1 -1
  27. data/lib/aixm/feature/unit.rb +1 -1
  28. data/lib/aixm/refinements.rb +39 -8
  29. data/lib/aixm/version.rb +1 -1
  30. data/rakefile.rb +22 -8
  31. data/spec/lib/aixm/a_spec.rb +55 -55
  32. data/spec/lib/aixm/component/fato_spec.rb +30 -23
  33. data/spec/lib/aixm/component/frequency_spec.rb +12 -13
  34. data/spec/lib/aixm/component/geometry/arc_spec.rb +7 -9
  35. data/spec/lib/aixm/component/geometry/border_spec.rb +8 -3
  36. data/spec/lib/aixm/component/geometry/circle_spec.rb +6 -8
  37. data/spec/lib/aixm/component/geometry/point_spec.rb +2 -4
  38. data/spec/lib/aixm/component/geometry_spec.rb +57 -62
  39. data/spec/lib/aixm/component/helipad_spec.rb +25 -19
  40. data/spec/lib/aixm/component/layer_spec.rb +17 -19
  41. data/spec/lib/aixm/component/lighting_spec.rb +21 -15
  42. data/spec/lib/aixm/component/runway_spec.rb +44 -37
  43. data/spec/lib/aixm/component/surface_spec.rb +24 -24
  44. data/spec/lib/aixm/component/timetable_spec.rb +7 -9
  45. data/spec/lib/aixm/component/vertical_limits_spec.rb +9 -12
  46. data/spec/lib/aixm/config_spec.rb +8 -8
  47. data/spec/lib/aixm/d_spec.rb +28 -28
  48. data/spec/lib/aixm/document_spec.rb +46 -37
  49. data/spec/lib/aixm/errors_spec.rb +2 -2
  50. data/spec/lib/aixm/f_spec.rb +16 -16
  51. data/spec/lib/aixm/feature/address_spec.rb +12 -7
  52. data/spec/lib/aixm/feature/airport_spec.rb +80 -74
  53. data/spec/lib/aixm/feature/airspace_spec.rb +32 -28
  54. data/spec/lib/aixm/feature/navigational_aid/designated_point_spec.rb +16 -11
  55. data/spec/lib/aixm/feature/navigational_aid/dme_spec.rb +22 -16
  56. data/spec/lib/aixm/feature/navigational_aid/marker_spec.rb +13 -7
  57. data/spec/lib/aixm/feature/navigational_aid/ndb_spec.rb +15 -9
  58. data/spec/lib/aixm/feature/navigational_aid/tacan_spec.rb +22 -16
  59. data/spec/lib/aixm/feature/navigational_aid/vor_spec.rb +21 -15
  60. data/spec/lib/aixm/feature/navigational_aid_spec.rb +6 -6
  61. data/spec/lib/aixm/feature/obstacle_group_spec.rb +25 -21
  62. data/spec/lib/aixm/feature/obstacle_spec.rb +47 -42
  63. data/spec/lib/aixm/feature/organisation_spec.rb +16 -10
  64. data/spec/lib/aixm/feature/service_spec.rb +9 -9
  65. data/spec/lib/aixm/feature/unit_spec.rb +21 -13
  66. data/spec/lib/aixm/feature_spec.rb +5 -5
  67. data/spec/lib/aixm/p_spec.rb +37 -37
  68. data/spec/lib/aixm/refinements_spec.rb +164 -115
  69. data/spec/lib/aixm/version_spec.rb +1 -1
  70. data/spec/lib/aixm/w_spec.rb +28 -28
  71. data/spec/lib/aixm/xy_spec.rb +34 -34
  72. data/spec/lib/aixm/z_spec.rb +19 -19
  73. data/spec/macros/marking.rb +3 -3
  74. data/spec/macros/organisation.rb +2 -2
  75. data/spec/macros/remarks.rb +3 -3
  76. data/spec/macros/timetable.rb +2 -2
  77. data/spec/macros/xy.rb +2 -2
  78. data/spec/macros/z_qnh.rb +2 -2
  79. data/spec/spec_helper.rb +7 -0
  80. metadata +3 -3
  81. data/.travis.yml +0 -8
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bad5f1c431575562810faf541c197660e815e3652213dc8d6fedc8cde897f9d4
4
- data.tar.gz: f1a750f511dc13146af92a25aea066a89a67d358534f2f4a582e415919855ef4
3
+ metadata.gz: ca15626c3948c7f7914face0ccef421502a3b9103bba33bb9f8197696f083a2c
4
+ data.tar.gz: 8cd271b55758819f0593be1150d4a88484717a0221467c532f852aa011b270a9
5
5
  SHA512:
6
- metadata.gz: f587e9d97f7a1fdb21e38f79c2be3567a9a8a8a4c0bc692b74c19305db8b0c2c8fb734d0b90b7ba488916ca9bc23a2a60ba4e836510be6984d1bd95055ffbe28
7
- data.tar.gz: ac70ee0a8c63f20f0fb0277ba075c0880ed2ad39ae32e6c5e38d9fa76d80943a7c8efb394bb33af52f5c6ce00081d066e59d9df9a1105812bfaf8bafc2a23596
6
+ metadata.gz: edee618c607d2e67ac4705a26ff4401f6479958ba84313f9fffc0ca8a3003f3110e8ddfe6a877333c2f29395eaa85cfdf3245c57bd4f3867d8bf48d26f1dc112
7
+ data.tar.gz: 60fe778dcbf871980ce4b477819be4e1d8a8b4e055365c00837dab226646b714b40f42edd40906acc9726f0f9cd29b4144a1a7506538349ef7e8bb5743146509
@@ -0,0 +1,26 @@
1
+ name: Test
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - master
7
+
8
+ jobs:
9
+ build:
10
+
11
+ runs-on: ubuntu-latest
12
+ strategy:
13
+ matrix:
14
+ ruby:
15
+ - 2.6.x
16
+ steps:
17
+ - uses: actions/checkout@v1
18
+ - name: Set up Ruby ${{ matrix.ruby }}
19
+ uses: actions/setup-ruby@v1
20
+ with:
21
+ ruby-version: ${{ matrix.ruby }}
22
+ - name: Build and test
23
+ run: |
24
+ gem install bundler
25
+ bundle install --jobs 4 --retry 3
26
+ SPEC_SCOPE=all bundle exec rake
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- ruby-2.6.4
1
+ ruby-2.6.5
data/CHANGELOG.md CHANGED
@@ -1,3 +1,12 @@
1
+ ## 0.3.8
2
+
3
+ #### Additions
4
+ * `AIXM.config.mid_region` to generate `mid` attributes on all features
5
+ * Refinement `String#insert_payload_hash`
6
+
7
+ #### Changes
8
+ * Fix calculation of magnetic bearing
9
+
1
10
  ## 0.3.7
2
11
 
3
12
  #### Additions
@@ -37,14 +46,17 @@
37
46
  * `Runway#preparation`, `Runway#condition` and `Runway#vfr_pattern`
38
47
  * `Service#guessed_unit_type`
39
48
  * Surface for `Runway|Helipad#surface`
40
- * Extracted `AIXM::MIN`, `AIXM::SEC` and `AIXM::DMS_RE` to scan for coordinates in texts
49
+ * Extracted `AIXM::MIN`, `AIXM::SEC` and `AIXM::DMS_RE` to scan for coordinates
50
+ in texts
41
51
  * Refinement `String#payload_hash`
42
52
 
43
53
  #### Breaking Changes
44
54
  * Require Ruby 2.6
45
- * Renamed `AIXM::H` to `AIXM::A` (angle) and add simple arithmetics to make it more versatile
55
+ * Renamed `AIXM::H` to `AIXM::A` (angle) and add simple arithmetics to make it
56
+ more versatile
46
57
  * `Runway|Helipad#composition` moved to `Runway|Helipad#surface`
47
- * DMS notation `{-}{DD}DMMSS{.SS}[NESW]` now requires compulsory cardinal direction (N, E, S or W) at the end
58
+ * DMS notation `{-}{DD}DMMSS{.SS}[NESW]` now requires compulsory cardinal
59
+ direction (N, E, S or W) at the end
48
60
 
49
61
  #### Changes
50
62
  * Service is a feature now
@@ -56,7 +68,8 @@
56
68
 
57
69
  #### Changes
58
70
  * Updated OFMX schema URI
59
- * Added `eql?` and `hash` to `AIXM::XY|Z|D|H|F` to allow for instances of these classes to be used as Hash keys.
71
+ * Added `eql?` and `hash` to `AIXM::XY|Z|D|H|F` to allow for instances of these
72
+ classes to be used as Hash keys.
60
73
 
61
74
  ## 0.3.2
62
75
 
data/README.md CHANGED
@@ -1,5 +1,5 @@
1
1
  [![Version](https://img.shields.io/gem/v/aixm.svg?style=flat)](https://rubygems.org/gems/aixm)
2
- [![Continuous Integration](https://img.shields.io/travis/svoop/aixm/master.svg?style=flat)](https://travis-ci.org/svoop/aixm)
2
+ [![Tests](https://github.com/svoop/aixm/workflows/Test/badge.svg)](https://github.com/svoop/aixm/actions?workflow=Test)
3
3
  [![Code Climate](https://img.shields.io/codeclimate/maintainability/svoop/aixm.svg?style=flat)](https://codeclimate.com/github/svoop/aixm/)
4
4
  [![Donorbox](https://img.shields.io/badge/donate-on_donorbox-yellow.svg)](https://donorbox.org/bitcetera)
5
5
 
@@ -15,7 +15,7 @@ For now, only the parts needed to automize the AIP import of [open flightmaps](h
15
15
 
16
16
  ## Install
17
17
 
18
- Add this to your `Gemfile`:
18
+ Add this to your <tt>Gemfile</tt> or <tt>gems.rb</tt>:
19
19
 
20
20
  ```ruby
21
21
  gem aixm
@@ -47,11 +47,12 @@ See `AIXM::CLASSES` for the complete list of shorthand names.
47
47
 
48
48
  ## Configuration
49
49
 
50
- The following configuration options are available for setting and getting:
50
+ ### AIXM.config.schema
51
+
52
+ The schema is either `:aixm` (default) or `:ofmx`:
51
53
 
52
54
  ```ruby
53
- AIXM.config.schema # either :aixm (default) or :ofmx
54
- AIXM.config.ignored_errors # ignore XML schema errors which match this regex
55
+ AIXM.config.schema = :ofmx # =>:ofmx
55
56
  ```
56
57
 
57
58
  There are shortcuts to set and get the schema:
@@ -65,6 +66,23 @@ AIXM.schema # => :ofmx
65
66
  AIXM.schema(:version) # => 0
66
67
  ```
67
68
 
69
+ ### AIXM.config.mid_region
70
+
71
+ In order to insert [OFMX-compliant `mid` attributes]() for all `*Uid` elements, set this configuration option to the OFMX region the element belongs to. By default, no `mid` attributes are inserted.
72
+
73
+ ```ruby
74
+ AIXM.config.mid_region # => nil - don't insert any mid attributes
75
+ AIXM.config.mid_region = 'LF' # => 'LF' - insert mid attributes for region LF
76
+ ```
77
+
78
+ ### AIXM.config.ignored_errors
79
+
80
+ In case you want to ignore certain XML schema validation errors, set this configuration option to a regular expression which matches the error messages to ignore. By default, no errors are ignored.
81
+
82
+ ```ruby
83
+ AIXM.config.ignored_errors = /invalid date/i
84
+ ```
85
+
68
86
  ## Validation
69
87
 
70
88
  `AIXM::Document#valid?` validates the resulting AIXM or OFMX against its XML schema. If any, you find the errors in `AIXM::Document#errors`.
@@ -131,7 +131,7 @@ module AIXM
131
131
  builder.FtoUid do |fto_uid|
132
132
  fto_uid << airport.to_uid.indent(2)
133
133
  fto_uid.txtDesig(name)
134
- end
134
+ end.insert_payload_hash(region: AIXM.config.mid_region)
135
135
  end
136
136
 
137
137
  # @return [String] AIXM or OFMX markup
@@ -222,7 +222,7 @@ module AIXM
222
222
  # @return [AIXM::A] magnetic orientation (magnetic bearing) in degrees
223
223
  def magnetic_orientation
224
224
  if geographic_orientation && fato.airport.declination
225
- geographic_orientation + fato.airport.declination
225
+ geographic_orientation - fato.airport.declination
226
226
  end
227
227
  end
228
228
 
@@ -232,7 +232,7 @@ module AIXM
232
232
  builder.FdnUid do |fdn_uid|
233
233
  fdn_uid << fato.to_uid.indent(2)
234
234
  fdn_uid.txtDesig(name)
235
- end
235
+ end.insert_payload_hash(region: AIXM.config.mid_region)
236
236
  end
237
237
 
238
238
  # @return [String] AIXM or OFMX markup
@@ -108,7 +108,7 @@ module AIXM
108
108
  builder.FqyUid do |fqy_uid|
109
109
  fqy_uid << service.to_uid.indent(2)
110
110
  fqy_uid.valFreqTrans(transmission_f.freq)
111
- end
111
+ end.insert_payload_hash(region: AIXM.config.mid_region)
112
112
  end
113
113
 
114
114
  # @return [String] AIXM or OFMX markup
@@ -33,13 +33,19 @@ module AIXM
33
33
  @name = value
34
34
  end
35
35
 
36
+ # @return [String] UID markup
37
+ def to_uid(as: :GbrUid)
38
+ builder = Builder::XmlMarkup.new(indent: 2)
39
+ builder.tag!(as) do |tag|
40
+ tag.txtName(name.to_s)
41
+ end.insert_payload_hash(region: AIXM.config.mid_region)
42
+ end
43
+
36
44
  # @return [String] AIXM or OFMX markup
37
45
  def to_xml
38
46
  builder = Builder::XmlMarkup.new(indent: 2)
39
47
  builder.Avx do |avx|
40
- avx.GbrUid do |gbr_uid|
41
- gbr_uid.txtName(name.to_s)
42
- end
48
+ avx << to_uid.indent(2)
43
49
  avx.codeType('FNT')
44
50
  avx.geoLat(xy.lat(AIXM.schema))
45
51
  avx.geoLong(xy.long(AIXM.schema))
@@ -164,7 +164,7 @@ module AIXM
164
164
  builder.TlaUid do |tla_uid|
165
165
  tla_uid << airport.to_uid.indent(2)
166
166
  tla_uid.txtDesig(name)
167
- end
167
+ end.insert_payload_hash(region: AIXM.config.mid_region)
168
168
  end
169
169
 
170
170
  # @return [String] AIXM or OFMX markup
@@ -113,7 +113,7 @@ module AIXM
113
113
  builder.tag!(as) do |tag|
114
114
  tag << lightable.to_uid.indent(2)
115
115
  tag.codePsn(POSITIONS.key(position).to_s)
116
- end
116
+ end.insert_payload_hash(region: AIXM.config.mid_region)
117
117
  end
118
118
 
119
119
  # @return [String] AIXM or OFMX markup
@@ -138,7 +138,7 @@ module AIXM
138
138
  builder.RwyUid do |rwy_uid|
139
139
  rwy_uid << airport.to_uid.indent(2)
140
140
  rwy_uid.txtDesig(name)
141
- end
141
+ end.insert_payload_hash(region: AIXM.config.mid_region)
142
142
  end
143
143
 
144
144
  # @return [String] AIXM or OFMX markup
@@ -277,7 +277,7 @@ module AIXM
277
277
  # @return [AIXM::A] magnetic orientation (magnetic bearing) in degrees
278
278
  def magnetic_orientation
279
279
  if geographic_orientation && runway.airport.declination
280
- geographic_orientation + runway.airport.declination
280
+ geographic_orientation - runway.airport.declination
281
281
  end
282
282
  end
283
283
 
@@ -287,7 +287,7 @@ module AIXM
287
287
  builder.RdnUid do |rdn_uid|
288
288
  rdn_uid << runway.to_uid.indent(2)
289
289
  rdn_uid.txtDesig(name)
290
- end
290
+ end.insert_payload_hash(region: AIXM.config.mid_region)
291
291
  end
292
292
 
293
293
  # @return [String] AIXM or OFMX markup
@@ -309,10 +309,7 @@ module AIXM
309
309
  if displaced_threshold
310
310
  builder.Rdd do |rdd|
311
311
  rdd.RddUid do |rdd_uid|
312
- rdd_uid.RdnUid do |rdn_uid|
313
- rdn_uid << runway.to_uid.indent(6)
314
- rdn_uid.txtDesig(name)
315
- end
312
+ rdd_uid << to_uid.indent(4)
316
313
  rdd_uid.codeType('DPLM')
317
314
  rdd_uid.codeDayPeriod('A')
318
315
  end
data/lib/aixm/config.rb CHANGED
@@ -77,7 +77,8 @@ module AIXM
77
77
  # @return [OpenStruct]
78
78
  def initialize_config
79
79
  @@config = OpenStruct.new(
80
- schema: :aixm
80
+ schema: :aixm,
81
+ mid: false
81
82
  )
82
83
  end
83
84
 
data/lib/aixm/document.rb CHANGED
@@ -7,6 +7,7 @@ module AIXM
7
7
  #
8
8
  # ===Cheat Sheet in Pseudo Code:
9
9
  # document = AIXM.document(
10
+ # region: String
10
11
  # namespace: String (UUID)
11
12
  # created_at: Time or Date or String
12
13
  # effective_at: Time or Date or String
@@ -81,7 +81,7 @@ module AIXM
81
81
  tag << addressable.to_uid.indent(2) if addressable
82
82
  tag.codeType(TYPES.key(type).to_s.then_if(AIXM.aixm?) { |t| t.sub(/-\w+$/, '') })
83
83
  tag.noSeq(sequence)
84
- end
84
+ end.insert_payload_hash(region: AIXM.config.mid_region)
85
85
  end
86
86
 
87
87
  # @return [String] AIXM or OFMX markup
@@ -74,6 +74,9 @@ module AIXM
74
74
  # declination represents the magnetic north is to the right (aka: east)
75
75
  # by this angle.
76
76
  #
77
+ # To convert a magnetic bearing to the corresponding geographic (aka:
78
+ # true) bearing, the declination has to be added.
79
+ #
77
80
  # @see https://en.wikipedia.org/wiki/Magnetic_declination
78
81
  # @return [Float, nil] magnetic declination in degrees
79
82
  attr_reader :declination
@@ -280,7 +283,15 @@ module AIXM
280
283
  builder = Builder::XmlMarkup.new(indent: 2)
281
284
  builder.tag!(as) do |tag|
282
285
  tag.codeId(id)
283
- end
286
+ end.insert_payload_hash(region: AIXM.config.mid_region)
287
+ end
288
+
289
+ # @return [String] UID markup
290
+ def to_wrapped_uid(as: :AhpUid, with:)
291
+ builder = Builder::XmlMarkup.new(indent: 2)
292
+ builder.tag!(with) do |tag|
293
+ tag << to_uid(as: as).indent(2)
294
+ end.insert_payload_hash(region: AIXM.config.mid_region)
284
295
  end
285
296
 
286
297
  # @return [String] AIXM or OFMX markup
@@ -322,9 +333,7 @@ module AIXM
322
333
  end
323
334
  if usage_limitations.any?
324
335
  builder.Ahu do |ahu|
325
- ahu.AhuUid do |ahu_uid|
326
- ahu_uid << to_uid.indent(4)
327
- end
336
+ ahu << to_wrapped_uid(with: :AhuUid).indent(2)
328
337
  usage_limitations.each do |usage_limitation|
329
338
  ahu << usage_limitation.to_xml.indent(2)
330
339
  end
@@ -136,7 +136,15 @@ module AIXM
136
136
  builder.tag!(as) do |tag|
137
137
  tag.codeType(TYPES.key(type).to_s)
138
138
  tag.codeId(id)
139
- end
139
+ end.insert_payload_hash(region: AIXM.config.mid_region)
140
+ end
141
+
142
+ # @return [String] UID markup
143
+ def to_wrapped_uid(as: :AseUid, with:)
144
+ builder = Builder::XmlMarkup.new(indent: 2)
145
+ builder.tag!(with) do |tag|
146
+ tag << to_uid(as: as).indent(2)
147
+ end.insert_payload_hash(region: AIXM.config.mid_region)
140
148
  end
141
149
 
142
150
  # @raise [AIXM::GeometryError] if the geometry is not closed
@@ -155,9 +163,7 @@ module AIXM
155
163
  end
156
164
  end
157
165
  builder.Abd do |abd|
158
- abd.AbdUid do |abd_uid|
159
- abd_uid << to_uid.indent(4)
160
- end
166
+ abd << to_wrapped_uid(with: :AbdUid).indent(2)
161
167
  abd << geometry.to_xml.indent(2)
162
168
  end
163
169
  if layered?
@@ -169,9 +175,7 @@ module AIXM
169
175
  ase << layers[index].to_xml.indent(2)
170
176
  end
171
177
  builder.Adg do |adg|
172
- adg.AdgUid do |adg_uid|
173
- adg_uid << layer_airspace.to_uid.indent(4)
174
- end
178
+ adg << layer_airspace.to_wrapped_uid(with: :AdgUid).indent(2)
175
179
  adg << to_uid(as: :AseUidSameExtent).indent(2)
176
180
  end
177
181
  end
@@ -184,7 +188,6 @@ module AIXM
184
188
  def layered?
185
189
  layers.count > 1
186
190
  end
187
-
188
191
  end
189
192
  end
190
193
  end
@@ -63,7 +63,7 @@ module AIXM
63
63
  dpn_uid.codeId(id)
64
64
  dpn_uid.geoLat(xy.lat(AIXM.schema))
65
65
  dpn_uid.geoLong(xy.long(AIXM.schema))
66
- end
66
+ end.insert_payload_hash(region: AIXM.config.mid_region)
67
67
  end
68
68
 
69
69
  # @return [String] AIXM or OFMX markup
@@ -73,7 +73,7 @@ module AIXM
73
73
  dme_uid.codeId(id)
74
74
  dme_uid.geoLat(xy.lat(AIXM.schema))
75
75
  dme_uid.geoLong(xy.long(AIXM.schema))
76
- end
76
+ end.insert_payload_hash(region: AIXM.config.mid_region)
77
77
  end
78
78
 
79
79
  # @return [String] AIXM or OFMX markup
@@ -57,7 +57,7 @@ module AIXM
57
57
  mkr_uid.codeId(id)
58
58
  mkr_uid.geoLat(xy.lat(AIXM.schema))
59
59
  mkr_uid.geoLong(xy.long(AIXM.schema))
60
- end
60
+ end.insert_payload_hash(region: AIXM.config.mid_region)
61
61
  end
62
62
 
63
63
  # @return [String] AIXM or OFMX markup
@@ -59,7 +59,7 @@ module AIXM
59
59
  ndb_uid.codeId(id)
60
60
  ndb_uid.geoLat(xy.lat(AIXM.schema))
61
61
  ndb_uid.geoLong(xy.long(AIXM.schema))
62
- end
62
+ end.insert_payload_hash(region: AIXM.config.mid_region)
63
63
  end
64
64
 
65
65
  # @return [String] AIXM or OFMX markup
@@ -32,7 +32,7 @@ module AIXM
32
32
  tcn_uid.codeId(id)
33
33
  tcn_uid.geoLat(xy.lat(AIXM.schema))
34
34
  tcn_uid.geoLong(xy.long(AIXM.schema))
35
- end
35
+ end.insert_payload_hash(region: AIXM.config.mid_region)
36
36
  end
37
37
 
38
38
  # @return [String] AIXM or OFMX markup
@@ -96,7 +96,7 @@ module AIXM
96
96
  vor_uid.codeId(id)
97
97
  vor_uid.geoLat(xy.lat(AIXM.schema))
98
98
  vor_uid.geoLong(xy.long(AIXM.schema))
99
- end
99
+ end.insert_payload_hash(region: AIXM.config.mid_region)
100
100
  end
101
101
 
102
102
  # @return [String] AIXM or OFMX markup
@@ -237,7 +237,7 @@ module AIXM
237
237
  tag << obstacle_group.to_uid.indent(2) if AIXM.ofmx?
238
238
  tag.geoLat((xy.lat(AIXM.schema)))
239
239
  tag.geoLong((xy.long(AIXM.schema)))
240
- end
240
+ end.insert_payload_hash(region: AIXM.config.mid_region)
241
241
  end
242
242
 
243
243
  # @return [String] AIXM or OFMX markup