canql 2.7.0 → 2.8.0
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 +5 -0
- data/code_safety.yml +13 -13
- data/lib/canql/grammars/anomaly.treetop +11 -1
- data/lib/canql/grammars/patient.treetop +1 -1
- data/lib/canql/nodes/anomaly.rb +11 -0
- data/lib/canql/nodes/patient.rb +2 -1
- data/lib/canql/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 876c07af5b28f571465a44fd8093d648f5a0323e991a41a440428dd08d369eec
|
4
|
+
data.tar.gz: 4440b547119f18e7e815c76753695decd9ebe3f134f9bd3ff04fc099b70e913c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3422683985fe7a7708d596638331e745dc11ec864dd38f188b939572f51de773097f0dc628003036304753273ae32015c8bf56153bd6f513b51bf3a53fe0a93f
|
7
|
+
data.tar.gz: b6ee6b275bca9282c72ad00e052e48842f5d112cd57aaa95df787939aa638e51450c6ae63865c95c81fab09f7debb130dead8ebb74a6ec1e6fee2860390c0aed
|
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,11 @@
|
|
1
1
|
## [Unreleased]
|
2
2
|
*no unreleased changes*
|
3
3
|
|
4
|
+
## 2.8.0 / 2019-04-09
|
5
|
+
### Added
|
6
|
+
* Added filtering by anomaly screening status (#25)
|
7
|
+
* Added anomaly screening status to field existance list (#26)
|
8
|
+
|
4
9
|
## 2.7.0 / 2019-03-21
|
5
10
|
### Added
|
6
11
|
* Added support for NIPT, RD_DEATH and UMUM batch types (#23)
|
data/code_safety.yml
CHANGED
@@ -19,7 +19,7 @@ file safety:
|
|
19
19
|
CHANGELOG.md:
|
20
20
|
comments:
|
21
21
|
reviewed_by: josh.pencheon
|
22
|
-
safe_revision:
|
22
|
+
safe_revision: 6275607eaf61d9f767977c4e1984c57bb3080984
|
23
23
|
CODE_OF_CONDUCT.md:
|
24
24
|
comments:
|
25
25
|
reviewed_by: drewthorp
|
@@ -72,8 +72,8 @@ file safety:
|
|
72
72
|
lib/canql/grammars/anomaly.treetop:
|
73
73
|
comments: It is a known issue that this is potentially susceptible to certain
|
74
74
|
kinds of DoS attack
|
75
|
-
reviewed_by:
|
76
|
-
safe_revision:
|
75
|
+
reviewed_by: josh.pencheon
|
76
|
+
safe_revision: 73a7dac17b20fcc77bcbd9d38777c8aa4d524816
|
77
77
|
lib/canql/grammars/batch_types.treetop:
|
78
78
|
comments:
|
79
79
|
reviewed_by: josh.pencheon
|
@@ -100,7 +100,7 @@ file safety:
|
|
100
100
|
comments: It is a known issue that this is potentially susceptible to certain
|
101
101
|
kinds of DoS attack
|
102
102
|
reviewed_by: josh.pencheon
|
103
|
-
safe_revision:
|
103
|
+
safe_revision: 38369f1f26167f396d1705ec88611103d5262726
|
104
104
|
lib/canql/grammars/perinatal_hospital.treetop:
|
105
105
|
comments:
|
106
106
|
reviewed_by: josh.pencheon
|
@@ -129,8 +129,8 @@ file safety:
|
|
129
129
|
safe_revision: 6932d590299ad4a9d2ba24b425b158c67142bf74
|
130
130
|
lib/canql/nodes/anomaly.rb:
|
131
131
|
comments:
|
132
|
-
reviewed_by:
|
133
|
-
safe_revision:
|
132
|
+
reviewed_by: josh.pencheon
|
133
|
+
safe_revision: 73a7dac17b20fcc77bcbd9d38777c8aa4d524816
|
134
134
|
lib/canql/nodes/batch_types.rb:
|
135
135
|
comments:
|
136
136
|
reviewed_by: josh.pencheon
|
@@ -154,7 +154,7 @@ file safety:
|
|
154
154
|
lib/canql/nodes/patient.rb:
|
155
155
|
comments:
|
156
156
|
reviewed_by: josh.pencheon
|
157
|
-
safe_revision:
|
157
|
+
safe_revision: 38369f1f26167f396d1705ec88611103d5262726
|
158
158
|
lib/canql/nodes/perinatal_hospital.rb:
|
159
159
|
comments:
|
160
160
|
reviewed_by: josh.pencheon
|
@@ -178,11 +178,11 @@ file safety:
|
|
178
178
|
lib/canql/version.rb:
|
179
179
|
comments:
|
180
180
|
reviewed_by: josh.pencheon
|
181
|
-
safe_revision:
|
181
|
+
safe_revision: 6275607eaf61d9f767977c4e1984c57bb3080984
|
182
182
|
test/anomaly_test_helper.rb:
|
183
183
|
comments:
|
184
|
-
reviewed_by:
|
185
|
-
safe_revision:
|
184
|
+
reviewed_by: josh.pencheon
|
185
|
+
safe_revision: 73a7dac17b20fcc77bcbd9d38777c8aa4d524816
|
186
186
|
test/canql_test.rb:
|
187
187
|
comments:
|
188
188
|
reviewed_by: timgentry
|
@@ -197,8 +197,8 @@ file safety:
|
|
197
197
|
safe_revision: 6932d590299ad4a9d2ba24b425b158c67142bf74
|
198
198
|
test/nodes/anomaly_test.rb:
|
199
199
|
comments:
|
200
|
-
reviewed_by:
|
201
|
-
safe_revision:
|
200
|
+
reviewed_by: josh.pencheon
|
201
|
+
safe_revision: 73a7dac17b20fcc77bcbd9d38777c8aa4d524816
|
202
202
|
test/nodes/code_test.rb:
|
203
203
|
comments:
|
204
204
|
reviewed_by: timgentry
|
@@ -222,7 +222,7 @@ file safety:
|
|
222
222
|
test/nodes/patient_test.rb:
|
223
223
|
comments:
|
224
224
|
reviewed_by: josh.pencheon
|
225
|
-
safe_revision:
|
225
|
+
safe_revision: 38369f1f26167f396d1705ec88611103d5262726
|
226
226
|
test/nodes/perinatal_hospital_test.rb:
|
227
227
|
comments:
|
228
228
|
reviewed_by: josh.pencheon
|
@@ -1,7 +1,7 @@
|
|
1
1
|
module Canql
|
2
2
|
grammar Anomaly
|
3
3
|
rule anomalies
|
4
|
-
and_keyword? existance_modifier:anomalies_no_keyword? status_type:anomaly_status? natal_period:anomalies_natal_period? code_data:(space first:anomalies_icd_code rest:more_anomalies_icd_codes* word_break)? anomalies_keyword <Nodes::Anomaly::WithCondition>
|
4
|
+
and_keyword? existance_modifier:anomalies_no_keyword? status_type:anomaly_status? natal_period:anomalies_natal_period? screening_status_type:anomaly_screening_status? code_data:(space first:anomalies_icd_code rest:more_anomalies_icd_codes* word_break)? anomalies_keyword <Nodes::Anomaly::WithCondition>
|
5
5
|
end
|
6
6
|
|
7
7
|
rule anomalies_no_keyword
|
@@ -16,6 +16,16 @@ module Canql
|
|
16
16
|
(suspected_keyword / confirmed_keyword / probable_keyword / diagnosed_keyword)
|
17
17
|
end
|
18
18
|
|
19
|
+
rule anomaly_screening_status
|
20
|
+
space ('unscreened' / 'fa detected' / 'fapos' / 'combined detected' / 'ctpos' /
|
21
|
+
'quad detected' / 'qtpos' / 'fa undetected' / 'faneg' / 'combined undetected' /
|
22
|
+
'ctneg' / 'quad undetected' / 'qtneg' / 'nonwindow' / 'nws' / 'incomplete screen' /
|
23
|
+
'ics' / 'ineligible unbooked' / 'inb' / 'early detected' / 'ied' /
|
24
|
+
'screen declined' / 'sd' / 'ineligible early loss' / 'iefl' / 'ineligible top' /
|
25
|
+
'itop' / 'missed screen' / 'ms' / 'excluded' / 'exc' / 'detected' /
|
26
|
+
'undetected' / 'ineligible') word_break
|
27
|
+
end
|
28
|
+
|
19
29
|
rule anomalies_keyword
|
20
30
|
space 'anomalies' word_break
|
21
31
|
end
|
@@ -36,7 +36,7 @@ module Canql
|
|
36
36
|
patient_field_name:(
|
37
37
|
'date of birth' / 'dob' / 'nhs number' / 'postcode' / 'birth weight' /
|
38
38
|
'place of delivery' / 'sex' / 'outcome' / 'edd' /
|
39
|
-
'expected delivery date' / 'booking hospital'
|
39
|
+
'expected delivery date' / 'booking hospital' / 'screening status'
|
40
40
|
)
|
41
41
|
end
|
42
42
|
|
data/lib/canql/nodes/anomaly.rb
CHANGED
@@ -12,10 +12,17 @@ module Canql #:nodoc: all
|
|
12
12
|
status_type.text_value.strip
|
13
13
|
end
|
14
14
|
|
15
|
+
def anomaly_screening_status_type
|
16
|
+
screening_status_type.text_value.strip
|
17
|
+
end
|
18
|
+
|
15
19
|
def to_anomaly
|
16
20
|
anomaly_hash = { 'exists' => existance_filter }
|
17
21
|
anomaly_hash['type'] = anomaly_type_filter if anomaly_type.present?
|
18
22
|
anomaly_hash['status'] = anomaly_status_type_filter if anomaly_status_type.present?
|
23
|
+
if anomaly_screening_status_type.present?
|
24
|
+
anomaly_hash['screening_status'] = anomaly_screening_status_type_filter
|
25
|
+
end
|
19
26
|
anomaly_hash['icd_codes'] = code_filter[:icd_code] if code_filter[:icd_code].present?
|
20
27
|
return anomaly_hash if code_filter[:code_group].blank?
|
21
28
|
anomaly_hash['code_groups'] = code_filter[:code_group]
|
@@ -34,6 +41,10 @@ module Canql #:nodoc: all
|
|
34
41
|
{ Canql::EQUALS => anomaly_status_type }
|
35
42
|
end
|
36
43
|
|
44
|
+
def anomaly_screening_status_type_filter
|
45
|
+
{ Canql::EQUALS => anomaly_screening_status_type }
|
46
|
+
end
|
47
|
+
|
37
48
|
def code_type(code)
|
38
49
|
return :icd_code if code.respond_to?(:to_code) && code.to_code.present?
|
39
50
|
return :code_group if code.respond_to?(:to_code_group) && code.to_code_group.present?
|
data/lib/canql/nodes/patient.rb
CHANGED
@@ -33,7 +33,8 @@ module Canql #:nodoc: all
|
|
33
33
|
'outcome': { patient: 'outcome' },
|
34
34
|
'edd': { patient: 'expecteddeliverydate' },
|
35
35
|
'expected delivery date': { patient: 'expecteddeliverydate' },
|
36
|
-
'booking hospital': { patient: 'booking_hospital' }
|
36
|
+
'booking hospital': { patient: 'booking_hospital' },
|
37
|
+
'screening status': { patient: 'screeningstatus' }
|
37
38
|
}.freeze
|
38
39
|
|
39
40
|
def meta_data_item
|
data/lib/canql/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: canql
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.8.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- PHE NDR Development Team
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-04-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: chronic
|