Coder Social home page Coder Social logo

hl7.fhir.fr.core's Introduction

Lien vers l'intégration continue : https://interop-sante.github.io/hl7.fhir.fr.core/main/ig

/!\ Cette version est soumise à des changements réguliers et ne doit pas être utilisée telle quelle, elle est uniquement publiée pour consultation.

Validation de l’IG

Description

Code source permettant de générer le guide d'implémentation FrCore publié à l'adresse http://hl7.fr/ig/fhir/core Il contient l'ensemble des ressources de conformité pour usage français.

Générer l'IG

Pour générer l'IG, suivre la documentation sur le confluence d'hl7

bash _updatePublisher.sh // Mise à jour du publisher java
bash _genonce.sh // Génère l'IG

hl7.fhir.fr.core's People

Contributors

nriss avatar sdemeyans avatar tristanriri avatar vadi2 avatar ypoiron avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

hl7.fhir.fr.core's Issues

Extension FR Core Patient Insi Birth Place Profile

Cette extension permet de spécifier le code INSEE au niveau d'une adresse en provenance du TLS INSi. Pourquoi avoir créé cette extension alors que le profil FrCoreAddress contient en extension le code INSEE?
D'autre part, dans le profil FrCorePatient, l'extension birthPlace est de type Address (type de données FHIR qui n'utilise pas l'extension FR Core Patient Insi Birth Place Profile.

Ajout des snapshot dans les StructureDefinition des profils

  • Permet de suivre les tendances internationales (fait par l'IG publisher et dans les ressources fhir core)
  • Permet d'importer directement un package sur HAPI pour utiliser le $validate
  • Evite que chaque acteur ait à générer le snapshot, qui peut être très difficile avec les nombreux héritages

utilisation de patient.name.text de type official

Dans le document du CI-SIS https://esante.gouv.fr/sites/default/files/media_entity/documents/ans_cisis-tec_annexe-ins_1.5.pdf
l'utilisation du champ text est incorrecte.

Dans la spécification FHIR, Le champ text doit contenir toutes les parties du nom.

Si on conserve la contrainte de ne véhiculer qu'un seul prénom alors

{
      "use": "official",
      "family": "DUPOND",
      "given": [
        "PIERRE"
      ],
      "text": "PIERRE ANTOINE JEREMIE"
}

est incorrect, il faut

{
      "use": "official",
      "family": "DUPOND",
      "given": [
        "PIERRE"
      ],
      "text": "PIERRE DUPOND"
}

Pour véhiculer la liste des prénoms retournées par le téléservice INSi, en appliquant une contrainte de non modification (diffusion sous la forme retournée, c'est-à-dire une liste de prénoms séparés par des espaces), il est nécessaire d'avoir une extension.

Binding d'un élément complexe sur un ValueSet

Certains éléments complexes sont bindés sur un ValueSet. Exemple : https://github.com/Interop-Sante/hl7.fhir.fr.core/blob/main/input/resources/StructureDefinition-fr-core-service-type-duration.xml
{ "id": "Extension.extension:serviceType", "path": "Extension.extension", "sliceName": "serviceType", "short": "Type of the service that has to be performed during the appointment | Typedu service à assurer durant le RDV", "min": 1, "max": "1", "binding": { "strength": "extensible", "description": "This value set defines an example set of codes of service-types.", "valueSet": "http://hl7.org/fhir/ValueSet/service-type" } }

Extension FR Core Nationality Profile

l'extension est basée sur l'extension internationale patient-nationality mais il n'y a pas de binding définit sur le code de l'extension (codeableConcept permettant de définir la nationalité du patient)

Profil FR Core Healthcare Service Profile

le JdV utilisé (identifier type codes) au niveau de l'élément identifier/type n'a pas de sens. Il s'agit du type d'identifiant d'une offre de service et non pas du type d'identifiant de patient ou PS.
je ne trouve aucune valeur dans le JdV correspondant à un type d'identifiant d'une offre de service.

Profil FR Core Patient

Je ne vois pas l'utilité de slicer l'élément name, cela complique les implémentations.
l'élément use du type de données FrHumanName permet de différencier le nom usuel du nom officiel sans avoir à introduire un slicing.

Invalid file name in NPM package for fr-core-practitioner-role-exercice profile

Greetings! It looks like the fr-core-practitioner-role-exercice profile is exported in the NPM package as fr-practitioner--role-exercice..json (notice the extra . before the extension).

This is causing problems when trying to import the package with HAPI FHIR's built-in NpmPackageValidationSupport (exception being thrown here).

Would it be possible to update the package to remove the extra period in the file name? Thanks!

JdV FRCoreValueSetRelatedPersonRole

Ce JdV permet de spécifier la nature de la relation du patient avec une personne en relation.
le profil pointe le JdV TRE-R260-HL7Role
Il faudrait compléter avec:

Homogénéisation de l’échange des prénoms d’un patient

Le volume 1 du RNIV (“Principes d’identification des usagers communs à tous les acteurs de santé”) précise page 32 comment le(s) prénom(s) de naissance doivent être saisi(s) dans les applications. La notion de 2ème, 3ème prénom disparait. La personne a un premier prénom de naissance et une liste de prénoms de naissance disponible sur “la ligne prénom du document d’identité” utilisé pour saisir l’identité d’une personne.
L’objectif de cette proposition d’évolution est de prendre en compte cette partie du RNIV dans le profil frPatient, tout en étant aligné avec les messages HL7 V2 (voir pièce jointe).

  • La cardinalité de Patient.officialName.text doit être 1..1. En effet, text contient l'ensemble des prénoms, dont au moins given.
  • La cardinalité de Patient.usualName.given et de Patient.usualName.text doivent être 1..1.
  • Reprendre les exemples de la ressource Patient.

IHE-CP-ITI-FR-2023-nnn_GivenNames_v1.docx
ExemplesCorrigés.zip

ValueSet manquants

Erreurs remontées par Isabelle Gibaud sur les mesures de santé

  • Des JdV manquent :

    • Interpretation
    • Bodyposition
    • LevelOfExertion
  • Le JdV Vital Signs ne contient pas les libellés des codes

  • Le JdV Method (issu de CIMI) n’existe plusSupprimer la valeur race du JdV ReferenceReferengeAppliesTo

  • FrObservationRate

    • bodyPosition ne pointe vers aucun JdV
    • idem LevelOfExertion
    • idem interpretation
    • l’élément category devrait être fixé à la valeur VITAL-SIGNS
    • l’élément code devrait être fixé à la valeur 9279-1
  • FrObservationHeartRate

    • bodyPosition ne pointe vers aucun JdV
    • idem LevelOfExertion
    • idem interpretation
    • élément value, system =UCUM (OK) mais le code devrait être fixé à {beats}/min au lieu de /min
    • élément bodySite, sans doute un pb sur le binding car le mot Binding n’apparaît pas sur l’élément (à côté du type de donné)
    • élément method, sans doute un pb sur le binding car le mot Binding n’apparaît pas sur l’élément (à côté du type de donné)
  • FrObservationOxygenSaturation

    • L’extension supportingInfoAdministrationOxygen doit être mustSupport
    • bodyPosition ne pointe vers aucun JdV
    • idem LevelOfExertion
    • idem interpretation
  • FrObservationTemperature

    • Elément valueQuantity.code ne devrait pas contenir la valeur [degF], à discuter
    • Le JdV LevelOfExertion manque
    • idem interpretation
    • élément bodySite, sans doute un pb sur le binding car le mot Binding n’apparaît pas sur l’élément (à côté du type de donné)
    • élément method, sans doute un pb sur le binding car le mot Binding n’apparaît pas sur l’élément (à côté du type de donné)
    • le JdV sur lequel pointe l’élément method n’a aucun sens
  • FrObservationBodyHeight

  • FrObservationWeight

    • L’extension supportingInfoAdministrationOxygen doit être mustSupport
    • Elément valueQuantity.code ne devrait pas contenir la valeur [ib-av], à discuter, d’autre part, les libellés sont manquants dans le JdV
    • Le JdV LevelOfExertion manque
    • Le binding sur bodySite n’a pas de sens, le lieu de prise du poids ???
    • Elément method : JdV manquant
  • FrObservationHeadCircum

    • Le binding sur bodySite n’a pas de sens, le lieu de prise de la circonférence de la tête ???
    • Elément method, le JdV n’a pas de sens
  • FrObservationBmi

    • L’extension supportingInfoAdministrationOxygen doit être mustSupport
    • JdV interpretation manquant
    • Le binding sur bodySite n’a pas de sens, le lieu de prise du BMI ???
    • L’élément method n’avait pas été retenu par le GT à supprimer le binding
  • FrObservationBP

GT6-FHIR - Données cliniques - profilesextensionsvalueSetscodeSystems(Récupération automatique).xlsx

Autres ValueSets manquants :

https://hl7.fr/ig/fhir/core/ValueSet/fr-core-vs-weight-measurement-method
https://hl7.fr/ig/fhir/core/ValueSet/fr-core-vs-bp-measurement-method
https://hl7.fr/ig/fhir/core/ValueSet/fr-core-vs-heart-rate-body-position
https://hl7.fr/ig/fhir/core/ValueSet/fr-core-vs-heart-rate-method

https://hl7.fr/ig/fhir/core/ValueSet/fr-core-vs-practitioner-profession (extension associée à Practitioner)
https://hl7.fr/ig/fhir/core/ValueSet/fr-core-vs-practitioner-role-categorie-professionnelle (extension associée à PractitionerRole.code)

FrPractitionerRole

A discuter : supprimer FrPractitionerRoleProfession et remplacer FrPractitionerRoleExercice par FrPractitionerRole

Dans le cadre de l'annuaire, on utilise uniquement FrPractitionerRoleExerice

Discuté avec Mohammed, Isabelle

Profil FR Core Patient

l’élément validationMode de l'extension identityReliability est redondant avec l'extension identityMethodCollection. Il faut choisir l'un ou l'autre.

[Bug] Binding sur une StructureDefinition

Extension: FRCoreObservationLevelOfExertionExtension
Id: fr-core-observation-level-of-exertion
Title: "FR Core Observation Level Of Exertion Extension"
Description: "French extension defined in the context of the Vital Signs Resprate profile. This extension is used to define the level of exertion ( at rest, during exertion, post exertion) during the respiratory rate measure | Extension française définie dans le contexte du profil Vital Signs Resprate. Cette extension permet de préciser le niveau d'exercice du patient durant la mesure de la fréquence respiratoire (au repos, pendant l'effort, après l'effort)"

  • ^context.type = #element
  • ^context.expression = "Observation"
  • value[x] only CodeableConcept
  • value[x].coding from $fr-core-observation-level-of-exertion (preferred) // TODO : ce VS n'existe pas, renvoie sur cette extension

Réparer la référence FrObservationHeartrate.performance (mauvaise url du profil FrPractitionerRole)

Erreur remontée par Nicolas Arnoux sur le profil https://simplifier.net/frenchprofiledfhirar/FrObservationHeartrate

Remplacer l'url canonique du profil http://www.interopsante.org/fhir/structuredefinition/fr-practitioner-role.
Prendre les mêmes profils que pour FrObservationBMI : https://simplifier.net/frenchprofiledfhirar/frobservationbmi

Package : https://simplifier.net/packages/ans.annuaire.fhir.r4/0.2.0

Travail à effectuer en parallèle de l'issue #1

patient.name.given official contraint à 1

La contrainte 1..1 portée sur le champ given est à expliciter.
Il s'agit de contraindre l'utilisation du prénom de type officiel au seul 1er prénom. Dit autrement, dans le HumanName de type official, les autres prénoms ne seront pas véhiculés dans given.
Il ne faut pas véhiculer la liste des prénoms dans un champ unique.

Pour une identité avec 2 prénoms, Pierre Antoine, la contrainte fait que seul Pierre sera présent dans les prénoms du bloc name
<given value='Pierre'/>
Antoine ne sera pas présent dans le bloc.

Avoir
<given value='Pierre Antoine'/>
est incorrect.

Profil FR Core Patient / contact

Je ne comprends pas le binding attaché à contact/relationship.
Un binding est déja attaché à RolePerson et RelatedPersonn

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.