aixm 1.4.3 → 1.5.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e9e8f3bbcf81e3c87a204045d8584260a3e2f847a202e646e6460bcf79ae7e05
4
- data.tar.gz: 83016171288807a92acee0673e989aa23c00b28cb2b81bc12552fd1873571013
3
+ metadata.gz: d3771e796263217c6b52588b5646798dbffe20a7c66f3f71da80d04b18dad32e
4
+ data.tar.gz: abd545b3cdf9f98f8d707b2358ec4df4c2f6c579dbe7b32003b69b12582b5c7f
5
5
  SHA512:
6
- metadata.gz: 862175b6cbc5f886a820d3613f9a419ada1e9101d1dc6ea5f9ca7e33f13fb6407d04a4d4b7c6d7bbef3fdb32e8cb48883c0e04adf042b07002e56bb0732e1411
7
- data.tar.gz: ea726dfb8a05c2fa5fea716885d73d52328b96a9ddc36739194e92e6001524eceade0d5985940eafd3c24f1f04acb4f6417f3f032c13ba7244063947f4d39d38
6
+ metadata.gz: 318d08a571780676fd1e4ab60b4a87a9e9195d79816c15965e7beb40541b7780615fc4ba147f268d076e0ba4520225f01fe5580772a5563a1ed2265fed727a13
7
+ data.tar.gz: e31f3b267dbf3aaf6db3335fafe483c1e544dd639042b5414afde18cb0e77a8de3372f53d43067f3fc863a7677da431e0a02ee9b1aaab488c0fc76969bbe8d0a
checksums.yaml.gz.sig CHANGED
Binary file
data/CHANGELOG.md CHANGED
@@ -2,6 +2,17 @@
2
2
 
3
3
  Nothing so far
4
4
 
5
+ ## 1.5.1
6
+
7
+ ### Changes
8
+ * Assigning an emergency transmission or reception frequency sets the type
9
+ to `:emergency` as well
10
+
11
+ ## 1.5.0
12
+
13
+ ### Changes
14
+ * Bump OFMX schema to 0.2
15
+
5
16
  ## 1.4.3
6
17
 
7
18
  ### Additions
data/README.md CHANGED
@@ -1,7 +1,7 @@
1
1
  [![Version](https://img.shields.io/gem/v/aixm.svg?style=flat)](https://rubygems.org/gems/aixm)
2
2
  [![Tests](https://img.shields.io/github/actions/workflow/status/svoop/aixm/test.yml?style=flat&label=tests)](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
- [![Donorbox](https://img.shields.io/badge/donate-on_donorbox-yellow.svg)](https://donorbox.org/bitcetera)
4
+ [![GitHub Sponsors](https://img.shields.io/github/sponsors/svoop.svg)](https://github.com/sponsors/svoop)
5
5
 
6
6
  # AIXM
7
7
 
@@ -13,6 +13,8 @@ For now, only the parts needed to automize the AIP import of [open flightmaps](h
13
13
  * [API](https://www.rubydoc.info/gems/aixm)
14
14
  * Author: [Sven Schwyn - Bitcetera](https://bitcetera.com)
15
15
 
16
+ Thank you for supporting free and open-source software by sponsoring on [GitHub](https://github.com/sponsors/svoop) or on [Donorbox](https://donorbox.com/bitcetera). Any gesture is appreciated, from a single Euro for a ☕️ cup of coffee to 🍹 early retirement.
17
+
16
18
  ## Install
17
19
 
18
20
  ### Security
@@ -94,6 +94,7 @@ module AIXM
94
94
 
95
95
  def transmission_f=(value)
96
96
  fail(ArgumentError, "invalid transmission_f") unless value.is_a?(AIXM::F) && value.voice?
97
+ self.type = :emergency if value.voice_emergency?
97
98
  @transmission_f = value
98
99
  end
99
100
 
@@ -104,6 +105,7 @@ module AIXM
104
105
 
105
106
  def reception_f=(value)
106
107
  fail(ArgumentError, "invalid reception_f") unless value.nil? || value.is_a?(AIXM::F) && value.voice?
108
+ self.type = :emergency if value&.voice_emergency?
107
109
  @reception_f = value
108
110
  end
109
111
 
data/lib/aixm/config.rb CHANGED
@@ -9,8 +9,8 @@ module AIXM
9
9
  },
10
10
  ofmx: {
11
11
  version: '0',
12
- namespace: 'http://schema.openflightmaps.org/0.1/OFMX-Snapshot.xsd',
13
- xsd: Pathname(__dir__).join('..', '..', 'schemas', 'ofmx', '0.1', 'OFMX-Snapshot.xsd'),
12
+ namespace: 'http://schema.openflightmaps.org/0.2/OFMX-Snapshot.xsd',
13
+ xsd: Pathname(__dir__).join('..', '..', 'schemas', 'ofmx', '0.2', 'OFMX-Snapshot.xsd'),
14
14
  root: 'OFMX-Snapshot'
15
15
  }
16
16
  }.freeze
data/lib/aixm/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module AIXM
2
- VERSION = "1.4.3".freeze
2
+ VERSION = "1.5.1".freeze
3
3
  end
@@ -0,0 +1,209 @@
1
+ {
2
+ "fields": [
3
+ {
4
+ "name": "codeId",
5
+ "type": "integer",
6
+ "constraints": {
7
+ "required": true,
8
+ "unique": true,
9
+ "minimum": 1
10
+ }
11
+ },
12
+ {
13
+ "name": "codeType",
14
+ "type": "string",
15
+ "constraints": {
16
+ "required": true,
17
+ "enum": [
18
+ "ANTENNA",
19
+ "BUILDING",
20
+ "CHIMNEY",
21
+ "CRANE",
22
+ "MAST",
23
+ "TOWER",
24
+ "TREE",
25
+ "WINDTURBINE",
26
+ "OTHER"
27
+ ]
28
+ }
29
+ },
30
+ {
31
+ "name": "txtName",
32
+ "type": "string",
33
+ "constraints": {
34
+ "pattern": "[A-Z]*"
35
+ }
36
+ },
37
+ {
38
+ "name": "codeLgt",
39
+ "type": "string",
40
+ "constraints": {
41
+ "enum": [
42
+ "Y",
43
+ "N"
44
+ ]
45
+ }
46
+ },
47
+ {
48
+ "name": "codeMarking",
49
+ "type": "string",
50
+ "constraints": {
51
+ "enum": [
52
+ "Y",
53
+ "N"
54
+ ]
55
+ }
56
+ },
57
+ {
58
+ "name": "txtDescrLgt",
59
+ "type": "string"
60
+ },
61
+ {
62
+ "name": "txtDescrMarking",
63
+ "type": "string"
64
+ },
65
+ {
66
+ "name": "geoLat",
67
+ "type": "string",
68
+ "constraints": {
69
+ "required": true,
70
+ "pattern": "(([0-8][0-9](\\.\\d{1,8}){0,1}(N|S))|(90(\\.0{1,8}){0,1}(N|S)))"
71
+ }
72
+ },
73
+ {
74
+ "name": "geoLong",
75
+ "type": "string",
76
+ "constraints": {
77
+ "required": true,
78
+ "pattern": "((((0[0-9])|(1[0-7]))[0-9](\\.\\d{1,8}){0,1}(E|W))|(180(\\.0{1,8}){0,1}(E|W)))"
79
+ }
80
+ },
81
+ {
82
+ "name": "valGeoAccuracy",
83
+ "type": "integer",
84
+ "constraints": {
85
+ "minimum": 0
86
+ }
87
+ },
88
+ {
89
+ "name": "uomGeoAccuracy",
90
+ "type": "string",
91
+ "constraints": {
92
+ "enum": [
93
+ "FT",
94
+ "KM",
95
+ "M",
96
+ "NM"
97
+ ]
98
+ }
99
+ },
100
+ {
101
+ "name": "valElev",
102
+ "type": "integer",
103
+ "constraints": {
104
+ "required": true
105
+ }
106
+ },
107
+ {
108
+ "name": "valElevAccuracy",
109
+ "type": "integer",
110
+ "constraints": {
111
+ "minimum": 0
112
+ }
113
+ },
114
+ {
115
+ "name": "valHgt",
116
+ "type": "integer",
117
+ "constraints": {
118
+ "minimum": 1
119
+ }
120
+ },
121
+ {
122
+ "name": "codeHgtAccuracy",
123
+ "type": "string",
124
+ "constraints": {
125
+ "enum": [
126
+ "Y",
127
+ "N"
128
+ ]
129
+ }
130
+ },
131
+ {
132
+ "name": "uomDistVer",
133
+ "type": "string",
134
+ "constraints": {
135
+ "required": true,
136
+ "enum": [
137
+ "FT",
138
+ "M"
139
+ ]
140
+ }
141
+ },
142
+ {
143
+ "name": "valRadius",
144
+ "type": "integer",
145
+ "constraints": {
146
+ "minimum": 1
147
+ }
148
+ },
149
+ {
150
+ "name": "uomRadius",
151
+ "type": "string",
152
+ "constraints": {
153
+ "enum": [
154
+ "FT",
155
+ "KM",
156
+ "M",
157
+ "NM"
158
+ ]
159
+ }
160
+ },
161
+ {
162
+ "name": "codeGroupId",
163
+ "type": "string",
164
+ "constraints": {
165
+ "pattern": "(\\d+|[\\da-f]{8}-[\\da-f]{4}-[\\da-f]{4}-[\\da-f]{4}-[\\da-f]{12})?"
166
+ }
167
+ },
168
+ {
169
+ "name": "txtGroupName",
170
+ "type": "string"
171
+ },
172
+ {
173
+ "name": "codeLinkedToId",
174
+ "type": "integer"
175
+ },
176
+ {
177
+ "name": "codeLinkType",
178
+ "type": "string",
179
+ "constraints": {
180
+ "enum": [
181
+ "CABLE",
182
+ "SOLID",
183
+ "OTHER"
184
+ ]
185
+ }
186
+ },
187
+ {
188
+ "name": "datetimeValidWef",
189
+ "type": "string",
190
+ "format": "datetime"
191
+ },
192
+ {
193
+ "name": "datetimeValidTil",
194
+ "type": "string",
195
+ "format": "datetime"
196
+ },
197
+ {
198
+ "name": "txtRmk",
199
+ "type": "string"
200
+ },
201
+ {
202
+ "name": "source",
203
+ "type": "string",
204
+ "constraints": {
205
+ "required": true
206
+ }
207
+ }
208
+ ]
209
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "dialect": {
3
+ "csvddfVersion": 1.2,
4
+ "header": true,
5
+ "caseSensitiveHeader": true,
6
+ "delimiter": ",",
7
+ "quoteChar": "\"",
8
+ "doubleQuote": true,
9
+ "lineTerminator": "\r\n",
10
+ "skipInitialSpace": false
11
+ }
12
+ }