Skip to content

Commit

Permalink
Création des ressources FSH
Browse files Browse the repository at this point in the history
  • Loading branch information
souadbenmustapha committed Dec 20, 2024
1 parent 827349d commit fd18305
Show file tree
Hide file tree
Showing 24 changed files with 232 additions and 4 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ temp*
template*
output*
local-template*
node_modules*

# Ignore large files and frequently changed files in input-cache #
##################################################################
Expand Down
28 changes: 28 additions & 0 deletions input/fsh/Resources/AssignedAuthor.fsh
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
// StructureDefinition for Author
Profile: AssignedAuthor
Parent: http://hl7.org/cda/stds/core/StructureDefinition/AssignedAuthor
Id: AssignedAuthor
Title: "assignedAuthor"
Description: "assignedAuthor contient les éléments permettant de décrire l’auteur."
* ^status = #draft

// interdire le nullFlavor dans assignedAuthor
* nullFlavor 0..0


* typeId.nullFlavor 0..0 // Interdit l’attribut @nullFlavor dans typeId
* typeId.assigningAuthorityName 0..0 // Interdit l’attribut @assigningAuthorityName dans typeId
* typeId.displayable 0..0 // Interdit l’attribut @displayable dans typeId
* classCode 0..0
* sdtcIdentifiedBy 0..0

// interdire le nullFlavor dans assignedAuthor.id
* id.nullFlavor 0..0
/* Invariant: invariant-nullFlavor-forbidden-assignedAuthorId
Description: "nullFlavor must not be present in assignedAuthor.id."
Severity: error
Expression: "id.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/nullFlavor').exists().not()"
*/


* code from https://mos.esante.gouv.fr/NOS/JDV_J01-XdsAuthorSpecialty-CISIS/ (required)
7 changes: 7 additions & 0 deletions input/fsh/Resources/AssignedCustodian.fsh
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
// StructureDefinition for AssignedCustodian
Profile: AssignedCustodian
Parent: http://hl7.org/cda/stds/core/StructureDefinition/AssignedCustodian
Id: AssignedCustodian
Title: "assignedCustodian"
Description: "assignedCustodian, contient l’élément representedCustodianOrganization caractérisant la structure conservant le document."
* ^status = #draft
7 changes: 7 additions & 0 deletions input/fsh/Resources/AssignedEntity.fsh
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
// StructureDefinition for AssignedEntity
Profile: AssignedEntity
Parent: http://hl7.org/cda/stds/core/StructureDefinition/AssignedEntity
Id: AssignedEntity
Title: "assignedEntity"
Description: "AssignedEntity est utilisé dans les éléments suivants : dataEnterer, informant, legalAuthenticator, authenticator, performer, responsibleParty et encounterParticipant."
* ^status = #draft
7 changes: 7 additions & 0 deletions input/fsh/Resources/AssociatedEntity.fsh
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
// StructureDefinition for AssociatedEntity
Profile: AssociatedEntity
Parent: http://hl7.org/cda/stds/core/StructureDefinition/AssociatedEntity
Id: AssociatedEntity
Title: "associatedEntity"
Description: "AssociatedEntity représente les caractéristiques du professionnel et/ou de l'établissement participant."
* ^status = #draft
7 changes: 7 additions & 0 deletions input/fsh/Resources/Authenticator.fsh
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
// StructureDefinition for Authenticator
Profile: Authenticator
Parent: http://hl7.org/cda/stds/core/StructureDefinition/Authenticator
Id: Authenticator
Title: "authenticator"
Description: "Authenticator, professionnel (personne physique) attestant la validité du contenu du document."
* ^status = #draft
17 changes: 16 additions & 1 deletion input/fsh/Resources/Author.fsh
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,21 @@
Profile: Author
Parent: http://hl7.org/cda/stds/core/StructureDefinition/Author
Id: Author
Title: "Author"
Title: "author"
Description: "author permet d’enregistrer un auteur du document."
* ^status = #draft
* nullFlavor 0..0 // Interdit l’attribut @nullFlavor
* typeId.nullFlavor 0..0 // Interdit l’attribut @nullFlavor dans typeId
* typeId.assigningAuthorityName 0..0 // Interdit l’attribut @assigningAuthorityName dans typeId
* typeId.displayable 0..0 // Interdit l’attribut @displayable dans typeId
* typeCode 0..0 // Interdit l’attribut @typeCode
* contextControlCode 0..0 // Interdit l’attribut @contextControlCode
* functionCode.code from https://mos.esante.gouv.fr/NOS/JDV_J47-FunctionCode-CISIS (required)
* functionCode.nullFlavor 0..0 // Interdit l’attribut @nullFlavor dans functionCode
* functionCode.code 1..1 // Rendre le code en obligatoire si functionCode existe
* functionCode.codeSystem 1..1 // Rendre le codeSystem en obligatoire si functionCode existe
* functionCode.codeSystemVersion 0..0 // Interdit l’attribut @codeSystemVersion dans functionCode
* functionCode.sdtcValueSet 0..0 // Interdit l’attribut @sdtcValueSet dans functionCode
* functionCode.sdtcValueSetVersion 0..0 // Interdit l’attribut @sdtcValueSetVersion dans functionCode
* time.value 1..1
//* assignedAuthor only Reference(AssignedAuthor) // Déclare une référence obligatoire vers AssignedAuthor
8 changes: 8 additions & 0 deletions input/fsh/Resources/Authorization.fsh
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
// StructureDefinition for Authorization
Profile: Authorization
Parent: http://hl7.org/cda/stds/core/StructureDefinition/Authorization
Id: Authorization
Title: "authorization"
Description: "Authorization, permet de documenter qu'un consentement éclairé a été obtenu et d'indiquer quel type de
consentement a été fourni."
* ^status = #draft
7 changes: 7 additions & 0 deletions input/fsh/Resources/ComponentOf.fsh
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
// StructureDefinition for ComponentOf
Profile: ComponentOf
Parent: http://hl7.org/cda/stds/core/StructureDefinition/ComponentOf
Id: ComponentOf
Title: "componentOf"
Description: "componentOf permet d'associer le document à une prise en charge du patient/usager. "
* ^status = #draft
7 changes: 7 additions & 0 deletions input/fsh/Resources/Custodian.fsh
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
// StructureDefinition for Custodian
Profile: Custodian
Parent: http://hl7.org/cda/stds/core/StructureDefinition/Custodian
Id: Custodian
Title: "custodian"
Description: "Structure chargée de la conservation du document."
* ^status = #draft
8 changes: 8 additions & 0 deletions input/fsh/Resources/DataEnterer.fsh
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
// StructureDefinition for DataEnterer
Profile: DataEnterer
Parent: http://hl7.org/cda/stds/core/StructureDefinition/DataEnterer
Id: DataEnterer
Title: "dataEnterer"
Description: "DataEnterer contient les informations relatives à l’opérateur de saisie de tout ou partie du contenu du
document."
* ^status = #draft
9 changes: 9 additions & 0 deletions input/fsh/Resources/DocumentationOf.fsh
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
// StructureDefinition for DocumentationOf
Profile: DocumentationOf
Parent: http://hl7.org/cda/stds/core/StructureDefinition/DocumentationOf
Id: DocumentationOf
Title: "documentationOf"
Description: "DocumentationOf représente un évènement (acte, traitement, diagnostic, etc…) décrit dans le document.
Il y a au minimum une occurrence de cet élément pour décrire l'évènement principal avec obligatoirement une
date de début et un exécutant."
* ^status = #draft
7 changes: 7 additions & 0 deletions input/fsh/Resources/InFulfillmentOf.fsh
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
// StructureDefinition for InFulfillmentOf
Profile: InFulfillmentOf
Parent: http://hl7.org/cda/stds/core/StructureDefinition/InFulfillmentOf
Id: InFulfillmentOf
Title: "inFulfillmentOf"
Description: "​InFulfillmentOf permet d'Associer un document à une prescription ."
* ^status = #draft
7 changes: 7 additions & 0 deletions input/fsh/Resources/Informant.fsh
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
// StructureDefinition for Informant
Profile: Informant
Parent: http://hl7.org/cda/stds/core/StructureDefinition/Informant
Id: Informant
Title: "informant"
Description: "Informateur / personne de confiance / personne à prévenir en cas d’urgence / aidant / personne aidée."
* ^status = #draft
7 changes: 7 additions & 0 deletions input/fsh/Resources/InformationRecipient.fsh
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
// StructureDefinition for InformationRecipient
Profile: InformationRecipient
Parent: http://hl7.org/cda/stds/core/StructureDefinition/InformationRecipient
Id: InformationRecipient
Title: "informationRecipient"
Description: "InformationRecipient permet d'enregistrer une personne déclarée comme destinataire prévu du document."
* ^status = #draft
7 changes: 7 additions & 0 deletions input/fsh/Resources/LegalAuthenticator.fsh
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
// StructureDefinition for legalAuthenticator
Profile: LegalAuthenticator
Parent: http://hl7.org/cda/stds/core/StructureDefinition/LegalAuthenticator
Id: LegalAuthenticator
Title: "legalAuthenticator"
Description: "LegalAuthenticator représente les caractéristiques du professionnel et/ou de l'établissement participant."
* ^status = #draft
7 changes: 7 additions & 0 deletions input/fsh/Resources/Participant.fsh
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
// StructureDefinition for Participant
Profile: Participant
Parent: http://hl7.org/cda/stds/core/StructureDefinition/Participant1
Id: Participant
Title: "participant"
Description: "participant représente toute personne/structure impliquée dans les évènements décrits par le document qui n’a pas été mentionné ailleurs."
* ^status = #draft
7 changes: 7 additions & 0 deletions input/fsh/Resources/Performer.fsh
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
// StructureDefinition for Performer
Profile: Performer
Parent: http://hl7.org/cda/stds/core/StructureDefinition/Performer1
Id: Performer
Title: "performer"
Description: "Performer est l'exécutant de l’évènement documenté. Il est obligatoire et son attribut nullFlavor interdit pour l’évènement documenté principal."
* ^status = #draft
7 changes: 7 additions & 0 deletions input/fsh/Resources/RecordTarget.fsh
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
// StructureDefinition for RecordTarget
Profile: RecordTarget
Parent: http://hl7.org/cda/stds/core/StructureDefinition/RecordTarget
Id: RecordTarget
Title: "recordTarget"
Description: "Patient/Usager concerné par le document."
* ^status = #draft
7 changes: 7 additions & 0 deletions input/fsh/Resources/RelatedDocument.fsh
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
// StructureDefinition for RelatedDocument
Profile: RelatedDocument
Parent: http://hl7.org/cda/stds/core/StructureDefinition/RelatedDocument
Id: RelatedDocument
Title: "relatedDocument"
Description: "RelatedDocument référence un document existant (à remplacer ou transformé)."
* ^status = #draft
8 changes: 8 additions & 0 deletions input/fsh/Resources/RelatedEntity.fsh
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
// StructureDefinition for RelatedEntity
Profile: RelatedEntity
Parent: http://hl7.org/cda/stds/core/StructureDefinition/RelatedEntity
Id: RelatedEntity
Title: "relatedEntity"
Description: "RelatedEntity, permet de décrire : un informateur non professionnel / Personne de
confiance/personne à prévenir en cas d’urgence / aidant / personne aidée"
* ^status = #draft
9 changes: 9 additions & 0 deletions input/fsh/Resources/ServiceEvent.fsh
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
// StructureDefinition for ServiceEvent
Profile: ServiceEvent
Parent: http://hl7.org/cda/stds/core/StructureDefinition/ServiceEvent
Id: ServiceEvent
Title: "serviceEvent"
Description: "ServiceEvent représente un évènement (acte, traitement, diagnostic, etc…) décrit dans le document.
L'occurrence de documentationOf/serviceEvent contenant les données de l’évènement documenté principal
doit inclure un élément effectiveTime et un élément performer renseignés, sans recours à l'attribut nullFlavor."
* ^status = #draft
48 changes: 47 additions & 1 deletion input/pagecontent/ressourcesCDA.md
Original file line number Diff line number Diff line change
@@ -1 +1,47 @@
* [Author](StructureDefinition-Author.html)
<!-- * [RecordTarget](StructureDefinition-RecordTarget.html)
* [Author](StructureDefinition-Author.html)
* [AssignedAuthor](StructureDefinition-AssignedAuthor.html)
* [Participant](StructureDefinition-RecordTarget.html) -->
{% raw %}
<blockquote style="border-left: 5px solid #007BFF; padding: 10px; background-color: #F9F9F9; color: #333; font-style: italic;">
<p>
Ce guide de référence Structuration minimale des documents de santé décrit les éléments communs (en
tête CDA) aux documents de santé persistants partagés ou échangés dans le contexte français.
</p>
</blockquote>
{% endraw %}

<!-- Table stylisée pour une meilleure présentation -->
<table class="cda-table" style="width: 100%; border-collapse: collapse; margin: 20px 0; background-color: #FAFAFA; border: 1px solid #DDD;">
<tbody>
<tr>
<td style="padding: 20px;">
<!-- Liste stylisée avec colonnes et espace entre les éléments -->
<ul style="columns: 2; column-gap: 5em; list-style-type: none; padding: 0; margin: 0;">
<li style="margin: 10px 0;"><a href="StructureDefinition-AssignedEntity.html#tabs-snap" style="color: #007BFF; text-decoration: none;">assignedEntity</a></li>
<li style="margin: 10px 0;"><a href="StructureDefinition-AssociatedEntity.html#tabs-snap" style="color: #007BFF; text-decoration: none;">associatedEntity</a></li>
<li style="margin: 10px 0;"><a href="StructureDefinition-RecordTarget.html#tabs-snap" style="color: #007BFF; text-decoration: none;">recordTarget</a></li>
<li style="margin: 10px 0;"><a href="StructureDefinition-Author.html#tabs-snap" style="color: #007BFF; text-decoration: none;">author</a></li>
<li style="margin: 10px 0;"><a href="StructureDefinition-DataEnterer.html#tabs-snap" style="color: #007BFF; text-decoration: none;">dataEnterer</a></li>
<li style="margin: 10px 0;"><a href="StructureDefinition-AssignedAuthor.html#tabs-snap" style="color: #007BFF; text-decoration: none;">assignedAuthor</a></li>
<li style="margin: 10px 0;"><a href="StructureDefinition-Informant.html#tabs-snap" style="color: #007BFF; text-decoration: none;">informant</a></li>
<li style="margin: 10px 0;"><a href="StructureDefinition-RelatedEntity.html#tabs-snap" style="color: #007BFF; text-decoration: none;">relatedEntity</a></li>
<li style="margin: 10px 0;"><a href="StructureDefinition-Custodian.html" style="color: #007BFF; text-decoration: none;">custodian</a></li>
<li style="margin: 10px 0;"><a href="StructureDefinition-InformationRecipient.html#tabs-snap" style="color: #007BFF; text-decoration: none;">informationRecipient</a></li>
<li style="margin: 10px 0;"><a href="StructureDefinition-AssignedCustodian.html#tabs-snap" style="color: #007BFF; text-decoration: none;">assignedCustodian</a></li>
<li style="margin: 10px 0;"><a href="StructureDefinition-LegalAuthenticator.html#tabs-snap" style="color: #007BFF; text-decoration: none;">legalAuthenticator</a></li>
<li style="margin: 10px 0;"><a href="StructureDefinition-Participant.html#tabs-snap" style="color: #007BFF; text-decoration: none;">participant</a></li>
<li style="margin: 10px 0;"><a href="StructureDefinition-Authenticator.html#tabs-snap" style="color: #007BFF; text-decoration: none;">authenticator</a></li>
<li style="margin: 10px 0;"><a href="StructureDefinition-Authorization.html#tabs-snap" style="color: #007BFF; text-decoration: none;">authorization</a></li>
<li style="margin: 10px 0;"><a href="StructureDefinition-InFulfillmentOf.html#tabs-snap" style="color: #007BFF; text-decoration: none;">inFulfillmentOf</a></li>
<li style="margin: 10px 0;"><a href="StructureDefinition-DocumentationOf.html#tabs-snap" style="color: #007BFF; text-decoration: none;">documentationOf</a></li>
<!-- <li style="margin: 10px 0;"><a href="StructureDefinition-ServiceEvent.html#tabs-snap" style="color: #007BFF; text-decoration: none;">ServiceEvent</a></li> -->
<li style="margin: 10px 0;"><a href="StructureDefinition-Performer.html#tabs-snap" style="color: #007BFF; text-decoration: none;">performer</a></li>
<li style="margin: 10px 0;"><a href="StructureDefinition-RelatedDocument.html#tabs-snap" style="color: #007BFF; text-decoration: none;">relatedDocument</a></li>
<li style="margin: 10px 0;"><a href="StructureDefinition-ComponentOf.html#tabs-snap" style="color: #007BFF; text-decoration: none;">componentOf</a></li>
</ul>
</td>
</tr>
</tbody>
</table>

2 changes: 0 additions & 2 deletions sushi-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,6 @@ jurisdiction: urn:iso:std:iso:3166#FR "FRANCE"
parameters: #Parameters list - https://build.fhir.org/ig/FHIR/fhir-tools-ig/CodeSystem-ig-parameters.html
shownav: 'true'

FSHOnly: true

dependencies:
hl7.cda.uv.core: 2.0.0-sd

Expand Down

0 comments on commit fd18305

Please sign in to comment.