canql 2.5.0 → 2.6.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/README.md +1 -1
- data/code_safety.yml +15 -15
- data/lib/canql/grammars/batch_types.treetop +13 -1
- data/lib/canql/grammars/main.treetop +1 -1
- data/lib/canql/grammars/patient.treetop +4 -0
- data/lib/canql/nodes/batch_types.rb +18 -0
- data/lib/canql/nodes/patient.rb +6 -0
- 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: 328610120dd48f5efc67704d2c77b7516f8d36a3e03977baad98563421037026
|
4
|
+
data.tar.gz: ceb762e0315a816778c25437036ea0a89bcecab4a915ae228cde51d98cda9868
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 469d32c7c3e8dd9a7b790b72aa0db40cab6a534faa5c4018db805013d9bd0d5b7d83758498b58dda1f7685c18962f2d8fff8f7a7ceb0113bada1a33b57b0899d
|
7
|
+
data.tar.gz: f08d2e66f6d1ec90ffa0a889c81fd6bfc726e4b5d25e0c674287be381503b35189e8a0e7afe277370bd35fc89ff9e4233bbc134982de362e944f44b1e5c92654
|
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,11 @@
|
|
1
1
|
## [Unreleased]
|
2
2
|
*no unreleased changes*
|
3
3
|
|
4
|
+
## 2.6.0 / 2019-03-12
|
5
|
+
### Added
|
6
|
+
* Added the ability to limit cases to primary or alias patients (#20)
|
7
|
+
* Added support for ENOTE2, BADGER and UCYTO batched types (#21)
|
8
|
+
|
4
9
|
## 2.5.0 / 2019-01-25
|
5
10
|
### Added
|
6
11
|
* Added the abiltity to filter actions by trust as well as hospital (#18)
|
data/README.md
CHANGED
@@ -50,7 +50,7 @@ would output:
|
|
50
50
|
and booking at hospital RGT01 and delivery at addenbrookes trust
|
51
51
|
The parser is case insensitive. An example of an almost fully involved CANQL query is:
|
52
52
|
|
53
|
-
> First 27 Male Liveborn Thames Cases Due between 20/06/2015 and 25/06/2015 and Born on 22/06/2015 and that Died on 07/07/2015 with Suspected Prenatal Q20 Anomalies and Booking at hospital RGT01 and Delivery at addenbrookes trust and Postnatal Tests and Missing Postcode and Date of Birth and QA Action and Unprocessed paediatric records and Mother Born between 01/10/1990 and 10/01/1999 and who Died on 01/08/2015 with Populated Postcode and NHS Number
|
53
|
+
> First 27 Male Liveborn Thames Primary Cases Due between 20/06/2015 and 25/06/2015 and Born on 22/06/2015 and that Died on 07/07/2015 with Suspected Prenatal Q20 Anomalies and Booking at hospital RGT01 and Delivery at addenbrookes trust and Postnatal Tests and Missing Postcode and Date of Birth and QA Action and Unprocessed paediatric records and Mother Born between 01/10/1990 and 10/01/1999 and who Died on 01/08/2015 with Populated Postcode and NHS Number
|
54
54
|
|
55
55
|
Please see the tests for many more examples.
|
56
56
|
|
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: d26cf2ffd4e2615c9c140cce56be1a809252f331
|
23
23
|
CODE_OF_CONDUCT.md:
|
24
24
|
comments:
|
25
25
|
reviewed_by: drewthorp
|
@@ -35,7 +35,7 @@ file safety:
|
|
35
35
|
README.md:
|
36
36
|
comments:
|
37
37
|
reviewed_by: josh.pencheon
|
38
|
-
safe_revision:
|
38
|
+
safe_revision: 1b5795e8b5e20395f17277050f17ff0db6f0f556
|
39
39
|
Rakefile:
|
40
40
|
comments:
|
41
41
|
reviewed_by: timgentry
|
@@ -76,8 +76,8 @@ file safety:
|
|
76
76
|
safe_revision: 695cec7ee61f36a9ef054a4079f290421d814666
|
77
77
|
lib/canql/grammars/batch_types.treetop:
|
78
78
|
comments:
|
79
|
-
reviewed_by:
|
80
|
-
safe_revision:
|
79
|
+
reviewed_by: josh.pencheon
|
80
|
+
safe_revision: '0967ae095f7215d4972856133f5c36bf00a28391'
|
81
81
|
lib/canql/grammars/dates.treetop:
|
82
82
|
comments: It is a known issue that this is potentially susceptible to certain
|
83
83
|
kinds of DoS attack
|
@@ -95,12 +95,12 @@ file safety:
|
|
95
95
|
comments: It is a known issue that this is potentially susceptible to certain
|
96
96
|
kinds of DoS attack
|
97
97
|
reviewed_by: josh.pencheon
|
98
|
-
safe_revision:
|
98
|
+
safe_revision: 1b5795e8b5e20395f17277050f17ff0db6f0f556
|
99
99
|
lib/canql/grammars/patient.treetop:
|
100
100
|
comments: It is a known issue that this is potentially susceptible to certain
|
101
101
|
kinds of DoS attack
|
102
|
-
reviewed_by:
|
103
|
-
safe_revision:
|
102
|
+
reviewed_by: josh.pencheon
|
103
|
+
safe_revision: 1b5795e8b5e20395f17277050f17ff0db6f0f556
|
104
104
|
lib/canql/grammars/perinatal_hospital.treetop:
|
105
105
|
comments:
|
106
106
|
reviewed_by: josh.pencheon
|
@@ -133,8 +133,8 @@ file safety:
|
|
133
133
|
safe_revision: 695cec7ee61f36a9ef054a4079f290421d814666
|
134
134
|
lib/canql/nodes/batch_types.rb:
|
135
135
|
comments:
|
136
|
-
reviewed_by:
|
137
|
-
safe_revision:
|
136
|
+
reviewed_by: josh.pencheon
|
137
|
+
safe_revision: '0967ae095f7215d4972856133f5c36bf00a28391'
|
138
138
|
lib/canql/nodes/dates.rb:
|
139
139
|
comments:
|
140
140
|
reviewed_by: timgentry
|
@@ -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: 1b5795e8b5e20395f17277050f17ff0db6f0f556
|
158
158
|
lib/canql/nodes/perinatal_hospital.rb:
|
159
159
|
comments:
|
160
160
|
reviewed_by: josh.pencheon
|
@@ -178,7 +178,7 @@ file safety:
|
|
178
178
|
lib/canql/version.rb:
|
179
179
|
comments:
|
180
180
|
reviewed_by: josh.pencheon
|
181
|
-
safe_revision:
|
181
|
+
safe_revision: d26cf2ffd4e2615c9c140cce56be1a809252f331
|
182
182
|
test/anomaly_test_helper.rb:
|
183
183
|
comments:
|
184
184
|
reviewed_by: timgentry
|
@@ -206,7 +206,7 @@ file safety:
|
|
206
206
|
test/nodes/e_base_records_test.rb:
|
207
207
|
comments:
|
208
208
|
reviewed_by: josh.pencheon
|
209
|
-
safe_revision:
|
209
|
+
safe_revision: '0967ae095f7215d4972856133f5c36bf00a28391'
|
210
210
|
test/nodes/genetic_tests_test.rb:
|
211
211
|
comments:
|
212
212
|
reviewed_by: josh.pencheon
|
@@ -218,11 +218,11 @@ file safety:
|
|
218
218
|
test/nodes/mother_e_base_records_test.rb:
|
219
219
|
comments:
|
220
220
|
reviewed_by: josh.pencheon
|
221
|
-
safe_revision:
|
221
|
+
safe_revision: '0967ae095f7215d4972856133f5c36bf00a28391'
|
222
222
|
test/nodes/patient_test.rb:
|
223
223
|
comments:
|
224
224
|
reviewed_by: josh.pencheon
|
225
|
-
safe_revision:
|
225
|
+
safe_revision: 1b5795e8b5e20395f17277050f17ff0db6f0f556
|
226
226
|
test/nodes/perinatal_hospital_test.rb:
|
227
227
|
comments:
|
228
228
|
reviewed_by: josh.pencheon
|
@@ -238,7 +238,7 @@ file safety:
|
|
238
238
|
test/parser_test.rb:
|
239
239
|
comments:
|
240
240
|
reviewed_by: josh.pencheon
|
241
|
-
safe_revision:
|
241
|
+
safe_revision: 1b5795e8b5e20395f17277050f17ff0db6f0f556
|
242
242
|
test/test_helper.rb:
|
243
243
|
comments:
|
244
244
|
reviewed_by: josh.pencheon
|
@@ -1,11 +1,23 @@
|
|
1
1
|
module Canql
|
2
2
|
grammar BatchTypes
|
3
3
|
rule batch_type
|
4
|
-
paediatric <Nodes::BatchTypeNode>
|
4
|
+
(paediatric / enote2 / badger / ucyto) <Nodes::BatchTypeNode>
|
5
5
|
end
|
6
6
|
|
7
7
|
rule paediatric
|
8
8
|
'paediatric' <Nodes::PaediatricNode>
|
9
9
|
end
|
10
|
+
|
11
|
+
rule enote2
|
12
|
+
('enote' / 'electronic notification') <Nodes::Enote2Node>
|
13
|
+
end
|
14
|
+
|
15
|
+
rule badger
|
16
|
+
'badger' <Nodes::BadgerNode>
|
17
|
+
end
|
18
|
+
|
19
|
+
rule ucyto
|
20
|
+
('ucyto' / 'cytogenetic' / 'cyto') <Nodes::UcytoNode>
|
21
|
+
end
|
10
22
|
end
|
11
23
|
end
|
@@ -8,6 +8,10 @@ module Canql
|
|
8
8
|
space outcome:('stillborn' / 'liveborn' / 'miscarried' / 'terminated' / 'registrable' / 'non-registrable' ) word_break <Nodes::Patient::OutcomeNode>
|
9
9
|
end
|
10
10
|
|
11
|
+
rule primacy
|
12
|
+
space primacy:('primary' / 'alias' ) word_break <Nodes::Patient::PrimacyNode>
|
13
|
+
end
|
14
|
+
|
11
15
|
rule expected_keyword
|
12
16
|
space ('expected' / 'due') word_break
|
13
17
|
end
|
@@ -14,5 +14,23 @@ module Canql #:nodoc: all
|
|
14
14
|
'paediatric'
|
15
15
|
end
|
16
16
|
end
|
17
|
+
|
18
|
+
module Enote2Node
|
19
|
+
def normalise
|
20
|
+
'enote2'
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
module BadgerNode
|
25
|
+
def normalise
|
26
|
+
'badger'
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
module UcytoNode
|
31
|
+
def normalise
|
32
|
+
'ucyto'
|
33
|
+
end
|
34
|
+
end
|
17
35
|
end
|
18
36
|
end
|
data/lib/canql/nodes/patient.rb
CHANGED
@@ -15,6 +15,12 @@ module Canql #:nodoc: all
|
|
15
15
|
end
|
16
16
|
end
|
17
17
|
|
18
|
+
module PrimacyNode
|
19
|
+
def meta_data_item
|
20
|
+
{ 'patient.primacy' => { Canql::EQUALS => primacy.text_value } }
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
18
24
|
module FieldExists
|
19
25
|
FIELDS = {
|
20
26
|
'date of birth': { patient: 'birthdate', mother: 'birthdate' },
|
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.6.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-03-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: chronic
|