phema / cql-on-omop Goto Github PK
View Code? Open in Web Editor NEWRuns CQL phenotype definitions against an OMOP repository
Home Page: https://phema.github.io/
Runs CQL phenotype definitions against an OMOP repository
Home Page: https://phema.github.io/
We are currently on something like version 2.6.x of the WebAPI, which includes Circe 1.7.x. We should update to the latest version.
Ensure logging of execution progress provides sufficient detail for user to see progress, and to troubleshoot when/if errors occur.
For the Phenotype Workbench demo we need to support in Interval
because the Thrombotic event phenotype uses this statement.
I misunderstood what counting distinct meant when I pushed d15218c. I thought it meant that duplicate conditions/procedures/etc wouldn't be double-counted. It actually means that only conditions/procedures with different concepts will be counted.
Rather then using oid from within the elm file, read the codes from a spreadsheet. The authoring application is outputting the algorithm in a zip file. Look at examples from PhAT output
Right now our correlated query implementation is pretty limited. We only support a single relationship, and we match on specific resource/attribute pairs.
I think the more correct way to do this is to push aliases onto a stack in the context, and then process the where clause as a normal expression. This would eliminate the need for special resource/attribute pair matching and would re-use all the code we already have for expression translation.
When processing the where expression, when we encounter an alias reference, we would able to resolve this by peeking into the stack in the context. Basically, aliases are noted and resolved like any other reference.
Right now the correlated queries we support are pretty much hardcoded. For the Phenotype Workbench demo, we need to support a slightly more generic correlated queries.
Local builds are fine but fail in Travis. It appears to be an issue where one of the dependencies via the WebAPI JAR is trying to access an http:// address, but that address has permanently moved to require https://
From @psbrandt
Another idea is to accept the URL of a Composition resource as input, and then download the full Composition document using the $document operation. That can be a stretch goal though, and either way, we need to be able to evaluate one of these bundles.
Handle nested boolean expressions
We should be able to process and incorporate externally referenced libraries containing CQL logic. This will allow us to support CQL files that include external CQL files that contain function/logic definitions within them.
More information
Support temporal relationships between items
Currently the demo is hard-coded for Condition types. We need to expand this to other types we expect to get from the FHIR data model.
The thrombotic event phenotype has a criterion that checks the value of a lab result. We need to implement support for this.
We should implement the following interface for resolving value sets from a FHIR server:
We will need this in the Workbench API.
In addition to valueset
references, we could consider adding support for individual codes. That would allow us to support this COVID phenotype.
Translate from FHIR attribute constraints to appropriate OHDSI representation. For example, "BMI > 20", "LDL > 100". Multiple attribute types beyond values should be investigated.
Using Strings in java causes truncation of large JSON cohort definitions. Currently a hard coded json statement is used in the application. Switch to using the generated once the truncation is fixed.
Need more complex conversions to be sure cover all possibilities.
Account for patient age within CQL functions, and how that translates to OHDSI age representation in a query.
Translate counts of items (e.g., >=2 diagnoses) from ELM to OHDSI
Some tables were left out during installation. Causes cohort generation to fail
http://52.162.236.199:8080/WebAPI/ddl/results?dialect=postgresql
When using the QUICK data model with the reference implementation, only resources that are explicitly associated with the QUICK profile are retrieved.
I think it would be better to use the base FHIR data model instead, since this would put fewer restrictions on implementations, as they wouldn't be required to associate the QUICK profile with all their FHIR resources.
The system should be able to execute phenotypes that are represented as a FHIR Bundle
Embed this within the OHDSI WebAPI as an extension and invoke from translator
(Suggested by Guoqian Jiang)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.