# Service Iris Healthtoolkit [![Vidéo](https://raw.githubusercontent.com/grongierisc/iris-healthtoolkit-service/main/misc/images/Cover.png)](https://youtu.be/lr2B7zSFkds "Video") Utilisation facile de HL7v2 vers FHIR, CDA vers FHIR, FHIR vers HL7v2 en tant que service. L'objectif de ce projet est de fournir une API REST capable de convertir facilement divers formats de santé. Publiez le format souhaité dans le corps REST, obtenez la réponse dans le nouveau format. * Version officielle : https://aws.amazon.com/marketplace/pp/prodview-q7ryewpz75cq2 :fire: * Vidéo : https://youtu.be/lr2B7zSFkds :tv: ## Installation Clonez ce référentiel ``` git clone https://github.com/grongierisc/iris-healthtoolkit-service.git ``` Docker ``` docker-compose up --build -d ``` ## Utilisation * Atteignez : http://localhost:32783/swagger-ui/index.html ## Détails de l'Api ### HL7 vers FHIR ``` POST http://localhost:32783/api/hl7/fhir ``` #### Exemple Saisie
```text MSH|^~\&||^^NPI|||20211105165829+0000||ADT^A01|66053,61109.396628|P|2.5.1|||AL|AL|||||PH_SS-Ack^SS Sender^2.16.840.1.114222.4.10.3^ISO EVN||202111051658|||||^^NPI PID|1||060a6bd5-5146-4b08-a916-009858997bd3^^^https://github.com/synthetichealth/synthea^~060a6bd5-5146-4b08-a916-009858997bd3^^^http://hospital.smarthealthit.org^MR~999-97-4582^^^&^SS~S99986284^^^&^DL~X84330364X^^^&^PPN||Masson^Livia^^^Mrs.^^||19920820|F|Simon^Livia^^||615 Avenue Lemaire^^Lyon^Auvergne-Rhone-Alpes^63000||^PRN^PH^^^555^286||||||||||||||||||||| PV1|1|O||424441002|||||||||||||||1^^^&&^VN|||||||||||||||||||||||||200812312325|20090101044004 PV2|||72892002^Grossesse normale^SCT OBX|1||8302-2^Taille du corps^LN||20101014002504^^|cm^^UCUM|||||F|||20101014 OBX|2||72514-3^Gravite de la douleur - 0-10 evaluation numerique verbale [Score] - Signaleee^LN||20101014002504^^|{score}^^UCUM|||||F|||20101014 OBX|3||29463-7^Poids corporel^LN||20101014002504^^|kg^^UCUM|||||F|||20101014 OBX|4||39156-5^Indice de masse corporelle^LN||20101014002504^^|kg/m2^^UCUM|||||F|||20101014 OBX|5||72166-2^Statut du tabagisme^LN||20171026002504^Ancien fumeur^SCT^^^^^^Ancien fumeur||||||F|||20171026 ```
Sortie
```json { "typeDeRessource": "Paquet", "type": "transaction", "saisie": [ { "demande": { "méthode": "POST", "url": "Organisation" }, "UrlComplète": "urn:uuid:347a0c88-e7fa-11ec-9601-0242ac1a0002", "ressource": { "typeDeRessource": "Organisation", "identifiant": [ { "valeur": "https://github.com/synthetichealth/synthea" } ] } }, { "demande": { "méthode": "POST", "url": "Organisation" }, "UrlComplète": "urn:uuid:34d03d1a-e7fa-11ec-9601-0242ac1a0002", "ressource": { "typeDeRessource": "Organisation", "identifiant": [ { "valeur": "http://hospital.smarthealthit.org" } ] } }, { "demande": { "méthode": "POST", "url": "Patient" }, "UrlComplète": "urn:uuid:36dd6e2a-e7fa-11ec-9601-0242ac1a0002", "ressource": { "typeDeRessource": "Patient", "adresse": [ { "ville": "Lyon", "ligne": [ "615 Avenue Lemaire" ], "codePostal": "63000", "région": "Auvergne-Rhone-Alpes" } ], "dateDeNaissance": "1992-08-20", "sex": "femme", "identifiant": [ { "assigner": { "référence": "urn:uuid:347a0c88-e7fa-11ec-9601-0242ac1a0002" }, "système": "https://github.com/synthetichealth/synthea", "valeur": "060a6bd5-5146-4b08-a916-009858997bd3" }, { "assigner": { "référence": "urn:uuid:34d03d1a-e7fa-11ec-9601-0242ac1a0002" }, "système": "http://hospital.smarthealthit.org", "type": { "codage": [ { "code": "MR", "système": "http://terminology.hl7.org/CodeSystem/v2-0203" } ], "texte": "MRN" }, "valeur": "060a6bd5-5146-4b08-a916-009858997bd3" }, { "extension": [ { "url": "http://intersystems.com/fhir/extn/sda3/lib/patient-number-i-s-o-assigning-authority", "valeurDeLigne": "&" } ], "type": { "codage": [ { "code": "SS" } ], "texte": "SS" }, "valeur": "999-97-4582" }, { "extension": [ { "url": "http://intersystems.com/fhir/extn/sda3/lib/patient-number-i-s-o-assigning-authority", "valeurDeLigne": "&" } ], "type": { "codage": [ { "code": "DL", "système": "http://terminology.hl7.org/CodeSystem/v2-0203" } ], "texte": "DL" }, "valeur": "S99986284" }, { "extension": [ { "url": "http://intersystems.com/fhir/extn/sda3/lib/patient-number-i-s-o-assigning-authority", "valeurDeLigne": "&" } ], "type": { "codage": [ { "code": "PPN", "système": "http://terminology.hl7.org/CodeSystem/v2-0203" } ], "texte": "PPN" }, "valeur": "X84330364X" } ], "nom": [ { "famille": "Simon", "prénom": [ "Livia" ], "texte": "Livia Simon" }, { "famille": "Masson", "prénom": [ "Livia" ], "préfixe": [ "Mrs." ], "texte": "Mrs. Livia Masson", "utilisation": "officiel" } ], "telecom": [ { "système": "téléphone", "utilisation": "domicile", "valeur": "(555) 286" } ] } }, { "demande": { "méthode": "POST", "url": "Visite" }, "UrlComplète": "urn:uuid:38cf2d40-e7fa-11ec-9601-0242ac1a0002", "ressource": { "typeDeRessource": "Visite", "class": { "code": "AMB", "système": "http://terminology.hl7.org/CodeSystem/v3-ActCode" }, "extension": [ { "url": "http://intersystems.com/fhir/extn/sda3/lib/encounter-encounter-type", "valeurDeLigne": "O" }, { "url": "http://intersystems.com/fhir/extn/sda3/lib/encounter-entered-on", "valeurDateHeur": "2008-12-31T23:25:00+00:00" }, { "url": "http://intersystems.com/fhir/extn/sda3/lib/encounter-to-time", "valeurDateHeur": "2009-01-01T04:40:04+00:00" } ], "identifiant": [ { "type": { "texte": "NuméroDeVisite" }, "utilisation": "officiel", "valeur": "1" } ], "période": { "lancement": "2008-12-31T23:25:00+00:00" }, "reasonCode": [ { "codage": [ { "code": "72892002", "affichage": "Grossesse normale", "système": "http://snomed.info/sct" } ] } ], "état": "inconnu", "sujet": { "référence": "urn:uuid:36dd6e2a-e7fa-11ec-9601-0242ac1a0002" }, "type": [ { "codage": [ { "code": "424441002" } ] } ] } }, { "demande": { "méthode": "POST", "url": "Observation" }, "UrlComplète": "urn:uuid:3a13745e-e7fa-11ec-9601-0242ac1a0002", "ressource": { "typeDeRessource": "Observation", "code": { "codage": [ { "code": "72166-2", "affichage": "Statut du tabagisme", "système": "http://loinc.org" } ] }, "effectiveDateHeure": "2017-10-26T00:00:00+00:00", "visite": { "référence": "urn:uuid:38cf2d40-e7fa-11ec-9601-0242ac1a0002" }, "extension": [ { "url": "http://intersystems.com/fhir/extn/sda3/lib/observation-encounter-number", "valeurDeLigne": "1" }, { "url": "http://intersystems.com/fhir/extn/sda3/lib/observation-observation-coded-value", "valeurConceptCodifiable": { "codage": [ { "code": "20171026002504", "affichage": "Ancien fumeur", "système": "http://snomed.info/sct" } ], "texte": "Ancien fumeur" } } ], "état": "final", "sujet": { "référence": "urn:uuid:36dd6e2a-e7fa-11ec-9601-0242ac1a0002" }, "valeurDeLigne": "Ancien fumeur" } }, { "demande": { "méthode": "POST", "url": "Observation" }, "UrlComplète": "urn:uuid:3b6212fc-e7fa-11ec-9601-0242ac1a0002", "ressource": { "typeDeRessource": "Observation", "category": [ { "codage": [ { "code": "Signes-vitaux", "affichage": "Signes vitaux", "système": "http://terminology.hl7.org/CodeSystem/observation-category" } ], "texte": "Signes vitaux" } ], "code": { "codage": [ { "code": "8302-2", "affichage": "Taille du corps", "système": "http://loinc.org" } ], "extension": [ { "url": "http://intersystems.com/fhir/extn/sda3/lib/code-table-detail-observation-observation-value-units", "valeurConceptCodifiable": { "codage": [ { "code": "cm", "système": "http://unitsofmeasure.org" } ] } } ] }, "effectiveDateHeure": "2010-10-14T00:00:00+00:00", "visite": { "référence": "urn:uuid:38cf2d40-e7fa-11ec-9601-0242ac1a0002" }, "extension": [ { "url": "http://intersystems.com/fhir/extn/sda3/lib/observation-encounter-number", "valeurDeLigne": "1" } ], "état": "final", "sujet": { "référence": "urn:uuid:36dd6e2a-e7fa-11ec-9601-0242ac1a0002" }, "valeurConceptCodifiable": { "codage": [ { "code": "20101014002504" } ] } } }, { "demande": { "méthode": "POST", "url": "Observation" }, "UrlComplète": "urn:uuid:3c8aba30-e7fa-11ec-9601-0242ac1a0002", "ressource": { "typeDeRessource": "Observation", "code": { "codage": [ { "code": "72514-3", "affichage": "Gravite de la douleur - 0-10 evaluation numerique verbale [Score] - Signaleee", "système": "http://loinc.org" } ], "extension": [ { "url": "http://intersystems.com/fhir/extn/sda3/lib/code-table-detail-observation-observation-value-units", "valeurConceptCodifiable": { "codage": [ { "code": "{score}", "système": "http://unitsofmeasure.org" } ] } } ] }, "effectiveDateHeure": "2010-10-14T00:00:00+00:00", "visite": { "référence": "urn:uuid:38cf2d40-e7fa-11ec-9601-0242ac1a0002" }, "extension": [ { "url": "http://intersystems.com/fhir/extn/sda3/lib/observation-encounter-number", "valeurDeLigne": "1" } ], "état": "final", "sujet": { "référence": "urn:uuid:36dd6e2a-e7fa-11ec-9601-0242ac1a0002" }, "valeurConceptCodifiable": { "codage": [ { "code": "20101014002504" } ] } } }, { "demande": { "méthode": "POST", "url": "Observation" }, "UrlComplète": "urn:uuid:3de455d0-e7fa-11ec-9601-0242ac1a0002", "ressource": { "typeDeRessource": "Observation", "category": [ { "codage": [ { "code": "signes -vitaux", "affichage": "Signes vitaux", "système": "http://terminology.hl7.org/CodeSystem/observation-category" } ], "texte": "Signes vitaux" } ], "code": { "codage": [ { "code": "29463-7", "affichage": "Poids corporel", "système": "http://loinc.org" } ], "extension": [ { "url": "http://intersystems.com/fhir/extn/sda3/lib/code-table-detail-observation-observation-value-units", "valeurConceptCodifiable": { "codage": [ { "code": "kg", "système": "http://unitsofmeasure.org" } ] } } ] }, "effectiveDateHeure": "2010-10-14T00:00:00+00:00", "visite": { "référence": "urn:uuid:38cf2d40-e7fa-11ec-9601-0242ac1a0002" }, "extension": [ { "url": "http://intersystems.com/fhir/extn/sda3/lib/observation-encounter-number", "valeurDeLigne": "1" } ], "état": "final", "sujet": { "référence": "urn:uuid:36dd6e2a-e7fa-11ec-9601-0242ac1a0002" }, "valeurConceptCodifiable": { "codage": [ { "code": "20101014002504" } ] } } }, { "demande": { "méthode": "POST", "url": "Observation" }, "UrlComplète": "urn:uuid:3f501418-e7fa-11ec-9601-0242ac1a0002", "ressource": { "typeDeRessource": "Observation", "code": { "codage": [ { "code": "39156-5", "affichage": "Indice de masse corporelle", "système": "http://loinc.org" } ], "extension": [ { "url": "http://intersystems.com/fhir/extn/sda3/lib/code-table-detail-observation-observation-value-units", "valeurConceptCodifiable": { "codage": [ { "code": "kg/m2", "système": "http://unitsofmeasure.org" } ] } } ] }, "effectiveDateHeure": "2010-10-14T00:00:00+00:00", "visite": { "référence": "urn:uuid:38cf2d40-e7fa-11ec-9601-0242ac1a0002" }, "extension": [ { "url": "http://intersystems.com/fhir/extn/sda3/lib/observation-encounter-number", "valeurDeLigne": "1" } ], "état": "final", "sujet": { "référence": "urn:uuid:36dd6e2a-e7fa-11ec-9601-0242ac1a0002" }, "valeurConceptCodifiable": { "codage": [ { "code": "20101014002504" } ] } } } ] } ```
### FHIR vers HL7 ADT ``` POST http://localhost:32783/api/fhir/hl7/adt ``` #### Exemple
```json { "typeDeRessource": "Paquet", "type": "transaction", "saisie": [ { "demande": { "méthode": "POST", "url": "Organisation" }, "UrlComplète": "urn:uuid:347a0c88-e7fa-11ec-9601-0242ac1a0002", "ressource": { "typeDeRessource": "Organisation", "identifiant": [ { "valeur": "https://github.com/synthetichealth/synthea" } ] } }, { "demande": { "méthode": "POST", "url": "Organisation" }, "UrlComplète": "urn:uuid:34d03d1a-e7fa-11ec-9601-0242ac1a0002", "ressource": { "typeDeRessource": "Organisation", "identifiant": [ { "valeur": "http://hospital.smarthealthit.org" } ] } }, { "demande": { "méthode": "POST", "url": "Patient" }, "UrlComplète": "urn:uuid:36dd6e2a-e7fa-11ec-9601-0242ac1a0002", "ressource": { "typeDeRessource": "Patient", "adresse": [ { "ville": "Lyon", "ligne": [ "615 Avenue Lemaire" ], "codePostal": "63000", "région": "Auvergne-Rhone-Alpes" } ], "dateDeNaissance": "1992-08-20", "sex": "femme", "identifiant": [ { "assigner": { "référence": "urn:uuid:347a0c88-e7fa-11ec-9601-0242ac1a0002" }, "système": "https://github.com/synthetichealth/synthea", "valeur": "060a6bd5-5146-4b08-a916-009858997bd3" }, { "assigner": { "référence": "urn:uuid:34d03d1a-e7fa-11ec-9601-0242ac1a0002" }, "système": "http://hospital.smarthealthit.org", "type": { "codage": [ { "code": "MR", "système": "http://terminology.hl7.org/CodeSystem/v2-0203" } ], "texte": "MRN" }, "valeur": "060a6bd5-5146-4b08-a916-009858997bd3" }, { "extension": [ { "url": "http://intersystems.com/fhir/extn/sda3/lib/patient-number-i-s-o-assigning-authority", "valeurDeLigne": "&" } ], "type": { "codage": [ { "code": "SS" } ], "texte": "SS" }, "valeur": "999-97-4582" }, { "extension": [ { "url": "http://intersystems.com/fhir/extn/sda3/lib/patient-number-i-s-o-assigning-authority", "valeurDeLigne": "&" } ], "type": { "codage": [ { "code": "DL", "système": "http://terminology.hl7.org/CodeSystem/v2-0203" } ], "texte": "DL" }, "valeur": "S99986284" }, { "extension": [ { "url": "http://intersystems.com/fhir/extn/sda3/lib/patient-number-i-s-o-assigning-authority", "valeurDeLigne": "&" } ], "type": { "codage": [ { "code": "PPN", "système": "http://terminology.hl7.org/CodeSystem/v2-0203" } ], "texte": "PPN" }, "valeur": "X84330364X" } ], "nom": [ { "famille": "Simon", "prénom": [ "Livia" ], "texte": "Livia Simon" }, { "famille": "Masson", "prénom": [ "Livia" ], "préfixe": [ "Mrs." ], "texte": "Mrs. Livia Masson", "utilisation": "officiel" } ], "telecom": [ { "système": "téléphone", "utilisation": "domicile", "valeur": "(555) 286" } ] } }, { "demande": { "méthode": "POST", "url": "visite" }, "UrlComplète": "urn:uuid:38cf2d40-e7fa-11ec-9601-0242ac1a0002", "ressource": { "typeDeRessource": "visite", "class": { "code": "AMB", "système": "http://terminology.hl7.org/CodeSystem/v3-ActCode" }, "extension": [ { "url": "http://intersystems.com/fhir/extn/sda3/lib/encounter-encounter-type", "valeurDeLigne": "O" }, { "url": "http://intersystems.com/fhir/extn/sda3/lib/encounter-entered-on", "valeurDateHeur": "2008-12-31T23:25:00+00:00" }, { "url": "http://intersystems.com/fhir/extn/sda3/lib/encounter-to-time", "valeurDateHeur": "2009-01-01T04:40:04+00:00" } ], "identifiant": [ { "type": { "texte": "EncounterNumber" }, "utilisation": "officiel", "valeur": "1" } ], "période": { "lancement": "2008-12-31T23:25:00+00:00" }, "reasonCode": [ { "codage": [ { "code": "72892002", "affichage": "Grossesse normale", "système": "http://snomed.info/sct" } ] } ], "état": "inconnu", "sujet": { "référence": "urn:uuid:36dd6e2a-e7fa-11ec-9601-0242ac1a0002" }, "type": [ { "codage": [ { "code": "424441002" } ] } ] } }, { "demande": { "méthode": "POST", "url": "Observation" }, "UrlComplète": "urn:uuid:3a13745e-e7fa-11ec-9601-0242ac1a0002", "ressource": { "typeDeRessource": "Observation", "code": { "codage": [ { "code": "72166-2", "affichage": "Statut du tabagisme", "système": "http://loinc.org" } ] }, "effectiveDateHeure": "2017-10-26T00:00:00+00:00", "visite": { "référence": "urn:uuid:38cf2d40-e7fa-11ec-9601-0242ac1a0002" }, "extension": [ { "url": "http://intersystems.com/fhir/extn/sda3/lib/observation-encounter-number", "valeurDeLigne": "1" }, { "url": "http://intersystems.com/fhir/extn/sda3/lib/observation-observation-coded-value", "valeurConceptCodifiable": { "codage": [ { "code": "20171026002504", "affichage": "Ancien fumeur", "système": "http://snomed.info/sct" } ], "texte": "Ancien fumeur" } } ], "état": "final", "sujet": { "référence": "urn:uuid:36dd6e2a-e7fa-11ec-9601-0242ac1a0002" }, "valeurDeLigne": "Ancien fumeur" } }, { "demande": { "méthode": "POST", "url": "Observation" }, "UrlComplète": "urn:uuid:3b6212fc-e7fa-11ec-9601-0242ac1a0002", "ressource": { "typeDeRessource": "Observation", "category": [ { "codage": [ { "code": "signes-vitaux", "affichage": "Signes vitaux", "système": "http://terminology.hl7.org/CodeSystem/observation-category" } ], "texte": "Signes vitaux" } ], "code": { "codage": [ { "code": "8302-2", "affichage": "Taille du corps", "système": "http://loinc.org" } ], "extension": [ { "url": "http://intersystems.com/fhir/extn/sda3/lib/code-table-detail-observation-observation-value-units", "valeurConceptCodifiable": { "codage": [ { "code": "cm", "système": "http://unitsofmeasure.org" } ] } } ] }, "effectiveDateHeure": "2010-10-14T00:00:00+00:00", "visite": { "référence": "urn:uuid:38cf2d40-e7fa-11ec-9601-0242ac1a0002" }, "extension": [ { "url": "http://intersystems.com/fhir/extn/sda3/lib/observation-encounter-number", "valeurDeLigne": "1" } ], "état": "final", "sujet": { "référence": "urn:uuid:36dd6e2a-e7fa-11ec-9601-0242ac1a0002" }, "valeurConceptCodifiable": { "codage": [ { "code": "20101014002504" } ] } } }, { "demande": { "méthode": "POST", "url": "Observation" }, "UrlComplète": "urn:uuid:3c8aba30-e7fa-11ec-9601-0242ac1a0002", "ressource": { "typeDeRessource": "Observation", "code": { "codage": [ { "code": "72514-3", "affichage": "Gravite de la douleur - 0-10 evaluation numerique verbale [Score] - Signaleee", "système": "http://loinc.org" } ], "extension": [ { "url": "http://intersystems.com/fhir/extn/sda3/lib/code-table-detail-observation-observation-value-units", "valeurConceptCodifiable": { "codage": [ { "code": "{score}", "système": "http://unitsofmeasure.org" } ] } } ] }, "effectiveDateHeure": "2010-10-14T00:00:00+00:00", "visite": { "référence": "urn:uuid:38cf2d40-e7fa-11ec-9601-0242ac1a0002" }, "extension": [ { "url": "http://intersystems.com/fhir/extn/sda3/lib/observation-encounter-number", "valeurDeLigne": "1" } ], "état": "final", "sujet": { "référence": "urn:uuid:36dd6e2a-e7fa-11ec-9601-0242ac1a0002" }, "valeurConceptCodifiable": { "codage": [ { "code": "20101014002504" } ] } } }, { "demande": { "méthode": "POST", "url": "Observation" }, "UrlComplète": "urn:uuid:3de455d0-e7fa-11ec-9601-0242ac1a0002", "ressource": { "typeDeRessource": "Observation", "category": [ { "codage": [ { "code": "signes-vitaux", "affichage": "Signes vitaux", "système": "http://terminology.hl7.org/CodeSystem/observation-category" } ], "texte": "Signes vitaux" } ], "code": { "codage": [ { "code": "29463-7", "affichage": "Poids corporel", "système": "http://loinc.org" } ], "extension": [ { "url": "http://intersystems.com/fhir/extn/sda3/lib/code-table-detail-observation-observation-value-units", "valeurConceptCodifiable": { "codage": [ { "code": "kg", "système": "http://unitsofmeasure.org" } ] } } ] }, "effectiveDateHeure": "2010-10-14T00:00:00+00:00", "visite": { "référence": "urn:uuid:38cf2d40-e7fa-11ec-9601-0242ac1a0002" }, "extension": [ { "url": "http://intersystems.com/fhir/extn/sda3/lib/observation-encounter-number", "valeurDeLigne": "1" } ], "état": "final", "sujet": { "référence": "urn:uuid:36dd6e2a-e7fa-11ec-9601-0242ac1a0002" }, "valeurConceptCodifiable": { "codage": [ { "code": "20101014002504" } ] } } }, { "demande": { "méthode": "POST", "url": "Observation" }, "UrlComplète": "urn:uuid:3f501418-e7fa-11ec-9601-0242ac1a0002", "ressource": { "typeDeRessource": "Observation", "code": { "codage": [ { "code": "39156-5", "affichage": "Indice de masse corporelle", "système": "http://loinc.org" } ], "extension": [ { "url": "http://intersystems.com/fhir/extn/sda3/lib/code-table-detail-observation-observation-value-units", "valeurConceptCodifiable": { "codage": [ { "code": "kg/m2", "système": "http://unitsofmeasure.org" } ] } } ] }, "effectiveDateHeure": "2010-10-14T00:00:00+00:00", "visite": { "référence": "urn:uuid:38cf2d40-e7fa-11ec-9601-0242ac1a0002" }, "extension": [ { "url": "http://intersystems.com/fhir/extn/sda3/lib/observation-encounter-number", "valeurDeLigne": "1" } ], "état": "final", "sujet": { "référence": "urn:uuid:36dd6e2a-e7fa-11ec-9601-0242ac1a0002" }, "valeurConceptCodifiable": { "codage": [ { "code": "20101014002504" } ] } } } ] } ```
Sortie ```texte MSH|^~\&||^^NPI|||20220609134903+0000||^|66269,49743.388133779|P|2.5.1|||AL|AL|||||PH_SS-Ack^SS Sender^2.16.840.1.114222.4.10.3^ISO EVN||202206091349|||||^^NPI PID|1||060a6bd5-5146-4b08-a916-009858997bd3^^^https://github.com/s&&ISO^~060a6bd5-5146-4b08-a916-009858997bd3^^^http://hospital.smar&&ISO^MR~999-97-4582^^^&^SS~S99986284^^^&^DL~X84330364X^^^&^PPN||Masson^Livia^^^Mrs.^^||19920820|F|Simon^Livia^^||615 Avenue Lemaire^^^^||^PRN^PH^^^555^286||||||||||||||||||||| PV1|1|O||424441002|||||||||||||||1^^^&&^VN|||||||||||||||||||||||||200812312325| PV2|||72892002^Grossesse normale^SCT OBX|1||72166-2^Statut du tabagisme^LN||^^||||||F|||20171026 OBX|2||8302-2^Taille du corps^LN||^^||||||F|||20101014 OBX|3||72514-3^Gravite de la douleur - 0-10 evaluation numerique verbale [Score] - Signaleee^LN||^^||||||F|||20101014 OBX|4||29463-7^Poids corporel^LN||^^||||||F|||20101014 OBX|5||39156-5^Indice de masse corporelle^LN||^^||||||F|||20101014 ```
### FHIR vers HL7 ORU ``` POST http://localhost:32783/api/fhir/hl7/oru ``` ### FHIR vers HL7 vxu ``` POST http://localhost:32783/api/fhir/hl7/vxu ``` ### CDA vers FHIR ``` POST http://localhost:32783/api/cda/fhir ``` #### Exemple ### Dépôt FHIR ``` GET http://localhost:32783/api/fhir/metadata ``` ## Format d'entrée HL7 pris en charge : * ADT_A01, ADT_A02, ADT_A03, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A09, ADT_A10, ADT_A11, ADT_A12, ADT_A13, ADT_A17, ADT_A18, ADT_A23, ADT_A25, ADT_A27, ADT_A28, ADT_A29, ADT_A30, ADT_A31, ADT_A34, ADT_A36, ADT_A39, ADT_A40, ADT_A41, ADT_A45, ADT_A47, ADT_A49, ADT_A50, ADT_A51, ADT_A60 * BAR_P12 * MDM_T02, MDM_T04, MDM_T08, MDM_T11 * OMP_O09 * ORM_O01 * ORU_R01 * PPR_PC1, PPR_PC2, PPR_PC3 * RDE_O11 * SIU_S12, SIU_S13, SIU_S14, SIU_S15, SIU_S16, SIU_S17, SIU_S26 * VXU_V04 ## Comment ça marche Ce projet fonctionne avec le diagramme pivot : SDA. Le SDA (Summary Document Architecture, Architecture du document de synthèse) est le format de données cliniques d'InterSystems. Les correspondances SDA <-> FHIR peuvent être consultées [ici](https://docs.intersystems.com/irisforhealthlatest/csp/docbook/Doc.View.cls?KEY=HXFHIR_transforms), et celles de la CDA -> SDA [ici](https://docs.intersystems.com/irisforhealthlatest/csp/docbook/DocBook.UI.Page.cls?KEY=HXCDA). ![gif sda pivot](https://raw.githubusercontent.com/grongierisc/iris-healthtoolkit-service/main/misc/images/Gif_SDA_Pivot.gif)