Skip to main content

Generated FHIR model for Pydantic.

Project description

This stub for FHIR generated by fhirzeug.

Format

All profiles are in one file.

FHIR Specific JSON Representation

Generally this generated code tries to stick as close as possible to the FHIR JSON spec. Another important is the FHIR Datatypes spec.

Empty Strings

String property values can never be empty. Either the property is absent, or it is present with at least one character of content. - https://www.hl7.org/fhir/STU3/json.html

Additionally whitespaces are stripped:

Note: This means that a string that consists only of whitespace could be trimmed to nothing, which would be treated as an invalid element value. Therefore strings SHOULD always contain non-whitespace content. - https://www.hl7.org/fhir/datatypes.html#primitive

That means empty strings are interpreted as null values. This could lead to invalid arrays([""]). This follows the behavior from HAPI and Vonk.

DateTime Values

Datetime values are strings as well. That means an empty string or a string with whitespaces is threaded as a null value. Which then is not set at all.

null Values

Just as in XML, JSON objects and arrays are never empty, and properties never have null values (except for a special case documented below). Omit a property if it is empty - https://www.hl7.org/fhir/json.html#xml

That means specifically that if a property contains a null value it is like it never has been set.

Example:

>>> from r4 import Patient
>>> Patient(name=None).dict()
{}

ValueSets and CodeSystems

FHIR Specification provides different ways to define a ValueSet. The implementation varies depending on the use case :

  • If a ValueSet is based on a single CodeSystem and this CodeSystem is defined in FHIR, then the ValueSet is validated by an enum.
  • If a ValueSet is based on a single CodeSystem, that this CodeSystem is not included in the FHIR specification, but FHIR provides an exhaustive list of possible values, then the ValueSet is validated by a typing.Literal.
  • Otherwise, the field is validated by a very permissive regex [^\s]+(\s[^\s]+)*.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pydantic-fhir-0.0.1a18.tar.gz (360.0 kB view details)

Uploaded Source

Built Distribution

pydantic_fhir-0.0.1a18-py3-none-any.whl (363.1 kB view details)

Uploaded Python 3

File details

Details for the file pydantic-fhir-0.0.1a18.tar.gz.

File metadata

  • Download URL: pydantic-fhir-0.0.1a18.tar.gz
  • Upload date:
  • Size: 360.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.4 CPython/3.9.7 Linux/5.15.2-arch1-1

File hashes

Hashes for pydantic-fhir-0.0.1a18.tar.gz
Algorithm Hash digest
SHA256 162f547bea83ff629e3a694a2ffdf7f17eceeb1883359aa82ba458dfc672a848
MD5 26edb63af253fb5e5e50fbc71985fed7
BLAKE2b-256 51546a91f6e77486fbdf197bb40a2c90d74a36bdacb5517e6e551c0f8c9f3fac

See more details on using hashes here.

File details

Details for the file pydantic_fhir-0.0.1a18-py3-none-any.whl.

File metadata

  • Download URL: pydantic_fhir-0.0.1a18-py3-none-any.whl
  • Upload date:
  • Size: 363.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.4 CPython/3.9.7 Linux/5.15.2-arch1-1

File hashes

Hashes for pydantic_fhir-0.0.1a18-py3-none-any.whl
Algorithm Hash digest
SHA256 44c544eb2dadfef155986439869c80cff8badc08717f14a1998f52e5aeb1fabc
MD5 3b091db7510e91de5b85497e0123cac0
BLAKE2b-256 f59c3b2d7496b457e26d4fe5f55b051778255abbf6b808f23476d197362b991f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page