From d45a77ba66271c806baf59a5114e9577bd487170 Mon Sep 17 00:00:00 2001 From: ritikarawlani <38657562+ritikarawlani@users.noreply.github.com> Date: Mon, 16 Sep 2024 13:18:28 +0530 Subject: [PATCH] update --- input/fsh/examples/DVCPayloadExample.fsh | 2 +- input/fsh/examples/ModelDVCExample.fsh | 2 +- input/fsh/models/DVCPayload.fsh | 5 ++--- input/fsh/models/ModelDVC.fsh | 8 +++++++- input/fsh/models/vaccineDetails.fsh | 6 ------ 5 files changed, 11 insertions(+), 12 deletions(-) diff --git a/input/fsh/examples/DVCPayloadExample.fsh b/input/fsh/examples/DVCPayloadExample.fsh index 57235dc75..01e295d77 100644 --- a/input/fsh/examples/DVCPayloadExample.fsh +++ b/input/fsh/examples/DVCPayloadExample.fsh @@ -8,7 +8,7 @@ Usage: #example * s = #female * ntl = #IND * v.dn = #FirstDose -* v.tg = #1f03 +* v.tg = #1F03 * v.vp = #XM28X5 * v.dt = "2024-01-23" * v.cn = "Dr. A" diff --git a/input/fsh/examples/ModelDVCExample.fsh b/input/fsh/examples/ModelDVCExample.fsh index b65817055..49505fef9 100644 --- a/input/fsh/examples/ModelDVCExample.fsh +++ b/input/fsh/examples/ModelDVCExample.fsh @@ -8,7 +8,7 @@ Usage: #example * sex = #female * nationality = #IND * vaccineDetails[0].disease.display = "Measles" -* vaccineDetails[=].disease.code = #1f03 +* vaccineDetails[=].disease.code = #1F03 * vaccineDetails[=].disease.system = "http://id.who.int/icd/release/11/mms" * vaccineDetails[=].vaccineClassification.coding.display = "Measles vaccines" * vaccineDetails[=].vaccineClassification.coding.code = #XM28X5 diff --git a/input/fsh/models/DVCPayload.fsh b/input/fsh/models/DVCPayload.fsh index 49de6d33c..53e1b31a5 100644 --- a/input/fsh/models/DVCPayload.fsh +++ b/input/fsh/models/DVCPayload.fsh @@ -26,10 +26,9 @@ Description: "Payload for Digital Vaccination Certificate - DVC CBOR Web Tok * vle 0..1 date "Certificate Validity periods end date" * cn 0..1 string "Name of supervising clinician" * is 0..1 id "Certificate issuer id (referenced organization)" - * is obeys mustHaveIsOrCn - * cn obeys mustHaveIsOrCn +* obeys mustHaveIsOrCn Invariant: mustHaveIsOrCn Description: "Either issuer or clinicianName must be present" -Expression: "is.exists() or cn.exists()" +Expression: "v.is.exists() or v.cn.exists()" Severity: #error diff --git a/input/fsh/models/ModelDVC.fsh b/input/fsh/models/ModelDVC.fsh index 9ebdb48f1..5c5f1de50 100644 --- a/input/fsh/models/ModelDVC.fsh +++ b/input/fsh/models/ModelDVC.fsh @@ -14,4 +14,10 @@ Description: "Data elements for Digital Vaccination Certificate." * nid 0..1 string "National Identification Document" "National Identification Document" * guardian 0..1 string "Parent/Guardian" "Name of Parent or Guardian" * issuer 0..1 Reference(Organization) "Document issuer" "Document issuer" -* vaccineDetails 1..* ModelVaccineDetails "Vaccine Details" "Vaccine Details" \ No newline at end of file +* vaccineDetails 1..* ModelVaccineDetails "Vaccine Details" "Vaccine Details" +* obeys mustHaveIssuerOrClinician + +Invariant: mustHaveIssuerOrClinician +Description: "Either issuer or clinicianName must be present" +Expression: "vaccineDetails.issuer.exists() or vaccineDetails.clinicianName.exists()" +Severity: #error diff --git a/input/fsh/models/vaccineDetails.fsh b/input/fsh/models/vaccineDetails.fsh index c4a350450..6b70d4c6b 100644 --- a/input/fsh/models/vaccineDetails.fsh +++ b/input/fsh/models/vaccineDetails.fsh @@ -21,10 +21,4 @@ Description: "Vaccine Data elements for the Digital Vaccination Certificates" * manufacturer 1..1 string "Name of Manufacturer of vaccine" "Name Manufacturer of vaccine" * batchNo 1..1 string "Batch No" "Batch No" * validityPeriod 0..1 Period "Certificate validity period" "Certificate validity period" -* issuer obeys mustHaveIssuerOrClinician -* clinicianName obeys mustHaveIssuerOrClinician -Invariant: mustHaveIssuerOrClinician -Description: "Either issuer or clinicianName must be present" -Expression: "issuer.exists() or clinicianName.exists()" -Severity: #error