You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: input/pagecontent/ressourcesFHIR-struc-gen.md
+131Lines changed: 131 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -152,6 +152,137 @@ La norme FHIR permet d’indiquer de façon optionnelle le rattachement d'une se
152
152
Chaque entrée d'un document peut avoir un **subject**. Si l'entrée ne contient pas de subject, l’entrée concerne la personne indiquée dans l'élément **Composition.section.focus** de la section. Si la section ne contient pas d'élément **Composition.section.focus**, la section concerne la personne indiquée dans l'élément **subject** du document.
153
153
C’est le principe de propagation du contexte et qui part du document vers les sections, sous-sections, entrées et sous-entrées emboitées.
154
154
155
+
#### Gestion des sections vides (pas d'information) :
156
+
157
+
En FHIR, l'élément **section.emptyReason** permet d'indiquer la raison pour laquelle une section est vide, c'est-à-dire qu'elle ne contient aucune entrée structurée. Son utilisation est conditionnée par le caractère obligatoire de la section dans le modèle de document.
158
+
159
+
##### Sections obligatoires
160
+
161
+
Pour les sections obligatoires (ex : Allergies et intolérances, Problèmes, Traitements), lorsqu'aucune entrée structurée n'est fournie, l'élément **section.emptyReason****DOIT** être renseigné avec une valeur issue du JDV [list-empty-reason](http://hl7.org/fhir/ValueSet/list-empty-reason).
162
+
163
+
| Code | Libellé | Définition |
164
+
|------|---------|------------|
165
+
|`nilknown`| Pas d'élément connu | Constatation clinique d'un professionnel de santé concluant, après investigation, à l'absence d'éléments connus pour cette donnée. **Cette valeur ne peut pas être fournie par défaut par un SIS en l'absence d'informations.** <br><br>Exemples :<br>- *Allergies* : le patient ou son représentant a déclaré n'avoir connaissance d'aucune allergie.<br>- *Médicaments* : le patient déclare ne prendre aucun médicament.<br>- *Diagnostics / problèmes* : le patient déclare qu'aucun événement connu ne doit être enregistré. |
166
+
|`notasked`| Non demandé | Aucune investigation n'a été menée pour déterminer s'il existe des éléments pour cette liste. |
167
+
|`withheld`| Non divulgué | Aucune information n'est fournie pour des raisons de confidentialité. Cela ne signifie pas nécessairement que le contenu est sensible ; il peut s'agir d'une décision personnelle du patient. |
168
+
|`unavailable`| Indisponible | L'information est indisponible au moment de la production du document (ex : patient inconscient). |
169
+
|`notstarted`| Non démarré | Les actions permettant d'obtenir cette information n'ont pas encore démarré. |
170
+
|`closed`| Fermé | Cette liste est désormais fermée ou n'est plus pertinente ni utile. |
171
+
172
+
##### Sections facultatives
173
+
174
+
Lorsqu'aucune donnée n'est disponible pour une section facultative, **le producteur ne doit pas créer la section**. L'élément **section.emptyReason** ne s'applique pas aux sections facultatives absentes.
175
+
176
+
> **En résumé** : *section.emptyReason* s'applique uniquement aux **sections obligatoires vides**. Pour les sections facultatives, l'absence de données se traduit simplement par l'absence de la section dans le document.
177
+
178
+
179
+
#### Gestion de l'absence de données au niveau des éléments (données manquantes)
180
+
181
+
En FHIR, l'absence d'une valeur dans un élément doit être gérée de manière explicite lorsque cela est **requis**. Les règles diffèrent selon la cardinalité de l'élément et selon que la donnée est codée ou non.
182
+
183
+
##### Données optionnelles
184
+
185
+
*(cardinalité `0..1` ou `0..*`)*
186
+
187
+
Si l'information n'est pas disponible, quelle que soit la raison, **ne pas créer l'élément**. L'absence de l'élément dans la ressource est suffisante pour exprimer l'indisponibilité.
188
+
189
+
##### Données obligatoires
190
+
191
+
*(cardinalité `1..1` ou `1..*`)*
192
+
193
+
Si l'information n'est pas disponible, **le motif de l'absence DOIT être précisé** via les mécanismes décrits ci-dessous.
194
+
195
+
###### Données obligatoires non codées
196
+
197
+
Utiliser l'extension [**Data Absent Reason**](http://hl7.org/fhir/StructureDefinition/data-absent-reason) avec :
| 1 |`not-asked`| Non demandé | Valeur non demandée. |
210
+
| 1 |`asked-declined`| Demandé - refus de réponse | Valeur demandée / refus de réponse. |
211
+
| 0 |`masked`| Masqué | Valeur non disponible pour des raisons de sécurité, de confidentialité ou autres. |
212
+
| 0 |`not-applicable`| Non applicable | Pas de valeur appropriée pour cet élément (par exemple, la date des dernières règles pour un homme). |
213
+
| 0 |`unsupported`| Non supporté | Le système source ne gère pas cet élément. |
214
+
| 0 |`as-text`| Voir narratif | Valeur fournie dans la partie narrative. |
215
+
| 0 |`error`| Erreur | Valeur indisponible due à une erreur système ou de processus. |
216
+
| 1 |`not-a-number`| Non numérique | La valeur numérique est indéfinie ou non représentable en raison d'une erreur de traitement des nombres à virgule flottante. |
217
+
| 1 |`negative-infinity`| Borne inférieure infinie | La valeur numérique est excessivement basse et non représentable. |
218
+
| 1 |`positive-infinity`| Borne supérieure infinie | La valeur numérique est excessivement élevée et non représentable. |
219
+
| 0 |`not-performed`| Non effectué | La valeur n'est pas disponible car la procédure d'observation n'a pas été effectuée. |
220
+
| 0 |`not-permitted`| Non autorisé | Cette valeur n'est pas autorisée dans ce contexte (par exemple, en raison des profils ou des types de données de base). |
221
+
222
+
**Exemple** : dans une ressource `Procedure`, lorsque la date d'exécution (`performed[x]`) est inconnue :
1.**Données codées à partir d'un codeSystem/valueSet non obligatoire** (`example`, `preferred` ou `extensible`)
243
+
244
+
Si l'information n'est pas connue et qu'il existe dans la terminologie ou le ValueSet associé **un code d'exception spécifique**, utiliser ce code en priorité.
245
+
246
+
> Exemple : code SNOMED CT `1287211007` — *"No information available"*.
247
+
248
+
Dans les autres cas, utiliser l'extension [**Data Absent Reason**](http://hl7.org/fhir/StructureDefinition/data-absent-reason) avec la syntaxe suivante :
2.**Données codées à partir d'un codeSystem/valueSet obligatoire** (`required`)
267
+
268
+
> **Règle** : lorsqu'une donnée est absente, **utiliser le code d'exception du ValueSet ou de la terminologie associée**. C'est la règle de référence pour une liaison `required`.
269
+
270
+
En pratique, de nombreux ValueSets ou terminologies ne prévoient pas de code d'exception. Dans ce cas, faute de code applicable, **utiliser l'extension [Data Absent Reason](http://hl7.org/fhir/StructureDefinition/data-absent-reason)** comme mécanisme de repli.
271
+
272
+
| Situation | Traitement |
273
+
|---|---|
274
+
| Le VS/terminologie contient un code d'exception (ex : `unknown` dans `event-status`) | Utiliser ce code d'exception |
275
+
| Le VS/terminologie ne contient **aucun** code d'exception | Utiliser l'extension `data-absent-reason`|
276
+
277
+
278
+
> **Exemples d'instances : Allergies et Procédures** :
279
+
>
280
+
> - L'instance [example-allergy-intolerance-data-absent-reason](AllergyIntolerance-example-allergy-intolerance-data-absent-reason.html) illustre l'usage de l'extension `data-absent-reason` sur les éléments obligatoires du profil [FRAllergyIntoleranceDocument](StructureDefinition-fr-allergie-intolerance-document.html) lorsque la valeur est inconnue ou temporairement indisponible.
281
+
> - L'instance [example-procedure-data-absent-reason](Procedure-example-procedure-data-absent-reason.html) illustre les deux cas de figure sur le profil [FRProcedureDocument](StructureDefinition-fr-procedure-document.html) :
282
+
> -**`extension data-absent-reason`** pour les données codées à partir d'un codeSystem/valueSet non obligatoire (`example`, `preferred` ou `extensible`) : éléments `code`, `performedDateTime`
283
+
> -**`code d'exception natif`** du ValueSet `event-status`(`unknown`) pour les données codées à partir d'un codeSystem/valueSet obligatoire (`required`) : élément `status`
284
+
285
+
155
286
### Conformité des documents FHIR
156
287
157
288
Les documents au format FHIR définis dans le CI-SIS doivent être conformes :
0 commit comments