From 22d3ed3831d1eb41f2668d9a4fb5bbb8734f0c50 Mon Sep 17 00:00:00 2001 From: Friederike Schneider Date: Wed, 25 Oct 2023 10:35:57 +0200 Subject: [PATCH 01/20] add r5 includedStructure definition --- input/fsh/bodystructure.fsh | 44 +++++++++++++++++++++++++++++++++---- 1 file changed, 40 insertions(+), 4 deletions(-) diff --git a/input/fsh/bodystructure.fsh b/input/fsh/bodystructure.fsh index 06256c82e..77655987c 100644 --- a/input/fsh/bodystructure.fsh +++ b/input/fsh/bodystructure.fsh @@ -14,10 +14,46 @@ Description: "Profile for the base definition of all body structures." * identifier[bodyStructureIdentifier].type.coding.system 1.. * identifier[bodyStructureIdentifier].type.coding.code 1.. * identifier[bodyStructureIdentifier].value 1.. -// * location 0..0 -// * locationQualifier 0..0 -* extension 0..* -* extension contains Diagnosis named diagnosis 0..* MS +* location 0..0 +* locationQualifier 0..0 +* extension 1..* +* extension contains Diagnosis named diagnosis 0..* MS and structure 1..* MS and laterality 0..* MS and landmarkDescription 0..* MS and clockFacePosition 0..* MS device 0..* MS an value 0..* MS and surfaceOrientation 0..* MS and spatialReference 0..* MS and qualifier 0..* MS and excludedstructure 1..* MS and excludedlaterality 0..* MS and excludedlandmarkDescription 0..* MS and excludedclockFacePosition 0..* MS excludeddevice 0..* MS and excludedvalue 0..* MS and excludedsurfaceOrientation 0..* MS and excludedspatialReference 0..* MS and excludedqualifier 0..* MS +* extension[structure].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.structure +* extension[structure].value[x] = only CodeableConcept +* extension[laterality].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.laterality +* extension[laterality].value[x] = only CodeableConcept +* extension[landmarkDescription].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.landmarkDescription +* extension[landmarkDescription].value[x] = only CodeableReference +* extension[clockFacePosition].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.clockFacePosition +* extension[clockFacePosition].value[x] = only CodeableReference +* extension[device].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.distanceFromLandmark.device +* extension[device].value[x] = only CodeableReference +* extension[value].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.distanceFromLandmark.value +* extension[value].value[x] = only Quantity +* extension[surfaceOrientation].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.surfaceOrientation +* extension[surfaceOrientation].value[x] = only surfaceOrientation +* extension[spatialReference].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.spatialReference +* extension[spatialReference].value[x] = only CodeableReference +* extension[qualifier].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.qualifier +* extension[qualifier].value[x] = only CodeableConcept +* extension[excludedstructre].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.structure +* extension[excludedstructure].value[x] = only CodeableConcept +* extension[excludedlaterality].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.laterality +* extension[excludedlaterality].value[x] = only CodeableConcept +* extension[excludedlandmarkDescription].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.landmarkDescription +* extension[excludedlandmarkDescription].value[x] = only CodeableReference +* extension[excludedclockFacePosition].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.clockFacePosition +* extension[excludedclockFacePosition].value[x] = only CodeableReference +* extension[excludeddevice].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.distanceFromLandmark.device +* extension[excludeddevice].value[x] = only CodeableReference +* extension[excludedvalue].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.distanceFromLandmark.value +* extension[excludedvalue].value[x] = only Quantity +* extension[excludedsurfaceOrientation].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.surfaceOrientation +* extension[excludedsurfaceOrientation].value[x] = only surfaceOrientation +* extension[excludedspatialReference].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.spatialReference +* extension[excludedspatialReference].value[x] = only CodeableReference +* extension[excludedqualifier].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.qualifier +* extension[excludedqualifier].value[x] = only CodeableConcept Extension: Diagnosis From 484d0c8eb613bb3264e2b12ac5813b6c80f9cabe Mon Sep 17 00:00:00 2001 From: Friederike Schneider Date: Wed, 25 Oct 2023 10:49:47 +0200 Subject: [PATCH 02/20] fix --- input/fsh/bodystructure.fsh | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/input/fsh/bodystructure.fsh b/input/fsh/bodystructure.fsh index 77655987c..074b6e6a6 100644 --- a/input/fsh/bodystructure.fsh +++ b/input/fsh/bodystructure.fsh @@ -17,7 +17,23 @@ Description: "Profile for the base definition of all body structures." * location 0..0 * locationQualifier 0..0 * extension 1..* -* extension contains Diagnosis named diagnosis 0..* MS and structure 1..* MS and laterality 0..* MS and landmarkDescription 0..* MS and clockFacePosition 0..* MS device 0..* MS an value 0..* MS and surfaceOrientation 0..* MS and spatialReference 0..* MS and qualifier 0..* MS and excludedstructure 1..* MS and excludedlaterality 0..* MS and excludedlandmarkDescription 0..* MS and excludedclockFacePosition 0..* MS excludeddevice 0..* MS and excludedvalue 0..* MS and excludedsurfaceOrientation 0..* MS and excludedspatialReference 0..* MS and excludedqualifier 0..* MS +* extension contains Diagnosis named diagnosis 0..* MS + and structure 1..* MS + and laterality 0..* MS + and landmarkDescription 0..* MS + and clockFacePosition 0..* MS device 0..* MS + and value 0..* MS and surfaceOrientation 0..* MS + and spatialReference 0..* MS + and qualifier 0..* MS + and excludedstructure 1..* MS + and excludedlaterality 0..* MS + and excludedlandmarkDescription 0..* MS + and excludedclockFacePosition 0..* MS + and excludeddevice 0..* MS + and excludedvalue 0..* MS + and excludedsurfaceOrientation 0..* MS + and excludedspatialReference 0..* MS + and excludedqualifier 0..* MS * extension[structure].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.structure * extension[structure].value[x] = only CodeableConcept * extension[laterality].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.laterality @@ -55,7 +71,6 @@ Description: "Profile for the base definition of all body structures." * extension[excludedqualifier].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.qualifier * extension[excludedqualifier].value[x] = only CodeableConcept - Extension: Diagnosis Id: diagnosis Title: "Diagnosis" From 657497dff3424d9bcdbb0d2756f07ffef2599cc1 Mon Sep 17 00:00:00 2001 From: Friederike Schneider Date: Wed, 25 Oct 2023 10:57:45 +0200 Subject: [PATCH 03/20] and befor device --- input/fsh/bodystructure.fsh | 36 +++++++++++++++++++----------------- 1 file changed, 19 insertions(+), 17 deletions(-) diff --git a/input/fsh/bodystructure.fsh b/input/fsh/bodystructure.fsh index 074b6e6a6..35b77e33b 100644 --- a/input/fsh/bodystructure.fsh +++ b/input/fsh/bodystructure.fsh @@ -18,22 +18,24 @@ Description: "Profile for the base definition of all body structures." * locationQualifier 0..0 * extension 1..* * extension contains Diagnosis named diagnosis 0..* MS - and structure 1..* MS - and laterality 0..* MS - and landmarkDescription 0..* MS - and clockFacePosition 0..* MS device 0..* MS - and value 0..* MS and surfaceOrientation 0..* MS - and spatialReference 0..* MS - and qualifier 0..* MS - and excludedstructure 1..* MS - and excludedlaterality 0..* MS - and excludedlandmarkDescription 0..* MS - and excludedclockFacePosition 0..* MS - and excludeddevice 0..* MS - and excludedvalue 0..* MS - and excludedsurfaceOrientation 0..* MS - and excludedspatialReference 0..* MS - and excludedqualifier 0..* MS + and structure 1..* MS + and laterality 0..* MS + and landmarkDescription 0..* MS + and clockFacePosition 0..* MS + and device 0..* MS + and value 0..* MS + and surfaceOrientation 0..* MS + and spatialReference 0..* MS + and qualifier 0..* MS + and excludedstructure 1..* MS + and excludedlaterality 0..* MS + and excludedlandmarkDescription 0..* MS + and excludedclockFacePosition 0..* MS + and excludeddevice 0..* MS + and excludedvalue 0..* MS + and excludedsurfaceOrientation 0..* MS + and excludedspatialReference 0..* MS + and excludedqualifier 0..* MS * extension[structure].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.structure * extension[structure].value[x] = only CodeableConcept * extension[laterality].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.laterality @@ -52,7 +54,7 @@ Description: "Profile for the base definition of all body structures." * extension[spatialReference].value[x] = only CodeableReference * extension[qualifier].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.qualifier * extension[qualifier].value[x] = only CodeableConcept -* extension[excludedstructre].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.structure +* extension[excludedstructure].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.structure * extension[excludedstructure].value[x] = only CodeableConcept * extension[excludedlaterality].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.laterality * extension[excludedlaterality].value[x] = only CodeableConcept From d7455959a9ada9b3f6b07c6801ea282c859d0e44 Mon Sep 17 00:00:00 2001 From: Friederike Schneider Date: Wed, 25 Oct 2023 11:10:49 +0200 Subject: [PATCH 04/20] try to fix --- input/fsh/bodystructure.fsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/input/fsh/bodystructure.fsh b/input/fsh/bodystructure.fsh index 35b77e33b..325eb4abc 100644 --- a/input/fsh/bodystructure.fsh +++ b/input/fsh/bodystructure.fsh @@ -18,7 +18,7 @@ Description: "Profile for the base definition of all body structures." * locationQualifier 0..0 * extension 1..* * extension contains Diagnosis named diagnosis 0..* MS - and structure 1..* MS + and Structure named structure 1..* MS and laterality 0..* MS and landmarkDescription 0..* MS and clockFacePosition 0..* MS From 6df95e505112f8305922072fd0c084bf9d101998 Mon Sep 17 00:00:00 2001 From: Friederike Schneider Date: Wed, 25 Oct 2023 11:17:23 +0200 Subject: [PATCH 05/20] anothe try --- input/fsh/bodystructure.fsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/input/fsh/bodystructure.fsh b/input/fsh/bodystructure.fsh index 325eb4abc..8262a4094 100644 --- a/input/fsh/bodystructure.fsh +++ b/input/fsh/bodystructure.fsh @@ -18,7 +18,7 @@ Description: "Profile for the base definition of all body structures." * locationQualifier 0..0 * extension 1..* * extension contains Diagnosis named diagnosis 0..* MS - and Structure named structure 1..* MS + and Extension named structure 1..* MS and laterality 0..* MS and landmarkDescription 0..* MS and clockFacePosition 0..* MS From 3463b404043f5b448da425b58b9a1d6ca18c3a2d Mon Sep 17 00:00:00 2001 From: Friederike Schneider Date: Wed, 25 Oct 2023 12:15:43 +0200 Subject: [PATCH 06/20] Define Extensions for Included & Excluded Structure --- input/fsh/bodystructure.fsh | 86 +++++++++++++++++++++++-------------- 1 file changed, 54 insertions(+), 32 deletions(-) diff --git a/input/fsh/bodystructure.fsh b/input/fsh/bodystructure.fsh index 8262a4094..aa6e8f223 100644 --- a/input/fsh/bodystructure.fsh +++ b/input/fsh/bodystructure.fsh @@ -11,14 +11,25 @@ Description: "Profile for the base definition of all body structures." bodyStructureIdentifier 1..1 * identifier[bodyStructureIdentifier].use = #usual * identifier[bodyStructureIdentifier].type = http://hl7.org/fhir/resource-types#BodyStructure -* identifier[bodyStructureIdentifier].type.coding.system 1.. -* identifier[bodyStructureIdentifier].type.coding.code 1.. -* identifier[bodyStructureIdentifier].value 1.. +* identifier[bodyStructureIdentifier].type.coding.system 1..* +* identifier[bodyStructureIdentifier].type.coding.code 1..* +* identifier[bodyStructureIdentifier].value 1..* * location 0..0 * locationQualifier 0..0 * extension 1..* -* extension contains Diagnosis named diagnosis 0..* MS - and Extension named structure 1..* MS +* extension contains Diagnosis named diagnosis 0..* MS and + IncludedStructure named includedStructure 1..* MS and + ExcludedStructure named encludedStructure 0..* MS and + + +Extention: IncludedStructure +Id: includedStructure +Title: "Included Structure" +Description: "Description of the included Structure of the Body Structure" +* url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure (exactly)" +* extension 1..* +* extension contains + and structure 1..* MS and laterality 0..* MS and landmarkDescription 0..* MS and clockFacePosition 0..* MS @@ -27,52 +38,63 @@ Description: "Profile for the base definition of all body structures." and surfaceOrientation 0..* MS and spatialReference 0..* MS and qualifier 0..* MS - and excludedstructure 1..* MS - and excludedlaterality 0..* MS - and excludedlandmarkDescription 0..* MS - and excludedclockFacePosition 0..* MS - and excludeddevice 0..* MS - and excludedvalue 0..* MS - and excludedsurfaceOrientation 0..* MS - and excludedspatialReference 0..* MS - and excludedqualifier 0..* MS -* extension[structure].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.structure +* extension[structure].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.structure" * extension[structure].value[x] = only CodeableConcept -* extension[laterality].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.laterality +* extension[laterality].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.laterality" * extension[laterality].value[x] = only CodeableConcept -* extension[landmarkDescription].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.landmarkDescription +* extension[landmarkDescription].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.landmarkDescription" * extension[landmarkDescription].value[x] = only CodeableReference -* extension[clockFacePosition].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.clockFacePosition +* extension[clockFacePosition].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.clockFacePosition" * extension[clockFacePosition].value[x] = only CodeableReference -* extension[device].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.distanceFromLandmark.device +* extension[device].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.distanceFromLandmark.device" * extension[device].value[x] = only CodeableReference -* extension[value].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.distanceFromLandmark.value +* extension[value].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.distanceFromLandmark.value" * extension[value].value[x] = only Quantity -* extension[surfaceOrientation].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.surfaceOrientation +* extension[surfaceOrientation].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.surfaceOrientation" * extension[surfaceOrientation].value[x] = only surfaceOrientation -* extension[spatialReference].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.spatialReference +* extension[spatialReference].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.spatialReference" * extension[spatialReference].value[x] = only CodeableReference -* extension[qualifier].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.qualifier +* extension[qualifier].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.qualifier" * extension[qualifier].value[x] = only CodeableConcept -* extension[excludedstructure].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.structure + + + +Extention: ExcludedStructure +Id: excludedStructure +Title: "Excluded Structure" +Description: "Description of the excluded Structure of the Body Structure" +* url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure (exactly)" +* extension 1..* +* extension contains + excludedstructure 1..* MS and + excludedlaterality 0..* MS and + excludedlandmarkDescription 0..* MS and + excludedclockFacePosition 0..* MS and + excludeddevice 0..* MS and + excludedvalue 0..* MS and + excludedsurfaceOrientation 0..* MS and + excludedspatialReference 0..* MS and + excludedqualifier 0..* MS +* extension[excludedstructure].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.structure" * extension[excludedstructure].value[x] = only CodeableConcept -* extension[excludedlaterality].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.laterality +* extension[excludedlaterality].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.laterality" * extension[excludedlaterality].value[x] = only CodeableConcept -* extension[excludedlandmarkDescription].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.landmarkDescription +* extension[excludedlandmarkDescription].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.landmarkDescription" * extension[excludedlandmarkDescription].value[x] = only CodeableReference -* extension[excludedclockFacePosition].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.clockFacePosition +* extension[excludedclockFacePosition].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.clockFacePosition" * extension[excludedclockFacePosition].value[x] = only CodeableReference -* extension[excludeddevice].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.distanceFromLandmark.device +* extension[excludeddevice].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.distanceFromLandmark.device" * extension[excludeddevice].value[x] = only CodeableReference -* extension[excludedvalue].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.distanceFromLandmark.value +* extension[excludedvalue].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.distanceFromLandmark.value" * extension[excludedvalue].value[x] = only Quantity -* extension[excludedsurfaceOrientation].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.surfaceOrientation +* extension[excludedsurfaceOrientation].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.surfaceOrientation" * extension[excludedsurfaceOrientation].value[x] = only surfaceOrientation -* extension[excludedspatialReference].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.spatialReference +* extension[excludedspatialReference].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.spatialReference" * extension[excludedspatialReference].value[x] = only CodeableReference -* extension[excludedqualifier].url = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.qualifier +* extension[excludedqualifier].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.qualifier " * extension[excludedqualifier].value[x] = only CodeableConcept + Extension: Diagnosis Id: diagnosis Title: "Diagnosis" From 9a654ac9a4eb75c1293ca470a9f458b26b1628e9 Mon Sep 17 00:00:00 2001 From: Friederike Schneider Date: Wed, 25 Oct 2023 13:27:13 +0200 Subject: [PATCH 07/20] fix: remove and --- input/fsh/bodystructure.fsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/input/fsh/bodystructure.fsh b/input/fsh/bodystructure.fsh index aa6e8f223..9bd941b37 100644 --- a/input/fsh/bodystructure.fsh +++ b/input/fsh/bodystructure.fsh @@ -29,7 +29,7 @@ Description: "Description of the included Structure of the Body Structure" * url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure (exactly)" * extension 1..* * extension contains - and structure 1..* MS + structure 1..* MS and laterality 0..* MS and landmarkDescription 0..* MS and clockFacePosition 0..* MS From 79e02a985dfc734438ad1db718f35408e1ce89e3 Mon Sep 17 00:00:00 2001 From: Friederike Schneider Date: Wed, 25 Oct 2023 13:31:54 +0200 Subject: [PATCH 08/20] fix extension typo --- input/fsh/bodystructure.fsh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/input/fsh/bodystructure.fsh b/input/fsh/bodystructure.fsh index 9bd941b37..a7a5e53f6 100644 --- a/input/fsh/bodystructure.fsh +++ b/input/fsh/bodystructure.fsh @@ -22,7 +22,7 @@ Description: "Profile for the base definition of all body structures." ExcludedStructure named encludedStructure 0..* MS and -Extention: IncludedStructure +Extension: IncludedStructure Id: includedStructure Title: "Included Structure" Description: "Description of the included Structure of the Body Structure" @@ -59,7 +59,7 @@ Description: "Description of the included Structure of the Body Structure" -Extention: ExcludedStructure +Extension: ExcludedStructure Id: excludedStructure Title: "Excluded Structure" Description: "Description of the excluded Structure of the Body Structure" From e33ddc0f86d68d71f6b3fdc741a1950e5f590710 Mon Sep 17 00:00:00 2001 From: Friederike Schneider Date: Wed, 25 Oct 2023 13:45:16 +0200 Subject: [PATCH 09/20] fix --- input/fsh/bodystructure.fsh | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/input/fsh/bodystructure.fsh b/input/fsh/bodystructure.fsh index a7a5e53f6..e5524d8bf 100644 --- a/input/fsh/bodystructure.fsh +++ b/input/fsh/bodystructure.fsh @@ -17,13 +17,13 @@ Description: "Profile for the base definition of all body structures." * location 0..0 * locationQualifier 0..0 * extension 1..* -* extension contains Diagnosis named diagnosis 0..* MS and - IncludedStructure named includedStructure 1..* MS and - ExcludedStructure named encludedStructure 0..* MS and +* extension contains diagnosis 0..* MS and + included-structure 1..* MS and + excluded-structure 0..* MS and Extension: IncludedStructure -Id: includedStructure +Id: included-structure Title: "Included Structure" Description: "Description of the included Structure of the Body Structure" * url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure (exactly)" @@ -60,7 +60,7 @@ Description: "Description of the included Structure of the Body Structure" Extension: ExcludedStructure -Id: excludedStructure +Id: excluded-structure Title: "Excluded Structure" Description: "Description of the excluded Structure of the Body Structure" * url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure (exactly)" From ce96b60cc9f7d729c36b6519dabb374cc40ffbfa Mon Sep 17 00:00:00 2001 From: Friederike Schneider Date: Wed, 25 Oct 2023 13:52:24 +0200 Subject: [PATCH 10/20] replace = only by only --- input/fsh/bodystructure.fsh | 40 ++++++++++++++++++------------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/input/fsh/bodystructure.fsh b/input/fsh/bodystructure.fsh index e5524d8bf..061e54144 100644 --- a/input/fsh/bodystructure.fsh +++ b/input/fsh/bodystructure.fsh @@ -16,7 +16,7 @@ Description: "Profile for the base definition of all body structures." * identifier[bodyStructureIdentifier].value 1..* * location 0..0 * locationQualifier 0..0 -* extension 1..* +* extension 1..* MS * extension contains diagnosis 0..* MS and included-structure 1..* MS and excluded-structure 0..* MS and @@ -27,7 +27,7 @@ Id: included-structure Title: "Included Structure" Description: "Description of the included Structure of the Body Structure" * url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure (exactly)" -* extension 1..* +* extension 1..* MS * extension contains structure 1..* MS and laterality 0..* MS @@ -39,23 +39,23 @@ Description: "Description of the included Structure of the Body Structure" and spatialReference 0..* MS and qualifier 0..* MS * extension[structure].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.structure" -* extension[structure].value[x] = only CodeableConcept +* extension[structure].value[x] only CodeableConcept * extension[laterality].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.laterality" -* extension[laterality].value[x] = only CodeableConcept +* extension[laterality].value[x] only CodeableConcept * extension[landmarkDescription].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.landmarkDescription" -* extension[landmarkDescription].value[x] = only CodeableReference +* extension[landmarkDescription].value[x] only CodeableReference * extension[clockFacePosition].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.clockFacePosition" -* extension[clockFacePosition].value[x] = only CodeableReference +* extension[clockFacePosition].value[x] only CodeableReference * extension[device].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.distanceFromLandmark.device" -* extension[device].value[x] = only CodeableReference +* extension[device].value[x] only CodeableReference * extension[value].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.distanceFromLandmark.value" -* extension[value].value[x] = only Quantity +* extension[value].value[x] only Quantity * extension[surfaceOrientation].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.surfaceOrientation" -* extension[surfaceOrientation].value[x] = only surfaceOrientation +* extension[surfaceOrientation].value[x] only surfaceOrientation * extension[spatialReference].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.spatialReference" -* extension[spatialReference].value[x] = only CodeableReference +* extension[spatialReference].value[x] only CodeableReference * extension[qualifier].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.qualifier" -* extension[qualifier].value[x] = only CodeableConcept +* extension[qualifier].value[x] only CodeableConcept @@ -76,23 +76,23 @@ Description: "Description of the excluded Structure of the Body Structure" excludedspatialReference 0..* MS and excludedqualifier 0..* MS * extension[excludedstructure].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.structure" -* extension[excludedstructure].value[x] = only CodeableConcept +* extension[excludedstructure].value[x] only CodeableConcept * extension[excludedlaterality].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.laterality" -* extension[excludedlaterality].value[x] = only CodeableConcept +* extension[excludedlaterality].value[x] only CodeableConcept * extension[excludedlandmarkDescription].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.landmarkDescription" -* extension[excludedlandmarkDescription].value[x] = only CodeableReference +* extension[excludedlandmarkDescription].value[x] only CodeableReference * extension[excludedclockFacePosition].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.clockFacePosition" -* extension[excludedclockFacePosition].value[x] = only CodeableReference +* extension[excludedclockFacePosition].value[x] only CodeableReference * extension[excludeddevice].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.distanceFromLandmark.device" -* extension[excludeddevice].value[x] = only CodeableReference +* extension[excludeddevice].value[x] only CodeableReference * extension[excludedvalue].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.distanceFromLandmark.value" -* extension[excludedvalue].value[x] = only Quantity +* extension[excludedvalue].value[x] only Quantity * extension[excludedsurfaceOrientation].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.surfaceOrientation" -* extension[excludedsurfaceOrientation].value[x] = only surfaceOrientation +* extension[excludedsurfaceOrientation].value[x] only surfaceOrientation * extension[excludedspatialReference].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.spatialReference" -* extension[excludedspatialReference].value[x] = only CodeableReference +* extension[excludedspatialReference].value[x] only CodeableReference * extension[excludedqualifier].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.qualifier " -* extension[excludedqualifier].value[x] = only CodeableConcept +* extension[excludedqualifier].value[x] only CodeableConcept Extension: Diagnosis From c0fd31135d0057bfd449e561e6859f9300edc52c Mon Sep 17 00:00:00 2001 From: Friederike Schneider Date: Wed, 25 Oct 2023 14:24:53 +0200 Subject: [PATCH 11/20] fix --- input/fsh/bodystructure.fsh | 65 ++++++++++++++++++------------------- 1 file changed, 31 insertions(+), 34 deletions(-) diff --git a/input/fsh/bodystructure.fsh b/input/fsh/bodystructure.fsh index 061e54144..0a38bf5b4 100644 --- a/input/fsh/bodystructure.fsh +++ b/input/fsh/bodystructure.fsh @@ -16,44 +16,42 @@ Description: "Profile for the base definition of all body structures." * identifier[bodyStructureIdentifier].value 1..* * location 0..0 * locationQualifier 0..0 -* extension 1..* MS -* extension contains diagnosis 0..* MS and - included-structure 1..* MS and - excluded-structure 0..* MS and +* extension contains Diagnosis named diagnosis 0..* MS and + IncludedStructure named included-structure 1..* MS and + ExcludedStructure named excluded-structure 0..* MS and Extension: IncludedStructure Id: included-structure Title: "Included Structure" Description: "Description of the included Structure of the Body Structure" -* url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure (exactly)" -* extension 1..* MS +* ^url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure (exactly)" * extension contains - structure 1..* MS - and laterality 0..* MS - and landmarkDescription 0..* MS - and clockFacePosition 0..* MS - and device 0..* MS - and value 0..* MS - and surfaceOrientation 0..* MS - and spatialReference 0..* MS - and qualifier 0..* MS + structure 1..* MS + and laterality 0..* MS + and landmarkDescription 0..* MS + and clockFacePosition 0..* MS + and device 0..* MS + and value 0..* MS + and surfaceOrientation 0..* MS + and spatialReference 0..* MS + and qualifier 0..* MS * extension[structure].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.structure" * extension[structure].value[x] only CodeableConcept * extension[laterality].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.laterality" * extension[laterality].value[x] only CodeableConcept * extension[landmarkDescription].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.landmarkDescription" -* extension[landmarkDescription].value[x] only CodeableReference +* extension[landmarkDescription].value[x] only CodeableConcept * extension[clockFacePosition].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.clockFacePosition" -* extension[clockFacePosition].value[x] only CodeableReference +* extension[clockFacePosition].value[x] only CodeableConcept * extension[device].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.distanceFromLandmark.device" -* extension[device].value[x] only CodeableReference +* extension[device].value[x] only Reference * extension[value].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.distanceFromLandmark.value" * extension[value].value[x] only Quantity * extension[surfaceOrientation].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.surfaceOrientation" * extension[surfaceOrientation].value[x] only surfaceOrientation * extension[spatialReference].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.spatialReference" -* extension[spatialReference].value[x] only CodeableReference +* extension[spatialReference].value[x] only Reference * extension[qualifier].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.qualifier" * extension[qualifier].value[x] only CodeableConcept @@ -63,34 +61,33 @@ Extension: ExcludedStructure Id: excluded-structure Title: "Excluded Structure" Description: "Description of the excluded Structure of the Body Structure" -* url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure (exactly)" -* extension 1..* +* ^url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure (exactly)" * extension contains - excludedstructure 1..* MS and - excludedlaterality 0..* MS and - excludedlandmarkDescription 0..* MS and - excludedclockFacePosition 0..* MS and - excludeddevice 0..* MS and - excludedvalue 0..* MS and - excludedsurfaceOrientation 0..* MS and - excludedspatialReference 0..* MS and - excludedqualifier 0..* MS + excludedstructure 1..* MS and + excludedlaterality 0..* MS and + excludedlandmarkDescription 0..* MS and + excludedclockFacePosition 0..* MS and + excludeddevice 0..* MS and + excludedvalue 0..* MS and + excludedsurfaceOrientation 0..* MS and + excludedspatialReference 0..* MS and + excludedqualifier 0..* MS * extension[excludedstructure].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.structure" * extension[excludedstructure].value[x] only CodeableConcept * extension[excludedlaterality].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.laterality" * extension[excludedlaterality].value[x] only CodeableConcept * extension[excludedlandmarkDescription].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.landmarkDescription" -* extension[excludedlandmarkDescription].value[x] only CodeableReference +* extension[excludedlandmarkDescription].value[x] only CodeableConcept * extension[excludedclockFacePosition].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.clockFacePosition" -* extension[excludedclockFacePosition].value[x] only CodeableReference +* extension[excludedclockFacePosition].value[x] only CodeableConcept * extension[excludeddevice].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.distanceFromLandmark.device" -* extension[excludeddevice].value[x] only CodeableReference +* extension[excludeddevice].value[x] only Reference * extension[excludedvalue].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.distanceFromLandmark.value" * extension[excludedvalue].value[x] only Quantity * extension[excludedsurfaceOrientation].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.surfaceOrientation" * extension[excludedsurfaceOrientation].value[x] only surfaceOrientation * extension[excludedspatialReference].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.spatialReference" -* extension[excludedspatialReference].value[x] only CodeableReference +* extension[excludedspatialReference].value[x] only Reference * extension[excludedqualifier].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.qualifier " * extension[excludedqualifier].value[x] only CodeableConcept From 564a478d26eedcddc4ea7b51bad18c9b3ac6a542 Mon Sep 17 00:00:00 2001 From: Friederike Schneider Date: Wed, 25 Oct 2023 14:30:56 +0200 Subject: [PATCH 12/20] remove and --- input/fsh/bodystructure.fsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/input/fsh/bodystructure.fsh b/input/fsh/bodystructure.fsh index 0a38bf5b4..1f3252d70 100644 --- a/input/fsh/bodystructure.fsh +++ b/input/fsh/bodystructure.fsh @@ -18,7 +18,7 @@ Description: "Profile for the base definition of all body structures." * locationQualifier 0..0 * extension contains Diagnosis named diagnosis 0..* MS and IncludedStructure named included-structure 1..* MS and - ExcludedStructure named excluded-structure 0..* MS and + ExcludedStructure named excluded-structure 0..* MS Extension: IncludedStructure From 443bfd86e8fa1fa7ce62af46a348c136314f14f9 Mon Sep 17 00:00:00 2001 From: Friederike Schneider Date: Wed, 25 Oct 2023 14:50:38 +0200 Subject: [PATCH 13/20] update cardinality --- input/fsh/bodystructure.fsh | 82 +++++++++++++++++++------------------ 1 file changed, 42 insertions(+), 40 deletions(-) diff --git a/input/fsh/bodystructure.fsh b/input/fsh/bodystructure.fsh index 1f3252d70..31c43d4a0 100644 --- a/input/fsh/bodystructure.fsh +++ b/input/fsh/bodystructure.fsh @@ -1,3 +1,6 @@ +Alias: $structure = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.structure + + Profile: Body_Structure_Base Parent: BodyStructure Id: body-structure-base @@ -11,8 +14,7 @@ Description: "Profile for the base definition of all body structures." bodyStructureIdentifier 1..1 * identifier[bodyStructureIdentifier].use = #usual * identifier[bodyStructureIdentifier].type = http://hl7.org/fhir/resource-types#BodyStructure -* identifier[bodyStructureIdentifier].type.coding.system 1..* -* identifier[bodyStructureIdentifier].type.coding.code 1..* +* identifier[bodyStructureIdentifier].type.coding 1..* * identifier[bodyStructureIdentifier].value 1..* * location 0..0 * locationQualifier 0..0 @@ -25,35 +27,35 @@ Extension: IncludedStructure Id: included-structure Title: "Included Structure" Description: "Description of the included Structure of the Body Structure" -* ^url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure (exactly)" +* url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure" (exactly) * extension contains - structure 1..* MS - and laterality 0..* MS - and landmarkDescription 0..* MS - and clockFacePosition 0..* MS - and device 0..* MS - and value 0..* MS - and surfaceOrientation 0..* MS - and spatialReference 0..* MS - and qualifier 0..* MS -* extension[structure].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.structure" -* extension[structure].value[x] only CodeableConcept -* extension[laterality].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.laterality" -* extension[laterality].value[x] only CodeableConcept -* extension[landmarkDescription].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.landmarkDescription" -* extension[landmarkDescription].value[x] only CodeableConcept -* extension[clockFacePosition].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.clockFacePosition" -* extension[clockFacePosition].value[x] only CodeableConcept -* extension[device].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.distanceFromLandmark.device" -* extension[device].value[x] only Reference -* extension[value].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.distanceFromLandmark.value" -* extension[value].value[x] only Quantity -* extension[surfaceOrientation].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.surfaceOrientation" -* extension[surfaceOrientation].value[x] only surfaceOrientation -* extension[spatialReference].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.spatialReference" -* extension[spatialReference].value[x] only Reference -* extension[qualifier].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.qualifier" -* extension[qualifier].value[x] only CodeableConcept + $structure 1..* MS + and $laterality 0..* MS + and $landmarkDescription 0..* MS + and $clockFacePosition 0..* MS + and $device 0..* MS + and $value 0..* MS + and $surfaceOrientation 0..* MS + and $spatialReference 0..* MS + and $qualifier 0..* MS +//* extension[structure].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.structure"(exactly) +* extension[$structure].value[x] only CodeableConcept +//* extension[laterality].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.laterality"(exactly) +* extension[$laterality].value[x] only CodeableConcept +//* extension[landmarkDescription].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.landmarkDescription"(exactly) +* extension[$landmarkDescription].value[x] only CodeableConcept +//* extension[clockFacePosition].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.clockFacePosition"(exactly) +* extension[$clockFacePosition].value[x] only CodeableConcept +//* extension[device].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.distanceFromLandmark.device"(exactly) +* extension[$device].value[x] only Reference +//* extension[value].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.distanceFromLandmark.value"(exactly) +* extension[$value].value[x] only Quantity +//* extension[surfaceOrientation].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.surfaceOrientation"(exactly) +* extension[$surfaceOrientation].value[x] only surfaceOrientation +//* extension[spatialReference].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.spatialReference"(exactly) +* extension[$spatialReference].value[x] only Reference or CodeableConcept +//* extension[qualifier].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.qualifier"(exactly) +* extension[$qualifier].value[x] only CodeableConcept @@ -61,7 +63,7 @@ Extension: ExcludedStructure Id: excluded-structure Title: "Excluded Structure" Description: "Description of the excluded Structure of the Body Structure" -* ^url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure (exactly)" +* url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure (exactly)" * extension contains excludedstructure 1..* MS and excludedlaterality 0..* MS and @@ -72,23 +74,23 @@ Description: "Description of the excluded Structure of the Body Structure" excludedsurfaceOrientation 0..* MS and excludedspatialReference 0..* MS and excludedqualifier 0..* MS -* extension[excludedstructure].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.structure" +* extension[excludedstructure].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.structure"(exactly) * extension[excludedstructure].value[x] only CodeableConcept -* extension[excludedlaterality].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.laterality" +* extension[excludedlaterality].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.laterality"(exactly) * extension[excludedlaterality].value[x] only CodeableConcept -* extension[excludedlandmarkDescription].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.landmarkDescription" +* extension[excludedlandmarkDescription].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.landmarkDescription"(exactly) * extension[excludedlandmarkDescription].value[x] only CodeableConcept -* extension[excludedclockFacePosition].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.clockFacePosition" +* extension[excludedclockFacePosition].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.clockFacePosition"(exactly) * extension[excludedclockFacePosition].value[x] only CodeableConcept -* extension[excludeddevice].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.distanceFromLandmark.device" +* extension[excludeddevice].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.distanceFromLandmark.device"(exactly) * extension[excludeddevice].value[x] only Reference -* extension[excludedvalue].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.distanceFromLandmark.value" +* extension[excludedvalue].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.distanceFromLandmark.value"(exactly) * extension[excludedvalue].value[x] only Quantity -* extension[excludedsurfaceOrientation].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.surfaceOrientation" +* extension[excludedsurfaceOrientation].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.surfaceOrientation"(exactly) * extension[excludedsurfaceOrientation].value[x] only surfaceOrientation -* extension[excludedspatialReference].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.spatialReference" +* extension[excludedspatialReference].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.spatialReference"(exactly) * extension[excludedspatialReference].value[x] only Reference -* extension[excludedqualifier].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.qualifier " +* extension[excludedqualifier].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.qualifier "(exactly) * extension[excludedqualifier].value[x] only CodeableConcept From 38df25f1e12fc3ecfabdc5c4d1db3fa8f72fd539 Mon Sep 17 00:00:00 2001 From: Friederike Schneider Date: Wed, 25 Oct 2023 15:12:42 +0200 Subject: [PATCH 14/20] refactor ExcludedStructure --- input/fsh/bodystructure.fsh | 80 ++++++++++++++++++------------------- 1 file changed, 39 insertions(+), 41 deletions(-) diff --git a/input/fsh/bodystructure.fsh b/input/fsh/bodystructure.fsh index 31c43d4a0..01e6035bc 100644 --- a/input/fsh/bodystructure.fsh +++ b/input/fsh/bodystructure.fsh @@ -1,5 +1,21 @@ Alias: $structure = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.structure - +Alias: $laterality = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.laterality +Alias: $landmarkDescription = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.landmarkDescription +Alias: $clockFacePosition = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.clockFacePosition +Alias: $device = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.distanceFromLandmark.device +Alias: $value = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.distanceFromLandmark.value +Alias: $surfaceOrientation = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.surfaceOrientation +Alias: $spatialReference = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.spatialReference +Alias: $qualifier = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.qualifier +Alias: $excludedstructure = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.structure +Alias: $excludedlaterality = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.laterality +Alias: $excludedlandmarkDescription = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.landmarkDescription +Alias: $excludedclockFacePosition = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.clockFacePosition +Alias: $excludeddevice = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.distanceFromLandmark.device +Alias: $excludedvalue = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.distanceFromLandmark.value +Alias: $excludedsurfaceOrientation = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.surfaceOrientation +Alias: $excludedspatialReference = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.spatialReference +Alias: $excludedqualifier = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.qualifier Profile: Body_Structure_Base Parent: BodyStructure @@ -15,7 +31,7 @@ Description: "Profile for the base definition of all body structures." * identifier[bodyStructureIdentifier].use = #usual * identifier[bodyStructureIdentifier].type = http://hl7.org/fhir/resource-types#BodyStructure * identifier[bodyStructureIdentifier].type.coding 1..* -* identifier[bodyStructureIdentifier].value 1..* +* identifier[bodyStructureIdentifier].value 1..1 * location 0..0 * locationQualifier 0..0 * extension contains Diagnosis named diagnosis 0..* MS and @@ -27,7 +43,7 @@ Extension: IncludedStructure Id: included-structure Title: "Included Structure" Description: "Description of the included Structure of the Body Structure" -* url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure" (exactly) +* ^url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure" (exactly) * extension contains $structure 1..* MS and $laterality 0..* MS @@ -38,23 +54,14 @@ Description: "Description of the included Structure of the Body Structure" and $surfaceOrientation 0..* MS and $spatialReference 0..* MS and $qualifier 0..* MS -//* extension[structure].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.structure"(exactly) * extension[$structure].value[x] only CodeableConcept -//* extension[laterality].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.laterality"(exactly) * extension[$laterality].value[x] only CodeableConcept -//* extension[landmarkDescription].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.landmarkDescription"(exactly) * extension[$landmarkDescription].value[x] only CodeableConcept -//* extension[clockFacePosition].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.clockFacePosition"(exactly) * extension[$clockFacePosition].value[x] only CodeableConcept -//* extension[device].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.distanceFromLandmark.device"(exactly) -* extension[$device].value[x] only Reference -//* extension[value].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.distanceFromLandmark.value"(exactly) +* extension[$device].value[x] only Reference or CodeableConcept * extension[$value].value[x] only Quantity -//* extension[surfaceOrientation].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.surfaceOrientation"(exactly) * extension[$surfaceOrientation].value[x] only surfaceOrientation -//* extension[spatialReference].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.spatialReference"(exactly) * extension[$spatialReference].value[x] only Reference or CodeableConcept -//* extension[qualifier].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.qualifier"(exactly) * extension[$qualifier].value[x] only CodeableConcept @@ -63,35 +70,26 @@ Extension: ExcludedStructure Id: excluded-structure Title: "Excluded Structure" Description: "Description of the excluded Structure of the Body Structure" -* url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure (exactly)" +* ^url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure (exactly)" * extension contains - excludedstructure 1..* MS and - excludedlaterality 0..* MS and - excludedlandmarkDescription 0..* MS and - excludedclockFacePosition 0..* MS and - excludeddevice 0..* MS and - excludedvalue 0..* MS and - excludedsurfaceOrientation 0..* MS and - excludedspatialReference 0..* MS and - excludedqualifier 0..* MS -* extension[excludedstructure].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.structure"(exactly) -* extension[excludedstructure].value[x] only CodeableConcept -* extension[excludedlaterality].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.laterality"(exactly) -* extension[excludedlaterality].value[x] only CodeableConcept -* extension[excludedlandmarkDescription].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.landmarkDescription"(exactly) -* extension[excludedlandmarkDescription].value[x] only CodeableConcept -* extension[excludedclockFacePosition].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.clockFacePosition"(exactly) -* extension[excludedclockFacePosition].value[x] only CodeableConcept -* extension[excludeddevice].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.distanceFromLandmark.device"(exactly) -* extension[excludeddevice].value[x] only Reference -* extension[excludedvalue].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.distanceFromLandmark.value"(exactly) -* extension[excludedvalue].value[x] only Quantity -* extension[excludedsurfaceOrientation].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.surfaceOrientation"(exactly) -* extension[excludedsurfaceOrientation].value[x] only surfaceOrientation -* extension[excludedspatialReference].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.spatialReference"(exactly) -* extension[excludedspatialReference].value[x] only Reference -* extension[excludedqualifier].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.qualifier "(exactly) -* extension[excludedqualifier].value[x] only CodeableConcept + $excludedstructure 1..* MS and + $excludedlaterality 0..* MS and + $excludedlandmarkDescription 0..* MS and + $excludedclockFacePosition 0..* MS and + $excludeddevice 0..* MS and + $excludedvalue 0..* MS and + $excludedsurfaceOrientation 0..* MS and + $excludedspatialReference 0..* MS and + $excludedqualifier 0..* MS +* extension[$excludedstructure].value[x] only CodeableConcept +* extension[$excludedlaterality].value[x] only CodeableConcept +* extension[$excludedlandmarkDescription].value[x] only CodeableConcept +* extension[$excludedclockFacePosition].value[x] only CodeableConcept +* extension[$excludeddevice].value[x] only Reference or CodeableConcept +* extension[$excludedvalue].value[x] only Quantity +* extension[$excludedsurfaceOrientation].value[x] only surfaceOrientation +* extension[$excludedspatialReference].value[x] only Reference or CodeableConcept +* extension[$excludedqualifier].value[x] only CodeableConcept Extension: Diagnosis From 8d14cb98c5ad1e6740e0687cf7250bda753b5875 Mon Sep 17 00:00:00 2001 From: Friederike Schneider Date: Wed, 25 Oct 2023 15:38:55 +0200 Subject: [PATCH 15/20] refactor tumor and tumor example refactor bodystructure move alisa to alias file --- input/fsh/aliases.fsh | 20 ++++++++++++++++++++ input/fsh/bodystructure.fsh | 34 +++++++++------------------------- input/fsh/tumor.fsh | 9 +++++---- 3 files changed, 34 insertions(+), 29 deletions(-) diff --git a/input/fsh/aliases.fsh b/input/fsh/aliases.fsh index 687b80034..16f7cd3de 100644 --- a/input/fsh/aliases.fsh +++ b/input/fsh/aliases.fsh @@ -61,3 +61,23 @@ Alias: $DiagnosesicherungCS = https://www.vision-zero-oncology.de/fhir/CodeSyste Alias: $RadReadProc = https://www.vision-zero-oncology.de/fhir/StructureDefinition/radiological-read-procedure Alias: $RadTnmReadProc = https://www.vision-zero-oncology.de/fhir/StructureDefinition/radiological-tnm-read-procedure Alias: $RadRecistReadProc = https://www.vision-zero-oncology.de/fhir/StructureDefinition/radiological-recist-read-procedure + +// HL7 Backport +Alias: $structure = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.structure +Alias: $laterality = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.laterality +Alias: $landmarkDescription = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.landmarkDescription +Alias: $clockFacePosition = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.clockFacePosition +Alias: $device = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.distanceFromLandmark.device +Alias: $value = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.distanceFromLandmark.value +Alias: $surfaceOrientation = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.surfaceOrientation +Alias: $spatialReference = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.spatialReference +Alias: $qualifier = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.qualifier +Alias: $excludedstructure = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.structure +Alias: $excludedlaterality = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.laterality +Alias: $excludedlandmarkDescription = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.landmarkDescription +Alias: $excludedclockFacePosition = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.clockFacePosition +Alias: $excludeddevice = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.distanceFromLandmark.device +Alias: $excludedvalue = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.distanceFromLandmark.value +Alias: $excludedsurfaceOrientation = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.surfaceOrientation +Alias: $excludedspatialReference = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.spatialReference +Alias: $excludedqualifier = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.qualifier diff --git a/input/fsh/bodystructure.fsh b/input/fsh/bodystructure.fsh index 01e6035bc..677aa5f51 100644 --- a/input/fsh/bodystructure.fsh +++ b/input/fsh/bodystructure.fsh @@ -1,22 +1,3 @@ -Alias: $structure = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.structure -Alias: $laterality = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.laterality -Alias: $landmarkDescription = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.landmarkDescription -Alias: $clockFacePosition = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.clockFacePosition -Alias: $device = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.distanceFromLandmark.device -Alias: $value = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.distanceFromLandmark.value -Alias: $surfaceOrientation = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.bodyLandmarkOrientation.surfaceOrientation -Alias: $spatialReference = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.spatialReference -Alias: $qualifier = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.qualifier -Alias: $excludedstructure = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.structure -Alias: $excludedlaterality = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.laterality -Alias: $excludedlandmarkDescription = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.landmarkDescription -Alias: $excludedclockFacePosition = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.clockFacePosition -Alias: $excludeddevice = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.distanceFromLandmark.device -Alias: $excludedvalue = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.distanceFromLandmark.value -Alias: $excludedsurfaceOrientation = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.bodyLandmarkOrientation.surfaceOrientation -Alias: $excludedspatialReference = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.spatialReference -Alias: $excludedqualifier = http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure.qualifier - Profile: Body_Structure_Base Parent: BodyStructure Id: body-structure-base @@ -43,7 +24,7 @@ Extension: IncludedStructure Id: included-structure Title: "Included Structure" Description: "Description of the included Structure of the Body Structure" -* ^url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure" (exactly) +* ^url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure" * extension contains $structure 1..* MS and $laterality 0..* MS @@ -60,7 +41,7 @@ Description: "Description of the included Structure of the Body Structure" * extension[$clockFacePosition].value[x] only CodeableConcept * extension[$device].value[x] only Reference or CodeableConcept * extension[$value].value[x] only Quantity -* extension[$surfaceOrientation].value[x] only surfaceOrientation +* extension[$surfaceOrientation].value[x] only CodeableConcept * extension[$spatialReference].value[x] only Reference or CodeableConcept * extension[$qualifier].value[x] only CodeableConcept @@ -70,7 +51,7 @@ Extension: ExcludedStructure Id: excluded-structure Title: "Excluded Structure" Description: "Description of the excluded Structure of the Body Structure" -* ^url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure (exactly)" +* ^url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.excludedStructure" * extension contains $excludedstructure 1..* MS and $excludedlaterality 0..* MS and @@ -103,12 +84,15 @@ Description: "Enables to reference a diagnosis the body stucture ref Instance: example-body-structure -InstanceOf: BodyStructure +InstanceOf: Body_Structure_Base Usage: #example * identifier.use = #usual * identifier.type = http://hl7.org/fhir/resource-types#BodyStructure * identifier.system = "http://radiology.hospital.example.org" * identifier.value = "Tumor 1234" * patient = Reference(ExamplePatient) -* extension.url = "https://www.vision-zero-oncology.de/fhir/StructureDefinition/diagnosis" -* extension.valueReference = Reference(ExampleCondition) \ No newline at end of file +* extension[diagnosis].url = "https://www.vision-zero-oncology.de/fhir/StructureDefinition/diagnosis" +* extension[diagnosis].valueReference = Reference(ExampleCondition) +* extension[included-structure].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure" +* extension[included-structure].extension[$structure].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.structure" +* extension[included-structure].extension[$structure].valueCodeableConcept.coding = $ICD10GM|2019#C50.2 "Bösartige Neubildung der Brustdrüse [Mamma] Oberer innerer Quadrant der Brustdrüse" \ No newline at end of file diff --git a/input/fsh/tumor.fsh b/input/fsh/tumor.fsh index f1293d7d2..fc7139452 100644 --- a/input/fsh/tumor.fsh +++ b/input/fsh/tumor.fsh @@ -14,8 +14,6 @@ Id: tumor Title: "Profile Tumor" Description: "Profile of a tumor" * insert Metadata -* morphology 1.. MS -* location 1.. MS * patient MS Extension: PartOf @@ -37,8 +35,11 @@ Description: "Example for the Tumor profile" * identifier[bodyStructureIdentifier].type = http://hl7.org/fhir/resource-types#BodyStructure * identifier[bodyStructureIdentifier].system = "http://radiology.hospital.example.org" * identifier[bodyStructureIdentifier].value = "Tumor 1234" -* morphology = $SCT#17302008 "Cerebellar sarcoma (morphologic abnormality)" -* location = $SCT#1010600003 "Structure of left cerebellar hemisphere (body structure)" +//* morphology = $SCT#17302008 "Cerebellar sarcoma (morphologic abnormality)" +//* location = $SCT#1010600003 "Structure of left cerebellar hemisphere (body structure)" +* extension[included-structure].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure" +* extension[included-structure].extension[$structure].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.structure" +* extension[included-structure].extension[$structure].valueCodeableConcept.coding = $ICD10GM|2019#C50.2 "Bösartige Neubildung der Brustdrüse [Mamma] Oberer innerer Quadrant der Brustdrüse" * patient = Reference(ExamplePatient) Instance: blood-specimen From 91d66dcbdcf46ab1dee3f837e4223175da37e1cd Mon Sep 17 00:00:00 2001 From: Friederike Schneider Date: Wed, 25 Oct 2023 15:46:57 +0200 Subject: [PATCH 16/20] add r5 backport dependency to yaml file --- sushi-config.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sushi-config.yaml b/sushi-config.yaml index bef9a3c00..c5adb2201 100644 --- a/sushi-config.yaml +++ b/sushi-config.yaml @@ -28,6 +28,8 @@ dependencies: de.gematik.isik-basismodul: 2.0.0 de.medizininformatikinitiative.kerndatensatz.biobank: 1.0.3 hl7.fhir.uv.ips: 1.0.0 + hl7.fhir.extensions.r5: 4.0.1 + pages: index.md: From e9487eef7d900ff1185c9e8ce9cca6730caac3df Mon Sep 17 00:00:00 2001 From: Friederike Schneider Date: Wed, 25 Oct 2023 15:47:17 +0200 Subject: [PATCH 17/20] type error fix --- input/fsh/bodystructure.fsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/input/fsh/bodystructure.fsh b/input/fsh/bodystructure.fsh index 677aa5f51..5a734fe45 100644 --- a/input/fsh/bodystructure.fsh +++ b/input/fsh/bodystructure.fsh @@ -68,7 +68,7 @@ Description: "Description of the excluded Structure of the Body Structure" * extension[$excludedclockFacePosition].value[x] only CodeableConcept * extension[$excludeddevice].value[x] only Reference or CodeableConcept * extension[$excludedvalue].value[x] only Quantity -* extension[$excludedsurfaceOrientation].value[x] only surfaceOrientation +* extension[$excludedsurfaceOrientation].value[x] only CodeableConcept * extension[$excludedspatialReference].value[x] only Reference or CodeableConcept * extension[$excludedqualifier].value[x] only CodeableConcept From dd8c6096d0cb40bf23e5f89bfcdb8cffb14392e3 Mon Sep 17 00:00:00 2001 From: Friederike Schneider Date: Wed, 25 Oct 2023 15:52:50 +0200 Subject: [PATCH 18/20] fix examples --- input/fsh/bodystructure.fsh | 2 -- input/fsh/tumor.fsh | 2 -- 2 files changed, 4 deletions(-) diff --git a/input/fsh/bodystructure.fsh b/input/fsh/bodystructure.fsh index 5a734fe45..1ec61978a 100644 --- a/input/fsh/bodystructure.fsh +++ b/input/fsh/bodystructure.fsh @@ -93,6 +93,4 @@ Usage: #example * patient = Reference(ExamplePatient) * extension[diagnosis].url = "https://www.vision-zero-oncology.de/fhir/StructureDefinition/diagnosis" * extension[diagnosis].valueReference = Reference(ExampleCondition) -* extension[included-structure].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure" -* extension[included-structure].extension[$structure].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.structure" * extension[included-structure].extension[$structure].valueCodeableConcept.coding = $ICD10GM|2019#C50.2 "Bösartige Neubildung der Brustdrüse [Mamma] Oberer innerer Quadrant der Brustdrüse" \ No newline at end of file diff --git a/input/fsh/tumor.fsh b/input/fsh/tumor.fsh index fc7139452..62a319d68 100644 --- a/input/fsh/tumor.fsh +++ b/input/fsh/tumor.fsh @@ -37,8 +37,6 @@ Description: "Example for the Tumor profile" * identifier[bodyStructureIdentifier].value = "Tumor 1234" //* morphology = $SCT#17302008 "Cerebellar sarcoma (morphologic abnormality)" //* location = $SCT#1010600003 "Structure of left cerebellar hemisphere (body structure)" -* extension[included-structure].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure" -* extension[included-structure].extension[$structure].url = "http://hl7.org/fhir/5.0/StructureDefinition/extension-BodyStructure.includedStructure.structure" * extension[included-structure].extension[$structure].valueCodeableConcept.coding = $ICD10GM|2019#C50.2 "Bösartige Neubildung der Brustdrüse [Mamma] Oberer innerer Quadrant der Brustdrüse" * patient = Reference(ExamplePatient) From 7f7e1782e71c742bcbaf7e1a02ad93fe3f454312 Mon Sep 17 00:00:00 2001 From: Friederike Schneider Date: Wed, 25 Oct 2023 16:47:04 +0200 Subject: [PATCH 19/20] update examples use correct codes --- input/fsh/bodystructure.fsh | 4 +++- input/fsh/tumor.fsh | 10 +++++----- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/input/fsh/bodystructure.fsh b/input/fsh/bodystructure.fsh index 1ec61978a..23412d1b2 100644 --- a/input/fsh/bodystructure.fsh +++ b/input/fsh/bodystructure.fsh @@ -93,4 +93,6 @@ Usage: #example * patient = Reference(ExamplePatient) * extension[diagnosis].url = "https://www.vision-zero-oncology.de/fhir/StructureDefinition/diagnosis" * extension[diagnosis].valueReference = Reference(ExampleCondition) -* extension[included-structure].extension[$structure].valueCodeableConcept.coding = $ICD10GM|2019#C50.2 "Bösartige Neubildung der Brustdrüse [Mamma] Oberer innerer Quadrant der Brustdrüse" \ No newline at end of file +* extension[included-structure].extension[$structure].valueCodeableConcept.coding = $SCT#14975008 "Forearm" +* extension[included-structure].extension[$laterality].valueCodeableConcept.coding = $SCT#419161000 "Unilateral left" +* extension[included-structure].extension[$qualifier].valueCodeableConcept.coding = $SCT#263929005 "Volar" \ No newline at end of file diff --git a/input/fsh/tumor.fsh b/input/fsh/tumor.fsh index 62a319d68..370075c80 100644 --- a/input/fsh/tumor.fsh +++ b/input/fsh/tumor.fsh @@ -14,6 +14,7 @@ Id: tumor Title: "Profile Tumor" Description: "Profile of a tumor" * insert Metadata +* morphoplogy 1..1 MS * patient MS Extension: PartOf @@ -26,7 +27,7 @@ Description: "Enables to reference a Tumor from its respective S * ^context[=].expression = "Specimen" // Examples -Instance: CerebellarSarcoma +Instance: SplenicStructure InstanceOf: Tumor Usage: #example Title: "Tumor Example - Cerebellar Sarcoma" @@ -35,15 +36,14 @@ Description: "Example for the Tumor profile" * identifier[bodyStructureIdentifier].type = http://hl7.org/fhir/resource-types#BodyStructure * identifier[bodyStructureIdentifier].system = "http://radiology.hospital.example.org" * identifier[bodyStructureIdentifier].value = "Tumor 1234" -//* morphology = $SCT#17302008 "Cerebellar sarcoma (morphologic abnormality)" -//* location = $SCT#1010600003 "Structure of left cerebellar hemisphere (body structure)" -* extension[included-structure].extension[$structure].valueCodeableConcept.coding = $ICD10GM|2019#C50.2 "Bösartige Neubildung der Brustdrüse [Mamma] Oberer innerer Quadrant der Brustdrüse" +* morphology = $SCT#4147007 "Mass (morphologic abnormality)" +* extension[included-structure].extension[$structure].valueCodeableConcept.coding = $SCT#78961009 "Splenic structure (body structure)" * patient = Reference(ExamplePatient) Instance: blood-specimen InstanceOf: TumorSpecimen Usage: #example -* extension[partOf].valueReference = Reference(CerebellarSarcoma) +* extension[partOf].valueReference = Reference(SplenicStructure) * status = #available * type = $SCT#16210851000119107 "Cerebellar neoplasm specimen (specimen)" * subject = Reference(ExamplePatient) From 2b87509945675ff6356ff58b77627e9db143edc4 Mon Sep 17 00:00:00 2001 From: Friederike Schneider Date: Wed, 25 Oct 2023 16:52:17 +0200 Subject: [PATCH 20/20] fix typo --- input/fsh/tumor.fsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/input/fsh/tumor.fsh b/input/fsh/tumor.fsh index 370075c80..d7e3db2a9 100644 --- a/input/fsh/tumor.fsh +++ b/input/fsh/tumor.fsh @@ -14,7 +14,7 @@ Id: tumor Title: "Profile Tumor" Description: "Profile of a tumor" * insert Metadata -* morphoplogy 1..1 MS +* morphology 1..1 MS * patient MS Extension: PartOf