- Notifications
You must be signed in to change notification settings - Fork0
FHIRPath implementation in Python.
License
dkapitan/fhirpath-py
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
FHIRPath implementation in Python
Parser was generated withantlr4
pip install fhirpathpy
fromfhirpathpyimportevaluatepatient= {"resourceType":"Patient","id":"example","name": [ {"use":"official","given": ["Peter","James" ],"family":"Chalmers" }, {"use":"usual","given": ["Jim" ] }, {"use":"maiden","given": ["Peter","James" ],"family":"Windsor","period": {"end":"2002" } } ]}# Evaluating FHIRPathresult=evaluate(patient,"Patient.name.where(use='usual').given.first()", [])# result: `['Jim']`
Evaluates the "path" FHIRPath expression on the given resource, using data from "context" for variables mentioned in the "path" expression.
Parameters
resource (dict|list): FHIR resource, bundle as js object or array of resources This resource will be modified by this function to add type information.
path (string): fhirpath expression, sample 'Patient.name.given'
context (dict): a hash of variable name/value pairs.
model (dict): The "model" data object specific to a domain, e.g. R4.
Returns a function that takes a resource and an optional context hash (see "evaluate"), and returns the result of evaluating the given FHIRPath expression on that resource. The advantage of this function over "evaluate" is that if you have multiple resources, the given FHIRPath expression will only be parsed once
Parameters
path (string) - the FHIRPath expression to be parsed.
model (dict) - The "model" data object specific to a domain, e.g. R4.