Skip to main content

FHIR field for Plone

Project description

Egg Status Travis Build Status Test Coverage Python Versions Latest Version License

Background (plone.app.fhirfield)

FHIR (Fast Healthcare Interoperability Resources) is the standard for Healthcare system. Our intend to implemnt FHIR based system using Plone! plone.app.fhirfield will make life easier to create, manage content for FHIR resources.

Features

  • Plone restapi support

  • Widget: z3cform support

  • plone.supermodel support

  • plone.rfc822 marshaler field support

Available Options

This field has got all standard options (i.e title, required, desciption and so on) with additionally options for the purpose of either validation or constraint those are related to FHIR.

resource_type

Required: No

Default: None

Type: String

The name of FHIR resource can be used as constraint, meaning that we can restricted only accept certain resource. If FHIR json is provided that contains other resource type, would raise validation error. Example: FhirResource(….,resource_type=’Patient’)

model

Required: No

Default: None

Type: String + full python path (dotted) of the model class.

Like resource_type option, it can be used as constraint, however additionally this option enable us to use custom model class other than fhirclient’s model. Example: FhirResource(….,model=’fhirclient.models.patient.Patient’)

model_interface

Required: No

Default: None

Type: String + full python path (dotted) of the model class.

Unlike model option, this option has more versatile goal although you can use it for single resource restriction. The advanced usecase like, the field could accept muiltiple resources types those model class implements the provided interface. For example you made a interface called IMedicalService and (Organization, Patient, Practitioner) models those are implementing IMedicalService. So when you provides this option value, actually three types of fhir json can now be accepted by this field. Example: FhirResource(….,model=’plone.app.interfaces.IFhirResourceModel’)

Roadmaps

  • indexing: we have plan to support json index like elastic search model. Ofcourse performance will be main issue. bellows are some libraries, I found. You are welcome to suggest me any better library for json search.
  • elastic search support

Installation

Install plone.app.fhirfield by adding it to your buildout:

[buildout]

...

eggs =
    plone.app.fhirfield

and then running bin/buildout

Contributors

Changelog

1.0.0a10 (2018-03-12)

  • fix(bug) Issue-3: resource_type constraint don’t raise exception from validator.

1.0.0a9 (2018-03-08)

  • There is no restriction/limit over fhir resources, all available models are supported.

1.0.0a8 (2018-01-22)

1.0.0a7 (2018-01-21)

1.0.0a6 (2018-01-14)

  • missing HealthcareService fhir model is added as supported model.

1.0.0a5 (2018-01-14)

  • Person fhir model added in whitelist.

1.0.0a4 (2018-01-14)

  • IFhirResource.model_interface field type changed to DottedName from InterfaceField.

1.0.0a3 (2017-12-22)

  • FHIR Patch support added. Now patching fhir resource is more easy to manage.

  • plone.supermodel support is confirmed.[nazrulworld]

  • plone.rfc822 marshaler field support.[nazrulworld]

1.0.0a2 (2017-12-10)

  • FhirResourceWidget is made working state. From now it is possible to adapt FhirResourceWidget` with z3c.form [nazrulworld]

1.0.0a1 (2017-12-05)

  • Initial release. [nazrulworld]

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

plone.app.fhirfield-1.0.0a10.tar.gz (35.8 kB view hashes)

Uploaded Source

Supported by

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