SFM Basis API Implementation Guide

sfm-MedicationComposition

Profile on Composition to represent medication and prescription information exchange between EHR and National systems:

This composition will define the document bundle sfm-MedicaitonBundle used as both response to $getMedication and as parameter to $sendMedication.

TODO: Coding for the ´type´ parameter is still under discussion. 11503-0 Medicinal records is used preliminary: https://www.hl7.org/fhir/valueset-doc-typecodes.html

Whenever a section with minimum cardinality above 0 is empty, it shall be popupulated with emptyReason from the prefered code system: http://terminology.hl7.org/CodeSystem/list-empty-reason The codes: nilknown, witheld or unavailable will be used for $getMedication response, and nilknown shall be used for $sendMedication parameter. According to rule in Composition :

  • Rule: A section must contain at least one of text, entries, or sub-sections

a text entry must be present together with emptyReason. This field will not carry meaning.

When used as a result of $getMedication:

  • subject=Patient is embedded as a local resource in the outer bundle
  • author=Practitioner is embedded, but is refered as an API resorce to the practitioner performing the operation
  • attester is not used

When used as input for $sendMedication:

  • subject=Patient is embedded as a local resource in the outer bundle
  • author=Practitioner is embedded, but is refered as an API resorce to the practitioner performing the operation
  • attester/Practitioner: mode=legal, party reference to API resource is sufficient (but MAY be included in bundle)
  • attester/Organization: mode=official, party reference to API resources is sufficient (but MAY be inclided in bundle=

Not used:

  • encounter
  • confidentiality
  • custodian
  • relatesTo
  • event

Profile

sfm-MedicationComposition

idΣ0..1id
metaΣ0..1Meta
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
extensionI0..*Extension
modifierExtension?! I0..*Extension
identifierΣ0..1Identifier
statusΣ ?!1..1codeBinding
typeΣ1..1CodeableConceptBinding
categoryΣ0..*CodeableConcept
subjectS Σ I1..1Reference(sfm-Patient)
encounterΣ I0..1Reference(Encounter)
dateΣ1..1dateTime
authorΣ I1..*Reference(Device | Organization | sfm-Practitioner)
titleΣ1..1string
confidentialityΣ0..1codeBinding
id0..1
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
mode1..1codeBinding
time0..1dateTime
partyI0..1Reference(Patient | RelatedPerson | Practitioner | PractitionerRole | Organization)
id0..1
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
mode1..1codeBinding
time0..1dateTime
partyI0..1Reference(sfm-Practitioner)
id0..1
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
mode1..1codeBinding
time0..1dateTime
partyI0..1Reference(http://example.org/fhir/StructureDefinition/sfm-Organization)
custodianΣ I0..1Reference(Organization)
id0..1
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
code1..1codeBinding
targetIdentifierIdentifier
targetReferenceReference(Composition)
id0..1
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
codeΣ0..*CodeableConcept
periodΣ I0..1Period
detailΣ I0..*Reference(Resource)
id0..1
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
title0..1string
code0..1CodeableConcept
authorI0..*Reference(Practitioner | PractitionerRole | Device | Patient | RelatedPerson | Organization)
focusI0..1Reference(Resource)
textI0..1Narrative
mode0..1codeBinding
orderedBy0..1CodeableConceptBinding
entryI0..*Reference(Resource)
emptyReasonI0..1CodeableConceptBinding
sectionI0..*see (section)
id0..1
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
title0..1string
id0..1
extensionI0..*Extension
id0..1
extensionI0..*Extension
systemΣ0..1uriFixed Value
versionΣ0..1string
codeΣ0..1codeFixed Value
displayΣ0..1string
userSelectedΣ0..1boolean
textΣ0..1string
authorI0..*Reference(Practitioner | PractitionerRole | Device | Patient | RelatedPerson | Organization)
focusI0..1Reference(Resource)
textI0..1Narrative
mode0..1codeBinding
orderedBy0..1CodeableConceptBinding
entryI0..3Reference(sfm-PLL-info)
emptyReasonI0..1CodeableConceptBinding
sectionI0..*see (section)
id0..1
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
title0..1string
id0..1
extensionI0..*Extension
id0..1
extensionI0..*Extension
systemΣ0..1uriFixed Value
versionΣ0..1string
codeΣ0..1codeFixed Value
displayΣ0..1string
userSelectedΣ0..1boolean
textΣ0..1string
authorI0..*Reference(Practitioner | PractitionerRole | Device | Patient | RelatedPerson | Organization)
focusI0..1Reference(Resource)
textI0..1Narrative
mode0..1codeBinding
orderedBy0..1CodeableConceptBinding
entryI0..*Reference(sfm-MedicationStatement)
emptyReasonI0..1CodeableConceptBinding
sectionI0..*see (section)
id0..1
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
title0..1string
id0..1
extensionI0..*Extension
id0..1
extensionI0..*Extension
systemΣ0..1uriFixed Value
versionΣ0..1string
codeΣ0..1codeFixed Value
displayΣ0..1string
userSelectedΣ0..1boolean
textΣ0..1string
authorI0..*Reference(Practitioner | PractitionerRole | Device | Patient | RelatedPerson | Organization)
focusI0..1Reference(Resource)
textI0..1Narrative
mode0..1codeBinding
orderedBy0..1CodeableConceptBinding
entryI0..*Reference(sfm-BandaPrescription)
emptyReasonI0..1CodeableConceptBinding
sectionI0..*see (section)
id0..1
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
title0..1string
id0..1
extensionI0..*Extension
id0..1
extensionI0..*Extension
systemΣ0..1uriFixed Value
versionΣ0..1string
codeΣ0..1codeFixed Value
displayΣ0..1string
userSelectedΣ0..1boolean
textΣ0..1string
authorI0..*Reference(Practitioner | PractitionerRole | Device | Patient | RelatedPerson | Organization)
focusI0..1Reference(Resource)
textI0..1Narrative
mode0..1codeBinding
orderedBy0..1CodeableConceptBinding
entryI0..*Reference(KjAllergyIntolerance)
emptyReasonI0..1CodeableConceptBinding
sectionI0..*see (section)
id0..1
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
title0..1string
id0..1
extensionI0..*Extension
id0..1
extensionI0..*Extension
systemΣ0..1uriFixed Value
versionΣ0..1string
codeΣ0..1codeFixed Value
displayΣ0..1string
userSelectedΣ0..1boolean
textΣ0..1string
authorI0..*Reference(Practitioner | PractitionerRole | Device | Patient | RelatedPerson | Organization)
focusI0..1Reference(Resource)
textI0..1Narrative
mode0..1codeBinding
orderedBy0..1CodeableConceptBinding
entryI0..*Reference(sfm-MedicationDispense | sfm-GeneralDispense)
emptyReasonI0..1CodeableConceptBinding
sectionI0..*see (section)