diff --git a/.gitignore b/.gitignore index a98b334..ca835e7 100644 --- a/.gitignore +++ b/.gitignore @@ -5,6 +5,7 @@ temp* template* output* local-template* +node_modules* # Ignore large files and frequently changed files in input-cache # ################################################################## diff --git a/input/fsh/Resources/AssignedAuthor.fsh b/input/fsh/Resources/AssignedAuthor.fsh new file mode 100644 index 0000000..ae4c9bd --- /dev/null +++ b/input/fsh/Resources/AssignedAuthor.fsh @@ -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) \ No newline at end of file diff --git a/input/fsh/Resources/AssignedCustodian.fsh b/input/fsh/Resources/AssignedCustodian.fsh new file mode 100644 index 0000000..1c0da47 --- /dev/null +++ b/input/fsh/Resources/AssignedCustodian.fsh @@ -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 \ No newline at end of file diff --git a/input/fsh/Resources/AssignedEntity.fsh b/input/fsh/Resources/AssignedEntity.fsh new file mode 100644 index 0000000..ee7735e --- /dev/null +++ b/input/fsh/Resources/AssignedEntity.fsh @@ -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 \ No newline at end of file diff --git a/input/fsh/Resources/AssociatedEntity.fsh b/input/fsh/Resources/AssociatedEntity.fsh new file mode 100644 index 0000000..4f9373d --- /dev/null +++ b/input/fsh/Resources/AssociatedEntity.fsh @@ -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 \ No newline at end of file diff --git a/input/fsh/Resources/Authenticator.fsh b/input/fsh/Resources/Authenticator.fsh new file mode 100644 index 0000000..350ed12 --- /dev/null +++ b/input/fsh/Resources/Authenticator.fsh @@ -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 \ No newline at end of file diff --git a/input/fsh/Resources/Author.fsh b/input/fsh/Resources/Author.fsh index 377963f..7e8fd61 100644 --- a/input/fsh/Resources/Author.fsh +++ b/input/fsh/Resources/Author.fsh @@ -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 \ No newline at end of file diff --git a/input/fsh/Resources/Authorization.fsh b/input/fsh/Resources/Authorization.fsh new file mode 100644 index 0000000..5ae86a2 --- /dev/null +++ b/input/fsh/Resources/Authorization.fsh @@ -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 \ No newline at end of file diff --git a/input/fsh/Resources/ComponentOf.fsh b/input/fsh/Resources/ComponentOf.fsh new file mode 100644 index 0000000..b1ccd74 --- /dev/null +++ b/input/fsh/Resources/ComponentOf.fsh @@ -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 \ No newline at end of file diff --git a/input/fsh/Resources/Custodian.fsh b/input/fsh/Resources/Custodian.fsh new file mode 100644 index 0000000..aaae8b8 --- /dev/null +++ b/input/fsh/Resources/Custodian.fsh @@ -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 \ No newline at end of file diff --git a/input/fsh/Resources/DataEnterer.fsh b/input/fsh/Resources/DataEnterer.fsh new file mode 100644 index 0000000..8903ed6 --- /dev/null +++ b/input/fsh/Resources/DataEnterer.fsh @@ -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 \ No newline at end of file diff --git a/input/fsh/Resources/DocumentationOf.fsh b/input/fsh/Resources/DocumentationOf.fsh new file mode 100644 index 0000000..7aca251 --- /dev/null +++ b/input/fsh/Resources/DocumentationOf.fsh @@ -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 \ No newline at end of file diff --git a/input/fsh/Resources/InFulfillmentOf.fsh b/input/fsh/Resources/InFulfillmentOf.fsh new file mode 100644 index 0000000..8f52317 --- /dev/null +++ b/input/fsh/Resources/InFulfillmentOf.fsh @@ -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 \ No newline at end of file diff --git a/input/fsh/Resources/Informant.fsh b/input/fsh/Resources/Informant.fsh new file mode 100644 index 0000000..c291313 --- /dev/null +++ b/input/fsh/Resources/Informant.fsh @@ -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 \ No newline at end of file diff --git a/input/fsh/Resources/InformationRecipient.fsh b/input/fsh/Resources/InformationRecipient.fsh new file mode 100644 index 0000000..3abeafe --- /dev/null +++ b/input/fsh/Resources/InformationRecipient.fsh @@ -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 \ No newline at end of file diff --git a/input/fsh/Resources/LegalAuthenticator.fsh b/input/fsh/Resources/LegalAuthenticator.fsh new file mode 100644 index 0000000..f8a12d0 --- /dev/null +++ b/input/fsh/Resources/LegalAuthenticator.fsh @@ -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 \ No newline at end of file diff --git a/input/fsh/Resources/Participant.fsh b/input/fsh/Resources/Participant.fsh new file mode 100644 index 0000000..b49d21c --- /dev/null +++ b/input/fsh/Resources/Participant.fsh @@ -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 \ No newline at end of file diff --git a/input/fsh/Resources/Performer.fsh b/input/fsh/Resources/Performer.fsh new file mode 100644 index 0000000..724030e --- /dev/null +++ b/input/fsh/Resources/Performer.fsh @@ -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 \ No newline at end of file diff --git a/input/fsh/Resources/RecordTarget.fsh b/input/fsh/Resources/RecordTarget.fsh new file mode 100644 index 0000000..9fa6581 --- /dev/null +++ b/input/fsh/Resources/RecordTarget.fsh @@ -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 \ No newline at end of file diff --git a/input/fsh/Resources/RelatedDocument.fsh b/input/fsh/Resources/RelatedDocument.fsh new file mode 100644 index 0000000..921b562 --- /dev/null +++ b/input/fsh/Resources/RelatedDocument.fsh @@ -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 \ No newline at end of file diff --git a/input/fsh/Resources/RelatedEntity.fsh b/input/fsh/Resources/RelatedEntity.fsh new file mode 100644 index 0000000..5f21c4b --- /dev/null +++ b/input/fsh/Resources/RelatedEntity.fsh @@ -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 \ No newline at end of file diff --git a/input/fsh/Resources/ServiceEvent.fsh b/input/fsh/Resources/ServiceEvent.fsh new file mode 100644 index 0000000..c5ab843 --- /dev/null +++ b/input/fsh/Resources/ServiceEvent.fsh @@ -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 \ No newline at end of file diff --git a/input/pagecontent/ressourcesCDA.md b/input/pagecontent/ressourcesCDA.md index 2e3b1cf..935222f 100644 --- a/input/pagecontent/ressourcesCDA.md +++ b/input/pagecontent/ressourcesCDA.md @@ -1 +1,47 @@ -* [Author](StructureDefinition-Author.html) \ No newline at end of file + +{% raw %} +
+

+ 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. +

+
+{% endraw %} + + + + + + + + +
+ + +
+ diff --git a/sushi-config.yaml b/sushi-config.yaml index 8aab9f7..ea372b6 100644 --- a/sushi-config.yaml +++ b/sushi-config.yaml @@ -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