Command-Line Interface (CLI)
MedCo provides a client command-line interface (CLI) to interact with the medco-connector APIs.
Prerequisites
To use the CLI, you must first follow one of the deployment guides. However, the version of the CLI documented here is the one shipped with the Local Development Deployment.
How to use
To show the CLI manual, run:
export MEDCO_SETUP_DIR=~/medco
cd ${MEDCO_SETUP_DIR}/deployments/dev-local-3nodes/
NAME:
medco-cli-client - Command-line query tool for MedCo.
USAGE:
medco-cli-client [global options] command [command options] [arguments...]
VERSION:
dev
COMMANDS:
search Get info about the ontology elements (both concepts and modifiers) whose paths contain the search string passed as argument.
concept-children, con-c Get the concept children (both concepts and modifiers)
modifier-children, mod-c Get the modifier children
concept-info, con-i Get the concept info
modifier-info, mod-i Get the modifier info
query, q Query the MedCo network
ga-get-values, ga-val Get the values of the genomic annotations of type *annotation* whose values contain *value*
ga-get-variant, ga-var Get the variant ID of the genomic annotation of type *annotation* and value *value*
survival-analysis, srva Run a survival analysis
get-saved-cohorts, getsc get cohorts
add-saved-cohorts, addsc Create a new cohort.
update-saved-cohorts, upsc Updates an existing cohort.
remove-saved-cohorts, rmsc Remove a cohort.
cohorts-patient-list, cpl Retrieve patient list belonging to the cohort
help, h Shows a list of commands or help for one command
GLOBAL OPTIONS:
--user value, -u value OIDC user login
--password value, -p value OIDC password login
--token value, -t value OIDC token
--disableTLSCheck Disable check of TLS certificates
--outputFile value, -o value Output file for the result. Printed to stdout if omitted.
--help, -h show help
--version, -v print the versionsearch
You can use this command to search elements in the MedcCo ontology.
For example:
concept-children
You can use this command to browse the MedCo ontology by getting the children of a concept, both concepts and modifiers.
For example:
modifier-children
You can use this command to browse the MedCo ontology by getting the children of a modifier.
For example:
concept-info
You can use this command to get information about a MedCo concept, including the associated metadata.
For example:
modifier-info
You can use this command to get information about a MedCo modifier, including the associated metadata.
For example:
query
You can use this command to query the MedCo network.
This is the syntax of an example query using the pre-loaded default test data.
You will get something like that:
Query terms can be composed using the logical operators NOT, AND and OR.
Each query term is composed is composed of two mandatory fields, the type field and the content field, and an optional field, the constraint field, all separated by ::.
Possible values of the type field are: enc, clr, file.
When the type field is equal to
enc, the content field contains the concept ID. The constraint field is not present in this case.When the type field is equal to
clr,the content field contains the concept field (containing the concept path) and, possibly, the modifier field, which in turn contains the modifier key and applied path fields, all separated by:. The optional constraint field can be present, containing the operator, type and value fields separated by:. The constraint field applies either to the concept or, if the modifier field is present, to the modifier. The possible types are NUMBER and TEXT. The possible operators for numbers are: EQ (equals), NE (not equal), GT (greater than), LT (less than), GE (greater than or equal), LE (less than or equal), BETWEEN (between, in this case the value field is in the format "x and y"). The possible operators for TEXT are LIKE[exact], LIKE[begin], LIKE[contains] and LIKE[end].When the type field is equal to
file, the content field contains the path of the file containing the query terms, one for each row. The query terms contained in the same file are OR-ed together. Besidesenc,clr,andfilequery terms, a file can also contain genomic query terms, each of which is composed by 4 comma separated values.
ga-get-values
You can use this command to get the values of the genomic annotations that MedCo nodes make available for queries.
To do some tests, you may want to load some data first.
Then, for example, if you want to know which genomic annotations of type "protein_change" containing the string "g32" are available, you can run:
You will get:
ga-get-variant
You can use this command to get the variant ID of a certain genomic annotation.
To do some tests, you may want to load some data first.
Then, for example, if you want to know the variant ID of the genomic annotation "HTR5A" of type "hugo_gene_symbol" with zygosity "heterozygous" or "homozygous", you can run:
You will get:
get-saved-cohorts
You can run this command to get the cohorts that have been previously saved.
You can run:
You will get:
add-saved-cohorts
You can run this command to save a new cohort. The patient set IDs are given from a previous explore request. More precisely, they are taken from the patient_set_id column of explore results. The list of IDs must be given in a coma-separated format, without space. There must as many IDs as there are nodes.
For example, you can run:
update-saved-cohorts
You can run this command to update an existing cohort. The patient set IDs are given from a previous explore request, in the same manner as add-saved-cohort command.
For example, you can run:
remove-saved-cohorts
You can run this command to remove an existing cohort.
For example, you can run:
This command removes the cohort from the node servers and it is not be possible to revert this action.
cohorts-patient-list
You can run this command to get the list of patient belonging to cohort. The cohort is identified by providing its name.
For example, you can run:
You will get something like:
survival-analysis
You can run this command to get information useful to run survival analysis. The relative time points are computed as the difference between absolute dates of start concept and end concept.
Start and concept are determined by the name of the access table concatenated to the full path of the concept.
The default cohort identifier -1 corresponds to test data loaded for end-to-end testing. All future cohort identifiers will be positive integers. Cohorts can be created after a successful MedCo Explore query.
Last updated
Was this helpful?