SGHI FHIR Profile Implementation Guide
0.1.0 - ci-build

SGHI FHIR Profile Implementation Guide, published by Kathurima Kimathi. This guide is not an authorized publication; it is the continuous build for version 0.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/savannahghi/sil_fhir_profile_ig/ and changes regularly. See the Directory of published versions

## Data Type Profile: SGHIAnnotation - XML Profile

Draft as of 2026-05-21

XML representation of the annotation data type profile.

Raw xml | Download

    <StructureDefinition xmlns="http://hl7.org/fhir">
      <id value="annotation"/>
      <text>
        <status value="extensions"/>
        <div xmlns="http://www.w3.org/1999/xhtml"><p class="res-header-id"><b>Generated Narrative: StructureDefinition annotation</b></p><a name="annotation"> </a><a name="hcannotation"> </a><table border="0" cellpadding="0" cellspacing="0" style="border: 0px #F0F0F0 solid; font-size: 11px; font-family: verdana; vertical-align: top;"><tr style="border: 1px #F0F0F0 solid; font-size: 11px; font-family: verdana; vertical-align: top"><th style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; padding-top: 3px; padding-bottom: 3px" class="hierarchy"><a href="https://build.fhir.org/ig/FHIR/ig-guidance/readingIgs.html#table-views" title="The logical name of the element">Name</a></th><th style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; padding-top: 3px; padding-bottom: 3px" class="hierarchy"><a href="https://build.fhir.org/ig/FHIR/ig-guidance/readingIgs.html#table-views" title="Information about the use of the element">Flags</a></th><th style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; padding-top: 3px; padding-bottom: 3px" class="hierarchy"><a href="https://build.fhir.org/ig/FHIR/ig-guidance/readingIgs.html#table-views" title="Minimum and Maximum # of times the element can appear in the instance">Card.</a></th><th style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; padding-top: 3px; padding-bottom: 3px; width: 100px" class="hierarchy"><a href="https://build.fhir.org/ig/FHIR/ig-guidance/readingIgs.html#table-views" title="Reference to the type of the element">Type</a></th><th style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; padding-top: 3px; padding-bottom: 3px" class="hierarchy"><a href="https://build.fhir.org/ig/FHIR/ig-guidance/readingIgs.html#table-views" title="Additional information about the element">Description &amp; Constraints</a><span style="float: right"><a href="https://build.fhir.org/ig/FHIR/ig-guidance/readingIgs.html#table-views" title="Legend for this format"><img src="data:image/png;base64, " alt="doco" style="background-color: inherit"/></a></span></th></tr><tr style="border: 0px #F0F0F0 solid; padding:0px; vertical-align: top; background-color: white"><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; white-space: nowrap; background-image: url(tbl_bck1.png)" class="hierarchy"><img src="tbl_spacer.png" alt="." style="background-color: inherit" class="hierarchy"/><img src="icon_element.gif" alt="." style="background-color: white; background-color: inherit" title="Element" class="hierarchy"/> <a href="StructureDefinition-annotation-definitions.html#Annotation">Annotation</a><a name="Annotation"> </a></td><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"/><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"><span style="opacity: 0.5">0</span><span style="opacity: 0.5">..</span><span style="opacity: 0.5">*</span></td><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"><a href="http://hl7.org/fhir/R5/datatypes.html#Annotation">Annotation</a></td><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"><span style="opacity: 0.5">Text node with attribution</span></td></tr>
    <tr style="border: 0px #F0F0F0 solid; padding:0px; vertical-align: top; background-color: #F7F7F7"><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; white-space: nowrap; background-image: url(tbl_bck13.png)" class="hierarchy"><img src="tbl_spacer.png" alt="." style="background-color: inherit" class="hierarchy"/><img src="tbl_vjoin.png" alt="." style="background-color: inherit" class="hierarchy"/><img src="icon_slice.png" alt="." style="background-color: #F7F7F7; background-color: inherit" title="Slice Definition" class="hierarchy"/> <a style="font-style: italic; font-style: italic" href="StructureDefinition-annotation-definitions.html#Annotation.author[x]">Slices for author[x]</a><a name="Annotation.author_x_"> </a></td><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"/><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"><span style="font-style: italic"/><span style="opacity: 0.5; font-style: italic">0</span><span style="opacity: 0.5; font-style: italic">..</span><span style="opacity: 0.5; font-style: italic">1</span></td><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"><a style="font-style: italic; font-style: italic" href="http://hl7.org/fhir/R5/references.html">Reference</a><span style="font-style: italic">(</span><a style="opacity: 0.5; font-style: italic; opacity: 0.5; font-style: italic" href="http://hl7.org/fhir/R5/practitioner.html">Practitioner</a><span style="font-style: italic"> | </span><a style="opacity: 0.5; font-style: italic; opacity: 0.5; font-style: italic" href="http://hl7.org/fhir/R5/practitionerrole.html">PractitionerRole</a><span style="font-style: italic"> | </span><a style="opacity: 0.5; font-style: italic; opacity: 0.5; font-style: italic" href="http://hl7.org/fhir/R5/patient.html">Patient</a><span style="font-style: italic"> | </span><a style="opacity: 0.5; font-style: italic; opacity: 0.5; font-style: italic" href="http://hl7.org/fhir/R5/relatedperson.html">RelatedPerson</a><span style="font-style: italic"> | </span><a style="opacity: 0.5; font-style: italic; opacity: 0.5; font-style: italic" href="http://hl7.org/fhir/R5/organization.html">Organization</a><span style="font-style: italic">)</span><span style="opacity: 0.5; font-style: italic">, </span><a style="opacity: 0.5; font-style: italic; opacity: 0.5; font-style: italic" href="http://hl7.org/fhir/R5/datatypes.html#string">string</a></td><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"><span style="opacity: 0.5; font-style: italic">Individual responsible for the annotation</span><br style="font-style: italic"/><span style="font-weight:bold; font-style: italic">Slice: </span><span style="font-style: italic">Unordered, Open by type:$this</span></td></tr>
    <tr style="border: 0px #F0F0F0 solid; padding:0px; vertical-align: top; background-color: white"><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; white-space: nowrap; background-image: url(tbl_bck124.png)" class="hierarchy"><img src="tbl_spacer.png" alt="." style="background-color: inherit" class="hierarchy"/><img src="tbl_vline.png" alt="." style="background-color: inherit" class="hierarchy"/><img src="tbl_vjoin_end_slicer.png" alt="." style="background-color: inherit" class="hierarchy"/><img src="icon_slice_item.png" alt="." style="background-color: white; background-color: inherit" title="Slice Item" class="hierarchy"/> <a href="StructureDefinition-annotation-definitions.html#Annotation.author[x]:authorReference" title="Slice authorReference">author[x]:authorReference</a><a name="Annotation.author_x_.2"> </a></td><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"/><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy">0..1</td><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"><a href="StructureDefinition-reference.html" title="SGHI Reference">SGHIReference</a>(<a href="http://hl7.org/fhir/R5/practitioner.html">Practitioner</a> | <a href="http://hl7.org/fhir/R5/practitionerrole.html">PractitionerRole</a>)</td><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"><span style="opacity: 0.5">Individual responsible for the annotation</span></td></tr>
    <tr style="border: 0px #F0F0F0 solid; padding:0px; vertical-align: top; background-color: #F7F7F7"><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; white-space: nowrap; background-image: url(tbl_bck00.png)" class="hierarchy"><img src="tbl_spacer.png" alt="." style="background-color: inherit" class="hierarchy"/><img src="tbl_vjoin_end.png" alt="." style="background-color: inherit" class="hierarchy"/><img src="icon_element.gif" alt="." style="background-color: #F7F7F7; background-color: inherit" title="Element" class="hierarchy"/> <a href="StructureDefinition-annotation-definitions.html#Annotation.time">time</a><a name="Annotation.time"> </a></td><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"/><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy">1..<span style="opacity: 0.5">1</span></td><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"><a style="opacity: 0.5; opacity: 0.5" href="http://hl7.org/fhir/R5/datatypes.html#dateTime">dateTime</a></td><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"><span style="opacity: 0.5">When the annotation was made</span></td></tr>
    <tr><td colspan="5" class="hierarchy"><br/><a href="https://build.fhir.org/ig/FHIR/ig-guidance/readingIgs.html#table-views" title="Legend for this format"><img src="data:image/png;base64, " alt="doco" style="background-color: inherit"/> Documentation for this format</a></td></tr></table></div>
      </text>
      <extension
                 url="http://hl7.org/fhir/StructureDefinition/structuredefinition-type-characteristics">
        <valueCode value="has-size"/>
      </extension>
      <url
           value="https://fhir.slade360.co.ke/fhir/StructureDefinition/annotation"/>
      <version value="0.1.0"/>
      <name value="SGHIAnnotation"/>
      <title value="SGHI Annotation"/>
      <status value="draft"/>
      <date value="2026-05-21T09:38:13+00:00"/>
      <publisher value="Kathurima Kimathi"/>
      <contact>
        <name value="Kathurima Kimathi"/>
        <telecom>
          <system value="url"/>
          <value value="https://www.linkedin.com/in/kathurima-kimathi/"/>
        </telecom>
        <telecom>
          <system value="email"/>
          <value value="kathurimakimathi415@gmail.com"/>
        </telecom>
      </contact>
      <contact>
        <name value="Oscar John"/>
        <telecom>
          <system value="email"/>
          <value value="oscarjohnotieno@gmail.com"/>
          <use value="work"/>
        </telecom>
      </contact>
      <contact>
        <name value="Kennedy Omondi"/>
        <telecom>
          <system value="email"/>
          <value value="kennankole@gmail.com"/>
          <use value="work"/>
        </telecom>
      </contact>
      <description
                   value="A text note which also contains information about who made the statement and when."/>
      <fhirVersion value="5.0.0"/>
      <mapping>
        <identity value="v2"/>
        <uri value="http://hl7.org/v2"/>
        <name value="HL7 V2 Mapping"/>
      </mapping>
      <mapping>
        <identity value="rim"/>
        <uri value="http://hl7.org/v3"/>
        <name value="RIM Mapping"/>
      </mapping>
      <kind value="complex-type"/>
      <abstract value="false"/>
      <type value="Annotation"/>
      <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Annotation"/>
      <derivation value="constraint"/>
      <snapshot>
        <extension
                   url="http://hl7.org/fhir/tools/StructureDefinition/snapshot-base-version">
          <valueString value="5.0.0"/>
        </extension>
        <element id="Annotation">
          <path value="Annotation"/>
          <short value="Text node with attribution"/>
          <definition
                      value="A  text note which also  contains information about who made the statement and when."/>
          <comment
                   value="For systems that do not have structured annotations, they can simply communicate a single annotation with no author or time.  This element may need to be included in narrative because of the potential for modifying information.  *Annotations SHOULD NOT* be used to communicate &quot;modifying&quot; information that could be computable. (This is a SHOULD because enforcing user behavior is nearly impossible)."/>
          <min value="0"/>
          <max value="*"/>
          <base>
            <path value="Annotation"/>
            <min value="0"/>
            <max value="*"/>
          </base>
          <constraint>
            <key value="ele-1"/>
            <severity value="error"/>
            <human value="All FHIR elements must have a @value or children"/>
            <expression
                        value="hasValue() or (children().count() &gt; id.count())"/>
            <source value="http://hl7.org/fhir/StructureDefinition/Element"/>
          </constraint>
          <isModifier value="false"/>
          <mapping>
            <identity value="rim"/>
            <map value="n/a,Act"/>
          </mapping>
          <mapping>
            <identity value="v2"/>
            <map value="N/A"/>
          </mapping>
        </element>
        <element id="Annotation.id">
          <path value="Annotation.id"/>
          <representation value="xmlAttr"/>
          <short value="Unique id for inter-element referencing"/>
          <definition
                      value="Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces."/>
          <min value="0"/>
          <max value="1"/>
          <base>
            <path value="Element.id"/>
            <min value="0"/>
            <max value="1"/>
          </base>
          <type>
            <extension
                       url="http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type">
              <valueUrl value="id"/>
            </extension>
            <code value="http://hl7.org/fhirpath/System.String"/>
          </type>
          <condition value="ele-1"/>
          <isModifier value="false"/>
          <isSummary value="false"/>
          <mapping>
            <identity value="rim"/>
            <map value="n/a"/>
          </mapping>
        </element>
        <element id="Annotation.extension">
          <path value="Annotation.extension"/>
          <slicing>
            <discriminator>
              <type value="value"/>
              <path value="url"/>
            </discriminator>
            <description value="Extensions are always sliced by (at least) url"/>
            <rules value="open"/>
          </slicing>
          <short value="Additional content defined by implementations"/>
          <definition
                      value="May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension."/>
          <comment
                   value="There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone."/>
          <alias value="extensions"/>
          <alias value="user content"/>
          <min value="0"/>
          <max value="*"/>
          <base>
            <path value="Element.extension"/>
            <min value="0"/>
            <max value="*"/>
          </base>
          <type>
            <code value="Extension"/>
          </type>
          <constraint>
            <key value="ele-1"/>
            <severity value="error"/>
            <human value="All FHIR elements must have a @value or children"/>
            <expression
                        value="hasValue() or (children().count() &gt; id.count())"/>
            <source value="http://hl7.org/fhir/StructureDefinition/Element"/>
          </constraint>
          <constraint>
            <key value="ext-1"/>
            <severity value="error"/>
            <human value="Must have either extensions or value[x], not both"/>
            <expression value="extension.exists() != value.exists()"/>
            <source value="http://hl7.org/fhir/StructureDefinition/Extension"/>
          </constraint>
          <isModifier value="false"/>
          <isSummary value="false"/>
          <mapping>
            <identity value="rim"/>
            <map value="n/a"/>
          </mapping>
        </element>
        <element id="Annotation.author[x]">
          <path value="Annotation.author[x]"/>
          <slicing>
            <discriminator>
              <type value="type"/>
              <path value="$this"/>
            </discriminator>
            <ordered value="false"/>
            <rules value="open"/>
          </slicing>
          <short value="Individual responsible for the annotation"/>
          <definition
                      value="The individual responsible for making the annotation."/>
          <comment
                   value="Organization is used when there's no need for specific attribution as to who made the comment."/>
          <min value="0"/>
          <max value="1"/>
          <base>
            <path value="Annotation.author[x]"/>
            <min value="0"/>
            <max value="1"/>
          </base>
          <type>
            <code value="Reference"/>
            <targetProfile
                           value="http://hl7.org/fhir/StructureDefinition/Practitioner|5.0.0"/>
            <targetProfile
                           value="http://hl7.org/fhir/StructureDefinition/PractitionerRole|5.0.0"/>
            <targetProfile
                           value="http://hl7.org/fhir/StructureDefinition/Patient|5.0.0"/>
            <targetProfile
                           value="http://hl7.org/fhir/StructureDefinition/RelatedPerson|5.0.0"/>
            <targetProfile
                           value="http://hl7.org/fhir/StructureDefinition/Organization|5.0.0"/>
          </type>
          <type>
            <code value="string"/>
          </type>
          <constraint>
            <key value="ele-1"/>
            <severity value="error"/>
            <human value="All FHIR elements must have a @value or children"/>
            <expression
                        value="hasValue() or (children().count() &gt; id.count())"/>
            <source value="http://hl7.org/fhir/StructureDefinition/Element"/>
          </constraint>
          <isModifier value="false"/>
          <isSummary value="true"/>
          <mapping>
            <identity value="v2"/>
            <map value="N/A"/>
          </mapping>
          <mapping>
            <identity value="rim"/>
            <map value="Act.participant[typeCode=AUT].role"/>
          </mapping>
        </element>
        <element id="Annotation.author[x]:authorReference">
          <path value="Annotation.author[x]"/>
          <sliceName value="authorReference"/>
          <short value="Individual responsible for the annotation"/>
          <definition
                      value="The individual responsible for making the annotation."/>
          <comment
                   value="Organization is used when there's no need for specific attribution as to who made the comment."/>
          <min value="0"/>
          <max value="1"/>
          <base>
            <path value="Annotation.author[x]"/>
            <min value="0"/>
            <max value="1"/>
          </base>
          <type>
            <code value="Reference"/>
            <profile
                     value="https://fhir.slade360.co.ke/fhir/StructureDefinition/reference"/>
            <targetProfile
                           value="http://hl7.org/fhir/StructureDefinition/Practitioner"/>
            <targetProfile
                           value="http://hl7.org/fhir/StructureDefinition/PractitionerRole"/>
          </type>
          <constraint>
            <key value="ele-1"/>
            <severity value="error"/>
            <human value="All FHIR elements must have a @value or children"/>
            <expression
                        value="hasValue() or (children().count() &gt; id.count())"/>
            <source value="http://hl7.org/fhir/StructureDefinition/Element"/>
          </constraint>
          <isModifier value="false"/>
          <isSummary value="true"/>
          <mapping>
            <identity value="v2"/>
            <map value="N/A"/>
          </mapping>
          <mapping>
            <identity value="rim"/>
            <map value="Act.participant[typeCode=AUT].role"/>
          </mapping>
        </element>
        <element id="Annotation.time">
          <path value="Annotation.time"/>
          <short value="When the annotation was made"/>
          <definition
                      value="Indicates when this particular annotation was made."/>
          <min value="1"/>
          <max value="1"/>
          <base>
            <path value="Annotation.time"/>
            <min value="0"/>
            <max value="1"/>
          </base>
          <type>
            <code value="dateTime"/>
          </type>
          <constraint>
            <key value="ele-1"/>
            <severity value="error"/>
            <human value="All FHIR elements must have a @value or children"/>
            <expression
                        value="hasValue() or (children().count() &gt; id.count())"/>
            <source value="http://hl7.org/fhir/StructureDefinition/Element"/>
          </constraint>
          <isModifier value="false"/>
          <isSummary value="true"/>
          <mapping>
            <identity value="v2"/>
            <map value="N/A"/>
          </mapping>
          <mapping>
            <identity value="rim"/>
            <map value="Act.effectiveTime"/>
          </mapping>
        </element>
        <element id="Annotation.text">
          <path value="Annotation.text"/>
          <short value="The annotation  - text content (as markdown)"/>
          <definition value="The text of the annotation in markdown format."/>
          <min value="1"/>
          <max value="1"/>
          <base>
            <path value="Annotation.text"/>
            <min value="1"/>
            <max value="1"/>
          </base>
          <type>
            <code value="markdown"/>
          </type>
          <constraint>
            <key value="ele-1"/>
            <severity value="error"/>
            <human value="All FHIR elements must have a @value or children"/>
            <expression
                        value="hasValue() or (children().count() &gt; id.count())"/>
            <source value="http://hl7.org/fhir/StructureDefinition/Element"/>
          </constraint>
          <isModifier value="false"/>
          <isSummary value="true"/>
          <mapping>
            <identity value="v2"/>
            <map value="N/A"/>
          </mapping>
          <mapping>
            <identity value="rim"/>
            <map value="Act.text"/>
          </mapping>
        </element>
      </snapshot>
      <differential>
        <element id="Annotation">
          <path value="Annotation"/>
        </element>
        <element id="Annotation.author[x]">
          <path value="Annotation.author[x]"/>
          <slicing>
            <discriminator>
              <type value="type"/>
              <path value="$this"/>
            </discriminator>
            <ordered value="false"/>
            <rules value="open"/>
          </slicing>
        </element>
        <element id="Annotation.author[x]:authorReference">
          <path value="Annotation.author[x]"/>
          <sliceName value="authorReference"/>
          <min value="0"/>
          <max value="1"/>
          <type>
            <code value="Reference"/>
            <profile
                     value="https://fhir.slade360.co.ke/fhir/StructureDefinition/reference"/>
            <targetProfile
                           value="http://hl7.org/fhir/StructureDefinition/Practitioner"/>
            <targetProfile
                           value="http://hl7.org/fhir/StructureDefinition/PractitionerRole"/>
          </type>
        </element>
        <element id="Annotation.time">
          <path value="Annotation.time"/>
          <min value="1"/>
        </element>
      </differential>
    </StructureDefinition>