FHIR IG analytics| Package | synapxe.hsar |
| Resource Type | StructureDefinition |
| Id | profile-Composition-base.json |
| FHIR Version | R4B |
| Source | https://simplifier.net/resolve?scope=synapxe.hsar@1.0.0&canonical=http://ihis.sg/StructureDefinition/Composition-put-base |
| URL | http://ihis.sg/StructureDefinition/Composition-put-base |
| Status | active |
| Date | 2019-11-01T09:29:23+11:00 |
| Name | profile-Composition-put-base |
| Description | Base profile for get-care-report and put-care-report API |
| Type | Composition |
| Kind | resource |
No resources found
| StructureDefinition | |
| CareReport-Patient | profile-Composition-put-care-report-patient |
| CareReportObservation | profile-Composition-put-care-report-observation |
| care-report-year | extension-Composition-careReportYear |
No narrative content found in resource
{
"resourceType": "StructureDefinition",
"id": "profile-Composition-put-base",
"url": "http://ihis.sg/StructureDefinition/Composition-put-base",
"name": "profile-Composition-put-base",
"status": "active",
"date": "2019-11-01T09:29:23+11:00",
"publisher": "IHIS",
"description": "Base profile for get-care-report and put-care-report API",
"fhirVersion": "4.3.0",
"kind": "resource",
"abstract": false,
"type": "Composition",
"baseDefinition": "http://hl7.org/fhir/StructureDefinition/Composition",
"derivation": "constraint",
"differential": {
"element": [
{
"id": "Composition.implicitRules",
"path": "Composition.implicitRules",
"max": "0"
},
{
"id": "Composition.language",
"path": "Composition.language",
"max": "0"
},
{
"id": "Composition.text",
"path": "Composition.text",
"max": "0"
},
{
"id": "Composition.contained",
"path": "Composition.contained",
"slicing": {
"discriminator": [
{
"type": "type",
"path": "$this"
}
],
"rules": "closed"
},
"short": "Information about an individual or animal receiving health care services",
"definition": "Demographics and other administrative information about an individual or animal receiving care or other health-related services.",
"comment": "Used for simple observations such as device measurements, laboratory atomic results, vital signs, height, weight, smoking status, comments, etc. Other resources are used to provide context for observations such as laboratory reports, etc.",
"alias": [
"Vital Signs",
"Measurement",
"Results",
"Tests",
"SubjectOfCare Client Resident"
],
"constraint": [
{
"key": "dom-2",
"severity": "error",
"human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources",
"expression": "contained.contained.empty()",
"xpath": "not(parent::f:contained and f:contained)",
"source": "http://hl7.org/fhir/StructureDefinition/DomainResource"
},
{
"key": "dom-4",
"severity": "error",
"human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated",
"expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()",
"xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))",
"source": "http://hl7.org/fhir/StructureDefinition/DomainResource"
},
{
"key": "dom-3",
"severity": "error",
"human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource",
"expression": "contained.where(((id.exists() and ('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url)))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(uri) = '#').exists()).not()).trace('unmatched', id).empty()",
"xpath": "not(exists(for $contained in f:contained return $contained[not(exists(parent::*/descendant::f:reference/@value=concat('#', $contained/*/f:id/@value)) or exists(descendant::f:reference[@value='#']))]))",
"source": "http://hl7.org/fhir/StructureDefinition/DomainResource"
},
{
"key": "dom-6",
"severity": "warning",
"human": "A resource should have narrative for robust management",
"expression": "text.`div`.exists()",
"xpath": "exists(f:text/h:div)",
"source": "http://hl7.org/fhir/StructureDefinition/DomainResource"
},
{
"key": "dom-5",
"severity": "error",
"human": "If a resource is contained in another resource, it SHALL NOT have a security label",
"expression": "contained.meta.security.empty()",
"xpath": "not(exists(f:contained/*/f:meta/f:security))",
"source": "http://hl7.org/fhir/StructureDefinition/DomainResource"
},
{
"key": "obs-7",
"severity": "error",
"human": "If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present",
"expression": "value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()",
"xpath": "not(f:*[starts-with(local-name(.), 'value')] and (for $coding in f:code/f:coding return f:component/f:code/f:coding[f:code/@value=$coding/f:code/@value] [f:system/@value=$coding/f:system/@value]))",
"source": "http://hl7.org/fhir/StructureDefinition/Observation"
},
{
"key": "obs-6",
"severity": "error",
"human": "dataAbsentReason SHALL only be present if Observation.value[x] is not present",
"expression": "dataAbsentReason.empty() or value.empty()",
"xpath": "not(exists(f:dataAbsentReason)) or (not(exists(*[starts-with(local-name(.), 'value')])))",
"source": "http://hl7.org/fhir/StructureDefinition/Observation"
}
],
"mapping": [
{
"identity": "workflow",
"map": "Event"
},
{
"identity": "sct-concept",
"map": "< 363787002 |Observable entity|"
},
{
"identity": "v2",
"map": "OBX"
},
{
"identity": "rim",
"map": "Observation[classCode=OBS, moodCode=EVN]"
},
{
"identity": "w5",
"map": "clinical.diagnostics"
},
{
"identity": "rim",
"map": "Patient[classCode=PAT]"
},
{
"identity": "cda",
"map": "ClinicalDocument.recordTarget.patientRole"
},
{
"identity": "w5",
"map": "administrative.individual"
}
]
},
{
"id": "Composition.contained:Patient",
"path": "Composition.contained",
"sliceName": "Patient",
"short": "Contained, inline Resources",
"definition": "These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.",
"min": 1,
"max": "1",
"type": [
{
"code": "Patient",
"profile": [
"http://ihis.sg/StructureDefinition/CareReport-Patient"
]
}
]
},
{
"id": "Composition.contained:Observation",
"path": "Composition.contained",
"sliceName": "Observation",
"short": "Contained, inline Resources",
"definition": "These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.",
"comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.",
"min": 1,
"type": [
{
"code": "Observation",
"profile": [
"http://ihis.sg/StructureDefinition/CareReportObservation"
]
}
]
},
{
"id": "Composition.extension",
"path": "Composition.extension",
"slicing": {
"rules": "closed"
},
"min": 1,
"max": "1"
},
{
"id": "Composition.extension:extensionCompositionCareReportYear",
"path": "Composition.extension",
"sliceName": "extensionCompositionCareReportYear",
"type": [
{
"code": "Extension",
"profile": [
"http://ihis.sg/extension/care-report-year"
]
}
]
},
{
"id": "Composition.modifierExtension",
"path": "Composition.modifierExtension",
"max": "0"
},
{
"id": "Composition.identifier",
"path": "Composition.identifier",
"max": "0"
},
{
"id": "Composition.status",
"path": "Composition.status",
"fixedCode": "final"
},
{
"id": "Composition.type",
"path": "Composition.type",
"binding": {
"strength": "required",
"valueSet": "http://ihis.sg/ValueSet/hsg-document-type"
}
},
{
"id": "Composition.type.coding",
"path": "Composition.type.coding",
"min": 1
},
{
"id": "Composition.type.coding.system",
"path": "Composition.type.coding.system",
"min": 1
},
{
"id": "Composition.type.coding.code",
"path": "Composition.type.coding.code",
"min": 1,
"fixedCode": "care-report"
},
{
"id": "Composition.category",
"path": "Composition.category",
"max": "0"
},
{
"id": "Composition.subject",
"path": "Composition.subject",
"min": 1,
"type": [
{
"code": "Reference",
"targetProfile": [
"http://ihis.sg/StructureDefinition/CareReport-Patient"
],
"aggregation": [
"contained"
]
}
]
},
{
"id": "Composition.subject.id",
"path": "Composition.subject.id",
"max": "0"
},
{
"id": "Composition.subject.extension",
"path": "Composition.subject.extension",
"max": "0"
},
{
"id": "Composition.subject.reference",
"path": "Composition.subject.reference",
"min": 1
},
{
"id": "Composition.subject.type",
"path": "Composition.subject.type",
"max": "0"
},
{
"id": "Composition.subject.identifier",
"path": "Composition.subject.identifier",
"max": "0"
},
{
"id": "Composition.subject.display",
"path": "Composition.subject.display",
"max": "0"
},
{
"id": "Composition.encounter",
"path": "Composition.encounter",
"max": "0"
},
{
"id": "Composition.author",
"path": "Composition.author",
"max": "1"
},
{
"id": "Composition.author.identifier",
"path": "Composition.author.identifier",
"min": 1
},
{
"id": "Composition.author.identifier.system",
"path": "Composition.author.identifier.system",
"min": 1,
"fixedUri": "http://ihis.sg/identifier/mcr"
},
{
"id": "Composition.author.identifier.value",
"path": "Composition.author.identifier.value",
"min": 1,
"condition": [
"empty-value-validation"
],
"constraint": [
{
"key": "empty-value-validation",
"severity": "error",
"human": "Author identifier value should not be empty",
"expression": "$this.length() > 0"
}
]
},
{
"id": "Composition.title",
"path": "Composition.title",
"condition": [
"empty-value-validation"
],
"constraint": [
{
"key": "empty-value-validation",
"severity": "error",
"human": "Title should not be empty",
"expression": "$this.length() > 0"
}
]
},
{
"id": "Composition.attester",
"path": "Composition.attester",
"max": "0"
},
{
"id": "Composition.custodian",
"path": "Composition.custodian",
"min": 1
},
{
"id": "Composition.custodian.type",
"path": "Composition.custodian.type",
"min": 1,
"fixedUri": "Organization"
},
{
"id": "Composition.custodian.identifier",
"path": "Composition.custodian.identifier",
"min": 1
},
{
"id": "Composition.custodian.identifier.system",
"path": "Composition.custodian.identifier.system",
"min": 1,
"fixedUri": "http://ihis.sg/identifier/hci-code"
},
{
"id": "Composition.custodian.identifier.value",
"path": "Composition.custodian.identifier.value",
"min": 1,
"condition": [
"empty-value-validation"
],
"constraint": [
{
"key": "empty-value-validation",
"severity": "error",
"human": "Organization identifier value should not be empty",
"expression": "$this.length() > 0"
}
]
},
{
"id": "Composition.relatesTo",
"path": "Composition.relatesTo",
"max": "0"
},
{
"id": "Composition.event",
"path": "Composition.event",
"max": "0"
},
{
"id": "Composition.section",
"path": "Composition.section",
"min": 1
},
{
"id": "Composition.section.code.coding",
"path": "Composition.section.code.coding",
"max": "1"
}
]
}
}