Type antwoorden
In een QuestionnaireResponse kunnen items een ‘antwoord’ krijgen. Deze kunnen verschillende typen hebben.
Boolean
<item>
<linkId value="cpr"/>
<answer>
<valueBoolean value="true"/>
</answer>
</item>
<item>
<linkId value="died"/>
<answer>
<valueBoolean value="false"/>
</answer>
</item>
Integer
Veruit de meeste waarden moeten aangeleverd worden inclusief eenheid. Wanneer er geen eenheid is, bijvoorbeeld bij een pijnscore, kan het valueInteger type als answer worden gebruikt. Hieronder een voorbeeld.
<item>
<linkId value="pijn_score"/>
<answer>
<valueInteger value="11"/>
</answer>
</item>
Decimal
Net als de integer, wordt ook het decimal type nauwelijks gebruikt omdat de meeste waarden, van het Quantity Type moet zijn. Helaas is er geen mogelijkheid (zonder fhir-extensions) om het aantal decimalen op te geven of controleren.
<item>
<linkId value="voorbeeldVeld"/>
<answer>
<valueDecimal value="78.21"/>
</answer>
</item>
Date
Date is een datum zonder tijdsaanduiding. De datum volgt altijd het formaat yyyy-mm-dd. Een andere vorm is niet geldig.
<item>
<linkId value="adm_hosp"/>
<answer>
<valueDate value="2020-11-18"/>
</answer>
</item>
DateTime
Date is een datum inclusief tijdsaanduiding. FHIR schrijft hiervoor dat ook de timezone wordt meegegeven. In het voorbeeld hieronder kan je de ‘+01:00’ achter de tijd zien. Het specifieke formaat is hier te vinden.
<item>
<linkId value="adm_icu"/>
<answer>
<valueDateTime value="2020-04-01T13:28:17+01:00"/>
</answer>
</item>
Time
Om alleen een tijd op te gegeven, dus zonder datum kan dit type gebruikt worden. In de NICE registratie wordt dit type alleen gebruikt (vooralsnog) bij het opgeven van de starttijden van de dienst in de mds_year. De standaard schrijft voor dat het formaat hh:mm:ss is.
<item>
<linkId value="start_dagdienst"/>
<answer>
<valueTime value="07:15:00"/>
</answer>
</item>
String
Voor teksten. Zoals het geëncrypteerd patno
<item>
<linkId value="patno"/>
<answer>
<valueString value="ABCMDEHDJMFHKAF"/>
</answer>
</item>
Null / leeg / niet gescoord
Wanneer een veld geen waarde heeft, omdat er bijv. geen lab-meting heeft plaatsgevonden, dan mag het hele item weggelaten worden volgens de FHIR standaard. Een tweede optie is om het item wel op te nemen, maar dan zonder antwoord zoals in het onderstaande voorbeeld.
<item>
<linkId value="album_min"/>
<!-- answer is weggelaten en wordt daardoor als null geintepreteerd. -->
</item>
Ook als er wel een answer is, maar deze verder niks bevat, wordt het bericht geaccepteeerd.
<item>
<linkId value="album_min"/>
<answer>
<!-- answer is aanwezig maar leeg -->
</answer>
</item>
Tevens mag er ook een valueString veld in zitten maar deze mag geen value bevatten.
<item>
<linkId value="album_min"/>
<answer>
<valueString/>
</answer>
</item>
Fout voorbeeld
Indien valueString wel een value heeft en deze is leeg:
<item>
<linkId value="album_min"/>
<answer>
<valueString value=""/>
</answer>
</item>
zal een error worden teruggegeven:
<OperationOutcome xmlns="http://hl7.org/fhir">
<issue>
<severity value="error"></severity>
<code value="processing"></code>
<diagnostics value="Failed to parse request body as XML resource. Error was: DataFormatException at [Line number = 406
Column number = 32
System Id = null
Public Id = null
Location Uri= null
CharacterOffset = 9777
]: [element="valueString"] Invalid attribute value "": Attribute value must not be empty ("")"></diagnostics>
Niet gebruikte types
In deze versie wordt er geen gebruik gemaakt van de volgende datatypes:
- valueUri
- valueAttachment
- valueReference