Skip to content

Instantly share code, notes, and snippets.

View johngrimes's full-sized avatar
🚴
coding and cycling

John Grimes johngrimes

🚴
coding and cycling
View GitHub Profile
@johngrimes
johngrimes / consumer.py
Last active October 30, 2024 02:28
Streaming SQL on FHIR example with Pathling and Kafka
#!/usr/bin/env python3
import click
import os
from pathling._version import (
__java_version__,
__scala_version__,
__delta_version__,
__hadoop_version__,
)
@johngrimes
johngrimes / 1.Condition.json
Last active July 9, 2024 04:28
A proof-of-concept for the flexible schema approach described in the draft "Parquet on FHIR" specification
{
"resourceType": "Condition",
"id": "1",
"clinicalStatus": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/condition-clinical",
"code": "active"
}
]
@johngrimes
johngrimes / get_token.py
Created February 27, 2024 00:06
OAuth2 client credentials test harness
import requests
def get_oauth2_token(client_id, client_secret, token_url):
"""
Obtain an OAuth2 token using client credentials grant.
:param client_id: OAuth2 Client ID
:param client_secret: OAuth2 Client Secret
:param token_url: OAuth2 Token Endpoint URL
@johngrimes
johngrimes / prostate_cancer.ipynb
Created January 16, 2024 10:35
Pathling SQL on FHIR Demo
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@johngrimes
johngrimes / checking-inactive-codes.md
Last active December 14, 2023 23:08
Method for checking for inactive codes within a set of JSON FHIR resources
@johngrimes
johngrimes / update_resources.py
Created August 8, 2022 04:23
Send any number of FHIR JSON resource files to a server as updates (in parallel)
import json
import multiprocessing as mp
import sys
from math import floor
from time import time
import requests
def update_resource(file):
@johngrimes
johngrimes / upload_bundles.py
Last active August 3, 2022 06:44
Upload FHIR JSON Bundles to a FHIR server (in parallel)
import multiprocessing as mp
import sys
from time import time
import requests
def upload_bundle(file):
with open(file) as bundle:
data = bundle.read()
@johngrimes
johngrimes / convert_search_to_update.py
Created August 2, 2022 06:54
Convert between FHIR search and update Bundles
import json
import sys
input_bundle = json.load(sys.stdin)
output_bundle = {
"resourceType": "Bundle",
"type": "transaction",
"entry": [
{
@johngrimes
johngrimes / terminology_functions.ipynb
Last active July 25, 2022 06:32
Pathling Python API - Terminology Functions
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@johngrimes
johngrimes / valueset_to_csv.sh
Created May 25, 2022 01:46
Convert a FHIR ValueSet to CSV using JQ
jq -r ".expansion.contains[] | { system: .system, code: .code, display: .display } | map(values) | @csv" ~/Desktop/source.ValueSet.json >~/Desktop/target.csv