parser/README.md

66 lines
2.6 KiB
Markdown
Raw Normal View History

2020-10-02 03:24:23 +00:00
## About Healthcare/IO Parser
2019-11-06 20:36:32 +00:00
2020-10-02 03:24:23 +00:00
The Halthcare/IO **parser** is an Electronic Data Interchange (EDI) parser developed at Vanderbilt University Medical Center during Khanhly Nguyen's summer internship 2019. Built in a healthcare setting, the parser focuses (for now) on x12 claims (837) and remittances (835)
2019-11-06 20:38:13 +00:00
2019-11-07 07:55:52 +00:00
This code is intended to extract x12 837 and 835 and format them into portable and human readable format (JSON). This allows the claims to be stored in document data stores such as Mongodb, couchdb or databases that have support for JSON like PostgreSQL
2019-11-12 17:51:22 +00:00
We wrote this frame to be used in both command line or as a library within in your code. The framework is driven by configurations that derviced from X12 standards.
2020-10-02 03:24:23 +00:00
## Features ##
| Features | |
|----------|-|
2019-11-06 20:38:13 +00:00
## Installation
2020-10-02 03:24:23 +00:00
pip install --upgrade git+https://hiplab.mc.vanderbilt.edu/git/lab/parse-edi.git
2019-11-06 20:38:13 +00:00
## Usage
2020-10-02 03:24:23 +00:00
**cli :**
2019-11-06 20:38:13 +00:00
2020-10-02 03:24:23 +00:00
# signup to get parsing configuration
healthcare-io.py --signup <email> [--store <mongo|sqlite>]
#
# start parsing claims in a folder
healthcare-io.py --parse <claims|remits> --folder <path> [--batch <n>] [--resume]
2019-11-07 07:40:16 +00:00
2019-11-06 20:38:13 +00:00
with :
2020-10-02 03:24:23 +00:00
--parse tells the engine what to parse claims or remits
--folder location of the claims|remits
--batch number of processes to spawn to parse the files
--resume tells the parser to resume parsing
if all files weren't processed or new files were added into the folder
**dashboard**
There is a built-in dashboard that has features
healthcare-io.py --server <port> [--context <name>]
2019-11-06 20:38:13 +00:00
**Embedded in Code :**
2019-11-07 07:40:16 +00:00
Use **parse-edi** within your code base as a library and handle storing data in a data store of choice
2019-11-06 20:38:13 +00:00
import edi.parser
import json
import os
2019-11-07 07:28:56 +00:00
ROOT = 'data'
2019-11-07 07:30:38 +00:00
CLAIMS_FOLDER = os.sep.join([ROOT,'837']) #-- data/837 contains all 837 formatted files
CONFIG_FOLDER = os.sep.join([ROOT,'config'])#-- data/config contains 837.json or 835.json
2019-11-07 07:28:56 +00:00
files = os.listdir(CLAIMS_FOLDER)
2019-11-07 07:30:38 +00:00
filename = os.sep.join([CLAIM_FOLDER,files[0]]) #-- selecting the first file in the folder (it's an example)
2019-11-07 07:28:56 +00:00
conf = json.loads(open( os.sep.join([CONFIG_FOLDER,'837.json']) ).read())
info = edi.parser.get_content(file,conf) #-- array of objects claims/remits
2019-11-07 07:40:16 +00:00
## Credits
2019-11-07 07:50:55 +00:00
2019-11-12 17:47:44 +00:00
* [Khanhly Nguyen] (<khanhly.t.nguyen@gmail.com>)
* [Gaylon Stanley] (<gaylon.stanley@vanderbilt.edu>)
* [Cheng Gao] (<cheng.gao@vanderbilt.edu>)
* [Brad Malin] (brad.malin@vanderbilt.edu)
* [Steve L. Nyemba] (<steve.l.nyemba@vanderbilt.edu>)
2019-11-07 07:40:16 +00:00