openxtrem/fhir-core

2.2.4 2024-04-23 13:42 UTC

README

About

This library includes a generator for creating PHP classes from the HL7 FHIR specification, together with serializers and parsers for JSON and XML.

The project is under development

Generated classes usage example

$humanName = (new FHIRHumanName())
    ->setFamily('MyFamilyName')
    ->addGiven('MyGiven')
    ->addGiven('MySecondGiven');

$patient = (new FHIRPatient())
    ->setActive(true)
    ->setName($humanName);

Serializer

  • Using Generated classes and structure definition (R4 FHIR version)

Example

PHP Usage

$XMLSerializer = new XMLSerializer();
$JSONSerializer = new JSONSerializer();

$XMLPatientString = $XMLSerializer->serialize($patient)

or

$XMLPatientString = (string)Serializer::serialize($patient, Serializer::FORMAT_XML)

Parser

  • Using Generated classes and structure definition (R4 FHIR version)

Example

XML Patient

<?xml version="1.0" encoding="UTF-8"?>
<Patient xmlns="http://hl7.org/fhir">
  <active value="true"/>
  <name>
    <family value="MyFamilyName"/>
    <given value="MyGiven"/>
    <given value="MySecondGiven"/>
  </name>
</Patient>

PHP Usage

$XMLParser = new XMLParser();
$JSONParser = new JSONParser();

$patient = $XMLParser->parse($XMLPatientString)

or

$patient = Parser::parse($XMLPatientString)->getResource()