Comments (2)
You are more than welcome to do try and share your thoughts
from fhir.resources.
I am currently using this:
def pydantic_loc_to_xpath(location_path):
result = ""
for loc in location_path:
if loc == "__root__":
continue
if isinstance(loc, int):
result += f"[{loc}]"
else:
result += f"/f:{loc}"
return result
def pydantic_error_to_operation_issue(error):
loc = pydantic_loc_to_xpath(error["loc"])
code = "required" if error["type"] == "value_error.missing" else "invalid"
return {
"severity": "error",
"code": code,
"location": [loc],
"diagnostics": error["msg"],
}
It seems to work fine and generates response ala:
{
"severity": "error",
"code": "required",
"diagnostics": "field required",
"location": ["/f:fhirVersion"],
},
{
"severity": "error",
"code": "invalid",
"diagnostics": "value is not a valid integer",
"location": ["/f:contact[1]/f:telecom[0]/f:rank"],
},
{
"severity": "error",
"code": "invalid",
"diagnostics": "invalid datetime format",
"location": ["/f:date"],
},
Granted, it might not be perfect but it already looks rather nice.
from fhir.resources.
Related Issues (20)
- Adding support for FHIR R4B HOT 7
- A fan 🤩
- Better support for typing and mypy integration HOT 4
- Object gets serialized as null instead of empty dict HOT 1
- Recursive FHIR schema
- Validation error with ImagingStudy resource HOT 2
- Install to a Poetry environment HOT 2
- Incorrect parsing of StructureDefinition element ids for polymorphic elements HOT 2
- BundleEntryRequest validation error HOT 2
- Transition to R5 HOT 2
- `pkg_resources.declare_namespace` deprecation HOT 1
- urn not supported in Url
- FHIR resource as pydantic request model in FastAPI
- Pydantic 2.0 Migration Plan HOT 17
- Restrict Pydantic to <2.0.0 HOT 3
- Sample code execution error HOT 3
- Use warnings.warn() instead of logging the warning about the ignored extra parameters passed to json() and dict()
- Improve documentation of orjson HOT 1
- Parsing XML byte string MESH acknowledgment response HOT 2
- Instant on DocumentReference not properly output on json HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from fhir.resources.