-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Add: makefile: Populated with package management commands. - Add: setup.py: To manage installation / setup of package. - Add: MANIFEST.in: To include README.md documentation on Pypi - Add: requirements: Some dev dependencies Misc: - Update: out_dir: If they don't specify it, use input path if they not passed a URL, otherwise where program called from CLI - Add: Validation of required flags - Update: Inverted option --include-all-predicates by changing it to ----include-only-critical-predicates - Update: Separated favorites CLI and scripting into its own separate module. Favorites - Separated favorites CLI and scripting into its own separate module. Docs - Add: Installation section - Add: Usage section - Update: More section: New section, but contains previous content related to other similar packages.
- Loading branch information
Showing
8 changed files
with
316 additions
and
118 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
include README.md | ||
include owl_on_fhir/robot.jar | ||
include owl_on_fhir/convert_owl_ncbo2owl.pl |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,12 +1,42 @@ | ||
# OWL-on-FHIR | ||
![owl-on-fhir logo](https://github.com/hot-ecosystem/owl-on-fhir/blob/master/docs/owl-on-fhir%20logo%20v2.png?raw=true "OWL on FHIR") | ||
|
||
A Python-based non-minimalistic OWL to FHIR converter. Largely a wrapper around [Ontology Access Kit](https://github.com/INCATools/ontology-access-kit/) (OAK)'s FHIR converter. | ||
A Python-based non-minimalistic OWL to FHIR converter. | ||
|
||
## Installation | ||
`pip install owl-on-fhir` | ||
|
||
## Usage | ||
TODO | ||
### Syntax | ||
`owl-on-fhir --input-path-or-url FILENAME --code-system-id ID --native-uri-stems "URL_1,...,URL_N" --code-system-url URL [NON_REQUIRED_OPTIONS]` | ||
|
||
### Examples | ||
`owl-on-fhir --input-path-or-url comploinc.owl --code-system-id comploinc --native-uri-stems "https://loinc.org/" --code-system-url https://github.com/loinc/comp-loinc/releases/latest/download/merged_reasoned_loinc.owl` | ||
|
||
## Alternative OWL to FHIR converters | ||
### CLI options | ||
| Short Flag | Long Flag | Required | Description | | ||
|:-----------|:----------|:------------|:-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | ||
| -h | --help | | Show this help message and exit. | | ||
| -i | --input-path-or-url | True | URL or path to OWL file to convert. | | ||
| -s | --code-system-id | True | For `fhirjson` only. The code system ID to use for identification on the server uploaded to. See: https://hl7.org/fhir/resource-definitions.html#Resource.id | | ||
| -S | --code-system-url | True | For `fhirjson` only. Canonical URL for the code system. See: https://hl7.org/fhir/codesystem-definitions.html#CodeSystem.url | | ||
| -u | --native-uri-stems | True | A comma-separated list of URI stems that will be used to determine whether a concept is native to the CodeSystem. For example, for OMIM, the following URI stems are native: https://omim.org/entry/,https://omim.org/phenotypicSeries/PS". As of 2023-01-15, there is still a bug in the Obographs spec and/or `robot` where certain nodes are not being converted. This converter adds back the nodes, but to know which ones belong to the CodeSystem itself and are not foreign concepts, this parameter is necessary. OAK also makes use of this parameter. See also: https://github.com/geneontology/obographs/issues/90 | | ||
| -o | --out-dir | False | The directory where results should be saved. | | ||
| -n | --out-filename | False | Filename for the primary file converted, e.g. CodeSystem. | | ||
| -p | --include-only-critical-predicates | False | If present, includes only critical predicates (is_a/parent) rather than all predicates in CodeSystem.property and CodeSystem.concept.property. | | ||
| -t | --intermediary-type | False | Which type of intermediary to use? First, we convert OWL to that intermediary format, and then we convert that to FHIR. | | ||
| -c | --use-cached-intermediaries | False | Use cached intermediaries if they exist? | | ||
| -r | --retain-intermediaries | False | Retain intermediary files created during conversion process (e.g. Obograph JSON)? | | ||
| -I | --convert-intermediaries-only | False | Convert intermediaries only? | | ||
| -d | --dev-oak-path | False | If you want to use a local development version of OAK, specify the path to the OAK directory here. Must be used with --dev-oak-interpreter-path. | | ||
| -D | --dev-oak-interpreter-path | False | If you want to use a local development version of OAK, specify the path to the Python interpreter where its dependencies are installed (i.e. its virtual environment). Must be used with --dev-oak-path. | | ||
|
||
## More | ||
### Alternative OWL to FHIR converters | ||
### FHIR-OWL | ||
https://github.com/aehrc/fhir-owl | ||
Takes a minimalistic approach. Can convert top-level CodeSystem properties, concepts, and also supports some predicates, such as synonyms. Uses Java `owl-api`. | ||
|
||
### Ontology Access Kit (OAK) | ||
https://github.com/INCATools/ontology-access-kit/ | ||
OWL-on-FHIR is largely a wrapper around [Ontology Access Kit](https://github.com/INCATools/ontology-access-kit/) (OAK)'s FHIR converter. It adds some extra automation such as an intermediary conversion to Obographs JSON, which is currently a required input for OAK for most ontologies, given the current state of development. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
# Workflows | ||
.PHONY = clean build pypi pypi-test | ||
|
||
## Package management | ||
clean: | ||
rm -rf ./dist; | ||
rm -rf ./build; | ||
rm -rf ./*.egg-info | ||
|
||
build: clean | ||
python3 setup.py sdist bdist_wheel | ||
|
||
pypi: build | ||
twine upload --repository-url https://upload.pypi.org/legacy/ dist/*; | ||
|
||
pypi-test: build | ||
twine upload --repository-url https://test.pypi.org/legacy/ dist/* |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -2,4 +2,5 @@ | |
from owl_on_fhir.__main__ import cli | ||
|
||
|
||
cli() | ||
if __name__ == '__main__': | ||
cli() |
Oops, something went wrong.