Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Aged care facade demo #26

Open
wants to merge 15 commits into
base: master
Choose a base branch
from
Open
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Add SLK581 identifier profile and link Questionnaire.item.definition …
…to the identifier.value
liambarnes committed Mar 18, 2024
commit fc34e9fedb3c5bcafa8f94dd94b6bc9d00e0cf7a
10 changes: 9 additions & 1 deletion fsh-generated/fsh-index.json
Original file line number Diff line number Diff line change
@@ -29,7 +29,7 @@
"fshType": "Instance",
"fshFile": "Questionnaire-AgedCareCMSFacade.fsh",
"startLine": 6,
"endLine": 1354
"endLine": 1355
},
{
"outputFile": "Questionnaire-AllergiesAdverseReactions.json",
@@ -303,6 +303,14 @@
"startLine": 1,
"endLine": 6
},
{
"outputFile": "StructureDefinition-slk581.json",
"fshName": "SLK581",
"fshType": "Profile",
"fshFile": "Identifier-SLK581.fsh",
"startLine": 3,
"endLine": 20
},
{
"outputFile": "ValueSet-AboriginalTorresStraitIslander.json",
"fshName": "AboriginalTorresStraitIslander",
3 changes: 2 additions & 1 deletion fsh-generated/fsh-index.txt
Original file line number Diff line number Diff line change
@@ -2,7 +2,7 @@ Output File Name
CodeSystem-QuestionnaireItemControlExtended.json QuestionnaireItemControlExtended CodeSystem terminology.fsh 7 - 14
Questionnaire-AboutTheHealthCheck.json AboutTheHealthCheck Instance 715-AboutTheHealthCheck.fsh 5 - 163
Questionnaire-AbsoluteCVDRiskCalculation.json AbsoluteCVDRiskCalculation Instance 715-Assessment-AbsoluteCVDRiskCalculation.fsh 5 - 415
Questionnaire-AgedCareCMSFacade.json AgedCareCMSFacade Instance Questionnaire-AgedCareCMSFacade.fsh 6 - 1354
Questionnaire-AgedCareCMSFacade.json AgedCareCMSFacade Instance Questionnaire-AgedCareCMSFacade.fsh 6 - 1355
Questionnaire-AllergiesAdverseReactions.json AllergiesAdverseReactions Instance 715-Assessment-AllergiesAdverseReactions.fsh 5 - 103
Questionnaire-AssemblyInstructions.json AssemblyInstructions Instance 715-AssemblyInstructions.fsh 5 - 577
Questionnaire-ChronicDiseaseAgeing.json ChronicDiseaseAgeing Instance 715-Assessment-ChronicDiseaseAgeing.fsh 5 - 120
@@ -37,6 +37,7 @@ Questionnaire-SocialHistoryChild.json SocialHistoryChild
Questionnaire-SubstanceUse.json SubstanceUse Instance 715-Assessment-SubstanceUse.fsh 5 - 209
StructureDefinition-ConditionEnvironmentAcquired.json ConditionEnvironmentAcquired Extension extensions.fsh 8 - 16
StructureDefinition-ContainedResourceReference.json ContainedResourceReference Extension extensions.fsh 1 - 6
StructureDefinition-slk581.json SLK581 Profile Identifier-SLK581.fsh 3 - 20
ValueSet-AboriginalTorresStraitIslander.json AboriginalTorresStraitIslander ValueSet terminology.fsh 102 - 128
ValueSet-MedicalHistory.json MedicalHistory ValueSet terminology.fsh 172 - 178
ValueSet-PrimaryCarerParentGrandparent.json PrimaryCarerParentGrandparent ValueSet terminology.fsh 133 - 169
1 change: 1 addition & 0 deletions fsh-generated/includes/fsh-link-references.md
Original file line number Diff line number Diff line change
@@ -50,6 +50,7 @@
[SmartFormsApplication]: CapabilityStatement-SmartFormsApplication.html
[SmartFormsLauncherServerAboriginalTorresStraitIslanderHealthCheck]: CapabilityStatement-SFLauncherServerAboriginalTorresStraitIslanderHealthCheck.html
[SmartFormsServer]: CapabilityStatement-SmartFormsServer.html
[SLK581]: StructureDefinition-slk581.html
[YesNo]: ValueSet-YesNo.html
[YesNoNA]: ValueSet-YesNoNA.html
[YesNoNotAskedDeclined]: ValueSet-YesNoNotAskedDeclined.html
Original file line number Diff line number Diff line change
@@ -458,6 +458,14 @@
"exampleBoolean": false,
"name": "Smart Forms Server"
},
{
"reference": {
"reference": "StructureDefinition/slk581"
},
"name": "Statistical Linkage Key 581",
"description": "Statistical linkage key 581 represented as an identifier datatype. Specification for generating the SLK581 is definied by the Australian Institute of Health and Welfare, https://meteor.aihw.gov.au/content/750410",
"exampleBoolean": false
},
{
"reference": {
"reference": "ValueSet/YesNo"
Original file line number Diff line number Diff line change
@@ -281,6 +281,7 @@
}
],
"linkId": "patient-slk",
"definition": "https://smartforms.csiro.au/ig/StructureDefinition/slk581#Identifier.value",
"text": "SLK",
"type": "string",
"repeats": false
90 changes: 90 additions & 0 deletions fsh-generated/resources/StructureDefinition-slk581.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
{
"resourceType": "StructureDefinition",
"id": "slk581",
"url": "https://smartforms.csiro.au/ig/StructureDefinition/slk581",
"name": "SLK581",
"title": "Statistical Linkage Key 581",
"status": "draft",
"description": "Statistical linkage key 581 represented as an identifier datatype. Specification for generating the SLK581 is definied by the Australian Institute of Health and Welfare, https://meteor.aihw.gov.au/content/750410",
"jurisdiction": [
{
"coding": [
{
"code": "AU",
"system": "urn:iso:std:iso:3166"
}
]
}
],
"fhirVersion": "4.0.1",
"mapping": [
{
"identity": "v2",
"uri": "http://hl7.org/v2",
"name": "HL7 v2 Mapping"
},
{
"identity": "rim",
"uri": "http://hl7.org/v3",
"name": "RIM Mapping"
},
{
"identity": "servd",
"uri": "http://www.omg.org/spec/ServD/1.0/",
"name": "ServD"
}
],
"kind": "complex-type",
"abstract": false,
"type": "Identifier",
"baseDefinition": "http://hl7.org/fhir/StructureDefinition/Identifier",
"derivation": "constraint",
"differential": {
"element": [
{
"id": "Identifier",
"path": "Identifier",
"short": "Statistical Linkage Key 581",
"constraint": [
{
"key": "inv-slk581-value-0",
"human": "SLK581 shall be exactly 14 uppercase alphanumeric characters.",
"source": "https://smartforms.csiro.au/ig/StructureDefinition/slk581",
"severity": "error",
"expression": "value.matches('^([A-Z0-9]{14})$')"
}
]
},
{
"id": "Identifier.type",
"path": "Identifier.type",
"min": 1,
"patternCodeableConcept": {
"coding": [
{
"code": "ANON",
"system": "http://terminology.hl7.org/CodeSystem/v2-0203"
}
]
}
},
{
"id": "Identifier.system",
"path": "Identifier.system",
"min": 1,
"fixedUri": "urn:oid:2.16.840.1.113883.3.879.750410"
},
{
"id": "Identifier.value",
"path": "Identifier.value",
"short": "SLK581",
"comment": "This concept is equivalent to Australian Institute of Health and Welfare data element cluster 755410 [Statistical linkage key 581 cluster, https://meteor.aihw.gov.au/content/750410).",
"min": 1,
"maxLength": 14,
"condition": [
"inv-slk581-value-0"
]
}
]
}
}
25 changes: 25 additions & 0 deletions input/fsh/Identifier-SLK581.fsh
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
Alias: $v2-0203 = http://terminology.hl7.org/CodeSystem/v2-0203

Profile: SLK581
Parent: Identifier
Id: slk581
Title: "Statistical Linkage Key 581"
Description: "Statistical linkage key 581 represented as an identifier datatype. Specification for generating the SLK581 is definied by the Australian Institute of Health and Welfare, https://meteor.aihw.gov.au/content/750410"

* ^jurisdiction = urn:iso:std:iso:3166#AU
* obeys inv-slk581-value-0
* . ^short = "Statistical Linkage Key 581"
* type 1..
* type = $v2-0203#ANON
* system 1..
* system = "urn:oid:2.16.840.1.113883.3.879.750410" (exactly)
* value 1..
* value ^short = "SLK581"
* value ^comment = "This concept is equivalent to Australian Institute of Health and Welfare data element cluster 755410 [Statistical linkage key 581 cluster, https://meteor.aihw.gov.au/content/750410)."
* value ^maxLength = 14
* value ^condition[0] = "inv-slk581-value-0"

Invariant: inv-slk581-value-0
Description: "SLK581 shall be exactly 14 uppercase alphanumeric characters."
* severity = #error
* expression = "value.matches('^([A-Z0-9]{14})$')"
1 change: 1 addition & 0 deletions input/fsh/Questionnaire-AgedCareCMSFacade.fsh
Original file line number Diff line number Diff line change
@@ -153,6 +153,7 @@ Description: "Aged Care CMS Facade."
* item[=].item[=].item[=].extension.valueExpression.language = #text/fhirpath
* item[=].item[=].item[=].extension.valueExpression.expression = "iif(%patient.name.where(use='official').family.empty(), '999', (%familyNameSecondLetter + %familyNameThirdLetter + %familyNameFifthLetter).upper()) + iif(%patient.name.where(use='official').given[0].empty(), '99', (%givenNameSecondLetter + %givenNameThirdLetter).upper()) + %birthDateString.substring(6, 2) + %birthDateString.substring(4, 2) + %birthDateString.substring(0, 4) + (%genderMaleCode + %genderFemaleCode + %genderOtherCode + %genderUnknown).toString()"
* item[=].item[=].item[=].linkId = "patient-slk"
* item[=].item[=].item[=].definition = "https://smartforms.csiro.au/ig/StructureDefinition/slk581#Identifier.value"
* item[=].item[=].item[=].text = "SLK"
* item[=].item[=].item[=].type = #string
* item[=].item[=].item[=].repeats = false