From 2e1c307b2db8065cccea5a8b8ba14764438cf06a Mon Sep 17 00:00:00 2001 From: root Date: Thu, 7 Sep 2023 18:58:34 +0000 Subject: [PATCH] fix errors --- input/fsh/bundle.fsh | 2 +- input/fsh/composition.fsh | 2 +- input/fsh/ddcc-valuesets.fsh | 180 ++++++++++++++++----------------- input/fsh/immunization.fsh | 12 +-- input/fsh/minimal-provide-document.fsh | 2 +- input/fsh/organization.fsh | 2 +- input/fsh/patient.fsh | 15 +-- 7 files changed, 105 insertions(+), 110 deletions(-) diff --git a/input/fsh/bundle.fsh b/input/fsh/bundle.fsh index 09280d4..26120a3 100644 --- a/input/fsh/bundle.fsh +++ b/input/fsh/bundle.fsh @@ -3,7 +3,7 @@ Parent: http://hl7.org/fhir/uv/ips/StructureDefinition/Bundle-uv-ips Id: lac-bundle Description: "LACPass Patient Summary Bundle resource. This profile derives from the [International Patient summary](https://build.fhir.org/ig/HL7/fhir-ips/) with customizations for the entries to use the profiles defined in this implementation guide." -* ^url = "https://lacpass.racsel.org/fhir/StructureDefinition/lac-bundle" +* ^url = "https://lacpass.racsel.org/StructureDefinition/lac-bundle" // Make use of Composition * entry[composition].resource 1..1 diff --git a/input/fsh/composition.fsh b/input/fsh/composition.fsh index ba815f5..6f5fcf6 100644 --- a/input/fsh/composition.fsh +++ b/input/fsh/composition.fsh @@ -3,7 +3,7 @@ Parent: http://hl7.org/fhir/uv/ips/StructureDefinition/Composition-uv-ips Id: lac-composition Description: "LACPass Patient Summary Composition resource. This profile derives from the [International Patient summary](https://build.fhir.org/ig/HL7/fhir-ips/) with customizations for the entries to use the profiles defined in this implementation guide." -* ^url = "https://lacpass.racsel.org/fhir/StructureDefinition/lac-compositioin" +* ^url = "https://lacpass.racsel.org/StructureDefinition/lac-compositioin" // Make use of LAC Patient, LAC Immunization and LAC Organization * subject 1..1 MS diff --git a/input/fsh/ddcc-valuesets.fsh b/input/fsh/ddcc-valuesets.fsh index dc69582..b6eacbb 100644 --- a/input/fsh/ddcc-valuesets.fsh +++ b/input/fsh/ddcc-valuesets.fsh @@ -4,112 +4,112 @@ Alias: $ICD11 = http://id.who.int/icd11/mms Alias: $LOINC = http://loinc.org Alias: SCT = http://snomed.info/sct Alias: $CVX = http://hl7.org/fhir/sid/cvx -Alias: $DIVOC = http://worldhealthorganization.github.io/ddcc/DIVOC +// Alias: $DIVOC = http://worldhealthorganization.github.io/ddcc/DIVOC Alias: $EUDCC = https://ec.europa.eu/health/documents/community-register/html/ -Alias: $ICAOV1 = http://worldhealthorganization.github.io/ddcc/ICAOV1 +// Alias: $ICAOV1 = http://worldhealthorganization.github.io/ddcc/ICAOV1 // CODE SYSTEMS -CodeSystem: DDCC_ICD11_CodeSystem -Id: DDCC-ICD11-CodeSystem -Title: "DDCC Codes for ICD11" -Description: "ICD11 codes for DDCC so the FHIR server can perform expansions." -* ^experimental = false -* ^caseSensitive = true -* ^url = $ICD11 -* #RA01 "COVID-19 Disease" +// CodeSystem: DDCC_ICD11_CodeSystem +// Id: DDCC-ICD11-CodeSystem +// Title: "DDCC Codes for ICD11" +// Description: "ICD11 codes for DDCC so the FHIR server can perform expansions." +// * ^experimental = false +// * ^caseSensitive = true +// * ^url = $ICD11 +// * #RA01 "COVID-19 Disease" -* #XM68M6 "COVID-19 vaccines" +// * #XM68M6 "COVID-19 vaccines" -* #XM1NL1 "COVID-19 vaccine, inactivated virus" -* #XM7HT3 "CoronaVac®" -* #XM8866 "BBIBP-CorV" -* #XM9TQ1 "KCONVAC" -* #XM1G90 "Covaxin" -* #XM85P5 "Covi-Vac" -* #XM9FQ7 "Hayat-Vax" -* #XM97N6 "QazVac" -* #XM2YG8 "COVIran Barakat" -* #XM3U61 "Inactivated SARS-CoV-2 vaccine" +// * #XM1NL1 "COVID-19 vaccine, inactivated virus" +// * #XM7HT3 "CoronaVac®" +// * #XM8866 "BBIBP-CorV" +// * #XM9TQ1 "KCONVAC" +// * #XM1G90 "Covaxin" +// * #XM85P5 "Covi-Vac" +// * #XM9FQ7 "Hayat-Vax" +// * #XM97N6 "QazVac" +// * #XM2YG8 "COVIran Barakat" +// * #XM3U61 "Inactivated SARS-CoV-2 vaccine" -* #XM5DF6 "COVID-19 vaccine, live attenuated virus" +// * #XM5DF6 "COVID-19 vaccine, live attenuated virus" -* #XM9QW8 "COVID-19 vaccine, non-replicating viral vector" -* #XM4YL8 "COVID-19 Vaccine AstraZeneca" -* #XM97T2 "Covishield®" -* #XM6QV1 "COVID-19 Vaccine Janssen" -* #XM1AG7 "Convidecia" -* #XM5ZJ4 "Gam-Covid-Vac" -* #XM5QM6 "Sputnik-Light" +// * #XM9QW8 "COVID-19 vaccine, non-replicating viral vector" +// * #XM4YL8 "COVID-19 Vaccine AstraZeneca" +// * #XM97T2 "Covishield®" +// * #XM6QV1 "COVID-19 Vaccine Janssen" +// * #XM1AG7 "Convidecia" +// * #XM5ZJ4 "Gam-Covid-Vac" +// * #XM5QM6 "Sputnik-Light" -* #XM0CX4 "COVID-19 vaccine, replicating viral vector" +// * #XM0CX4 "COVID-19 vaccine, replicating viral vector" -* #XM5JC5 "COVID-19 vaccine, virus protein subunit" -* #XM3CT4 "Recombinant SARS-CoV-2 vaccine" -* #XM3PG0 "Soberana-02" -* #XM4EC8 "MVC-COV1901" -* #XM6SZ8 "EpiVacCorona" +// * #XM5JC5 "COVID-19 vaccine, virus protein subunit" +// * #XM3CT4 "Recombinant SARS-CoV-2 vaccine" +// * #XM3PG0 "Soberana-02" +// * #XM4EC8 "MVC-COV1901" +// * #XM6SZ8 "EpiVacCorona" -* #XM6AT1 "COVID-19 vaccine, DNA based" -* #XM52P3 "ZyCov-D" +// * #XM6AT1 "COVID-19 vaccine, DNA based" +// * #XM52P3 "ZyCov-D" -* #XM0GQ8 "COVID-19 vaccine, RNA based" -* #XM8NQ0 "Comirnaty®" -* #XM3DT5 "COVID-19 Vaccine Moderna" +// * #XM0GQ8 "COVID-19 vaccine, RNA based" +// * #XM8NQ0 "Comirnaty®" +// * #XM3DT5 "COVID-19 Vaccine Moderna" -* #XN109 "SARS-CoV-2" -* #XN0HL "SARS-CoV-2 Alpha" -* #XN4Q7 "SARS-CoV-2 Beta" -* #XN5BQ "SARS-CoV-2 Gamma" -* #XN8V6 "SARS-CoV-2 Delta" -* #XN1GK "SARS-CoV-2 Epsilon" -* #XN3ZE "SARS-CoV-2 Zeta" -* #XN2V4 "SARS-CoV-2 Eta" -* #XN4Q1 "SARS-CoV-2 Theta" -* #XN3UD "SARS-CoV-2 Iota" -* #XN9L8 "SARS-CoV-2 Kappa" -* #XN6AM "SARS-CoV-2 Lambda" -* #XN39J "SARS-CoV-2 Mu" -* #XN161 "SARS-CoV-2 Omicron" +// * #XN109 "SARS-CoV-2" +// * #XN0HL "SARS-CoV-2 Alpha" +// * #XN4Q7 "SARS-CoV-2 Beta" +// * #XN5BQ "SARS-CoV-2 Gamma" +// * #XN8V6 "SARS-CoV-2 Delta" +// * #XN1GK "SARS-CoV-2 Epsilon" +// * #XN3ZE "SARS-CoV-2 Zeta" +// * #XN2V4 "SARS-CoV-2 Eta" +// * #XN4Q1 "SARS-CoV-2 Theta" +// * #XN3UD "SARS-CoV-2 Iota" +// * #XN9L8 "SARS-CoV-2 Kappa" +// * #XN6AM "SARS-CoV-2 Lambda" +// * #XN39J "SARS-CoV-2 Mu" +// * #XN161 "SARS-CoV-2 Omicron" -* #MG71 "Abnormal laboratory results, not elsewhere classified" -* #RA01.0 "COVID-19, virus identified" -* #RA01.1 "COVID-19, virus not identified" -* #QA02 "Medical observation or evaluation for suspected diseases or conditions, ruled out" -* #XM1AU2 "Sinopharm WIBP-CorV" -* #XM1J92 "COVID-19 vaccine, virus like particle" -* #XM3SK8 "EpiVacCorona-N" -* #XM9N08 "Razi COV PARS" -* #XM9P21 "SpikoGen" -* #XM9T65 "Novavax COVID-19 vaccine" -* #XM0K39 "Covidful" -* #XM0RV9 "Soberana Plus" +// * #MG71 "Abnormal laboratory results, not elsewhere classified" +// * #RA01.0 "COVID-19, virus identified" +// * #RA01.1 "COVID-19, virus not identified" +// * #QA02 "Medical observation or evaluation for suspected diseases or conditions, ruled out" +// * #XM1AU2 "Sinopharm WIBP-CorV" +// * #XM1J92 "COVID-19 vaccine, virus like particle" +// * #XM3SK8 "EpiVacCorona-N" +// * #XM9N08 "Razi COV PARS" +// * #XM9P21 "SpikoGen" +// * #XM9T65 "Novavax COVID-19 vaccine" +// * #XM0K39 "Covidful" +// * #XM0RV9 "Soberana Plus" -* #XM3418 "Yellow fever, live attenuated" -* #XM28X5 "Measles vaccines" -* #XM8L15 "Measles, live attenuated" -* #XM9439 "Measles, combinations with mumps, live attenuated" -* #XM8TF3 "Measles, combinations with mumps and rubella, live attenuated" -* #XM21H2 "Measles, combinations with rubella, live attenuated" -* #XM4AJ8 "Measles, combinations with mumps, rubella and varicella, live attenuated" -* #XM0N50 "Poliomyelitis vaccines" -* #XM0VX8 "Poliomyelitis oral, monovalent live attenuated" -* #XM0KZ1 "Poliomyelitis oral, trivalent, live attenuated" -* #XM79H3 "Poliomyelitis oral, bivalent, live attenuated" +// * #XM3418 "Yellow fever, live attenuated" +// * #XM28X5 "Measles vaccines" +// * #XM8L15 "Measles, live attenuated" +// * #XM9439 "Measles, combinations with mumps, live attenuated" +// * #XM8TF3 "Measles, combinations with mumps and rubella, live attenuated" +// * #XM21H2 "Measles, combinations with rubella, live attenuated" +// * #XM4AJ8 "Measles, combinations with mumps, rubella and varicella, live attenuated" +// * #XM0N50 "Poliomyelitis vaccines" +// * #XM0VX8 "Poliomyelitis oral, monovalent live attenuated" +// * #XM0KZ1 "Poliomyelitis oral, trivalent, live attenuated" +// * #XM79H3 "Poliomyelitis oral, bivalent, live attenuated" -* #1D47 "Yellow fever" -* #1F03 "Measles" -* #1F03.0 "Measles without complication" -* #1F03.1 "Measles complicated by encephalitis" -* #1F03.2 "Measles complicated by meningitis" -* #1F03.Y "Measles with other complications" -* #1C81 "Acute poliomyelitis" +// * #1D47 "Yellow fever" +// * #1F03 "Measles" +// * #1F03.0 "Measles without complication" +// * #1F03.1 "Measles complicated by encephalitis" +// * #1F03.2 "Measles complicated by meningitis" +// * #1F03.Y "Measles with other complications" +// * #1C81 "Acute poliomyelitis" -* #XN9S3 "Yellow fever virus" -* #XN186 "Measles virus" -* #XN3M0 "Poliovirus" -* #XN6KZ "Wild poliovirus type 1" -* #XN9CF "Wild poliovirus type 2" -* #XN97R "Wild poliovirus type 3" +// * #XN9S3 "Yellow fever virus" +// * #XN186 "Measles virus" +// * #XN3M0 "Poliovirus" +// * #XN6KZ "Wild poliovirus type 1" +// * #XN9CF "Wild poliovirus type 2" +// * #XN97R "Wild poliovirus type 3" // CodeSystem: DDCC_SNOMED_CodeSystem diff --git a/input/fsh/immunization.fsh b/input/fsh/immunization.fsh index 218b3ae..09849c1 100644 --- a/input/fsh/immunization.fsh +++ b/input/fsh/immunization.fsh @@ -3,7 +3,7 @@ Parent: http://hl7.org/fhir/uv/ips/StructureDefinition/Immunization-uv-ips Id: lac-immunization Description: "LACPass Patient Summary Immunization resource. This profile derives from the [DDCC Immunization](https://worldhealthorganization.github.io/ddcc/) with different contraints to include other pathologies." -* ^url = "https://lacpass.racsel.org/fhir/StructureDefinition/lac-immunization" +* ^url = "https://lacpass.racsel.org/StructureDefinition/lac-immunization" * extension contains DDCCEventBrand named vaccineBrand 1..1 MS and DDCCVaccineMarketAuthorization named vaccineMarketAuthorization 0..1 MS @@ -69,12 +69,12 @@ Description: "LACPass Patient Summary Immunization resource. This profile derive Instance: LACImmunizationExample InstanceOf: LAC_Immunization Usage: #example -* meta.profile = "https://lacpass.racsel.org/fhir/StructureDefinition/lac-immunization" -* extension[vaccineBrand].url = "http://lacpass.racsel.org/StructureDefinition/DDCCEventBrand" -* extension[vaccineBrand].valueCoding = $DDCC-Example-Test-CodeSystem#XM4YL8 -* extension[vaccineMarketAuthorization].url = "http://lacpass.racsel.org/StructureDefinition/DDCCVaccineMarketAuthorization" +* meta.profile = "https://lacpass.racsel.org/StructureDefinition/lac-immunization" +* extension[vaccineBrand].url = "https://lacpass.racsel.org/StructureDefinition/DDCCEventBrand" +* extension[vaccineBrand].valueCoding = $ICD11#XM4YL8 +* extension[vaccineMarketAuthorization].url = "https://lacpass.racsel.org/StructureDefinition/DDCCVaccineMarketAuthorization" * extension[vaccineMarketAuthorization].valueCoding = $DDCC-Example-Test-CodeSystem#TEST -* extension[country].url = "http://lacpass.racsel.org/StructureDefinition/DDCCCountryOfEvent" +* extension[country].url = "https://lacpass.racsel.org/StructureDefinition/DDCCCountryOfEvent" * extension[country].valueCode = #CL * status = #completed * vaccineCode = $mms#XM9QW8 "COVID-19 vaccine, non-replicating viral vector" diff --git a/input/fsh/minimal-provide-document.fsh b/input/fsh/minimal-provide-document.fsh index 937454a..a1017dc 100644 --- a/input/fsh/minimal-provide-document.fsh +++ b/input/fsh/minimal-provide-document.fsh @@ -3,7 +3,7 @@ Parent: https://profiles.ihe.net/ITI/MHD/StructureDefinition/IHE.MHD.Minimal.Pro Id: lac-provide-document Description: "LACPass ITI-65 Minimal Provide Document Transaction. This profile derives from the [MHD ITI-65 Minimal Provde Document](https://profiles.ihe.net/ITI/MHD/StructureDefinition-IHE.MHD.Minimal.ProvideBundle.html) profile with customizations to use the profiles defined in this implementation guide." -* ^url = "https://lacpass.racsel.org/fhir/StructureDefinition/lac-provide-document" +* ^url = "https://lacpass.racsel.org/StructureDefinition/lac-provide-document" // Make use of LAC Bundle and LAC Patient // * entry[FhirDocuments] 1..1 diff --git a/input/fsh/organization.fsh b/input/fsh/organization.fsh index 68c0b87..7ad7a12 100644 --- a/input/fsh/organization.fsh +++ b/input/fsh/organization.fsh @@ -3,7 +3,7 @@ Parent: http://hl7.org/fhir/uv/ips/StructureDefinition/Organization-uv-ips Id: lac-organization Description: "LACPass Patient Summary Organization resource. This profile derives from the [International Patient summary](https://build.fhir.org/ig/HL7/fhir-ips/) with more contraints for the identification of the country of the organization." -* ^url = "https://lacpass.racsel.org/fhir/StructureDefinition/lac-organization" +* ^url = "https://lacpass.racsel.org/StructureDefinition/lac-organization" // Make organization address country required * address 1..1 diff --git a/input/fsh/patient.fsh b/input/fsh/patient.fsh index 9e84d33..6480bc9 100644 --- a/input/fsh/patient.fsh +++ b/input/fsh/patient.fsh @@ -5,11 +5,11 @@ Parent: http://hl7.org/fhir/uv/ips/StructureDefinition/Patient-uv-ips Id: lac-patient Description: "LACPass Patient Summary Patient resource. This profile derives from the [International Patient summary](https://build.fhir.org/ig/HL7/fhir-ips/) with more contraints for the identification of the patients." -* ^url = "https://lacpass.racsel.org/fhir/StructureDefinition/lac-patient" +* ^url = "https://lacpass.racsel.org/StructureDefinition/lac-patient" // identifier slice for nhi * identifier ^slicing.discriminator.type = #value -* identifier ^slicing.discriminator.path = "system" +* identifier ^slicing.discriminator.path = "type" * identifier ^slicing.rules = #open * identifier ^slicing.description = "Patient identifier" @@ -26,10 +26,7 @@ Description: "LACPass Patient Summary Patient resource. This profile derives fro * identifier[international].use = #official (exactly) * identifier[international].use ^short = "fixed to official" * identifier[international].type 1..1 -* identifier[international].type.coding.system 1..1 -* identifier[international].type.coding.system = "http://terminology.hl7.org/CodeSystem/v2-0203" (exactly) -* identifier[international].type.coding.code = #PPN (exactly) -* identifier[international].type.coding.code ^short = "fixed to PPN (Passport number)" +* identifier[international].type = $v2-0203#PPN (exactly) * identifier[international].type ^short = "Passport number" // details of national slice @@ -37,9 +34,7 @@ Description: "LACPass Patient Summary Patient resource. This profile derives fro * identifier[national].system 1..1 * identifier[national].system ^short = "URN OID for the country (ISO-3306 numeric)" * identifier[national].type 1..1 -* identifier[national].type.coding.code 1..1 -* identifier[national].type.coding.system 1..1 -* identifier[national].type.coding.system = "http://terminology.hl7.org/CodeSystem/v2-0203" (exactly) +* identifier[national].type from $v2-0203 // * identifier[national].type.coding.code = "PPN" (exactly) * identifier[national].type ^short = "Any type except PPN (Passport number)" @@ -50,7 +45,7 @@ Description: "LACPass Patient Summary Patient resource. This profile derives fro // invariant for lac-pat-1 rule Invariant: lac-pat-1 -Expression: "Patient.identifier.where(use='official').count() == 1" +Expression: "Patient.identifier.where(use='official').count() >= 1" Severity: #error Description: "A patient can only have a single official identifier"