Gebz:V2.3 FHIR IG Retrieve: verschil tussen versies

Uit informatiestandaarden
Naar navigatie springen Naar zoeken springen
(Nieuwe pagina aangemaakt met '{{IssueBox|Dit materiaal is in ontwikkeling en nog niet geschikt voor gebruik!}} {{#customtitle:FHIR Implementation Guide Geboortezorg v2.3 Retrieve view| FHIR Impl...')
 
Regel 24: Regel 24:
  
 
==Retrieval table==
 
==Retrieval table==
 +
Under construction
 +
 +
{| class="wikitable"
 +
|-
 +
! methode !! toelichting !! voordelen !! nadelen
 +
|-
 +
|| XML
 +
|| Genereren van een XML bestand uit ART-DECOR door op basis van de betreffende transactie alle elementen en bijhorende FHIR-mappingen / requests op te halen. Het XML bestand kan vervolgens door leveranciers (automatisch) worden uitgelezen.
 +
|| Relatief eenvoudige oplossing
 +
Sluit aan bij ART-DECOR data definitie
 +
Onderhoud op 1 plek in ART-DECOR
 +
||
 +
|-
 +
|| FHIR
 +
|| Retrieval table als FHIR resource instance beschikbaar stellen op de FHIR server (C).
 +
|| Definities beschikbaar op FHIR server
 +
|| Nog onduidelijk welke resource hiervoor het meest geschikt is, geen resource die 1 op 1 dit doel dient
 +
Maakt de oplossing complexer en mogelijk lastiger voor leveranciers om te implementeren
 +
Vergt onderhoud op de C server bij wijzigingen in transacties (hier evt ook FHIR instances genereren via ART-DECOR mogelijk)
 +
|-
 +
|| TouchStone
 +
|| Uitlezen operations uit FHIR TestScripts in TouchStone. Per transaction is er een TestScript beschikbaar die alle requests test die een server moet kunnen uitvoeren.
 +
|| Relatief eenvoudige oplossing
 +
Geen extra werk nodig
 +
|| Koppeling naar data definitie in ART-DECOR ontbreekt (zou evt als label toegevoegd kunnen worden)
 +
Toegang tot TouchStone nodig
 +
|}
 +
 +
===Voorbeelden===
 +
 +
====XML====
 +
Hieronder een voorbeeld van hoe de XML voor de transactie Prio 1 huidige zwangerschap er uit zou kunnen komen te zien.
 +
 +
<syntaxhighlight lang="xml" heading="XML fragment">
 +
<?xml version="1.0" encoding="UTF-8"?>
 +
<dataset id="2.16.840.1.113883.2.4.3.11.60.90.77.1.6" effectiveDate="2016-09-08T00:00:00"
 +
    statusCode="draft" prefix="peri20-" transactionId="2.16.840.1.113883.2.4.3.11.60.90.77.4.2493"
 +
    transactionEffectiveDate="2020-01-08T13:13:15" transactionStatusCode="draft"
 +
    transactionType="stationary" transactionIddisplay="peri-transaction-2493"
 +
    shortName="prio1_huidige_zwangerschap" iddisplay="peri23-dataset-">
 +
    <name language="nl-NL">Prio1 huidige zwangerschap</name>
 +
    <desc language="nl-NL"/>
 +
    <concept id="2.16.840.1.113883.2.4.3.11.60.90.77.2.6.2" statusCode="draft"
 +
        effectiveDate="2016-09-08T00:00:00" type="group" minimumMultiplicity="1"
 +
        maximumMultiplicity="1" conformance="R" isMandatory="false" iddisplay="peri23-dataelement-2"
 +
        shortName="vrouw">
 +
        <name language="nl-NL">Vrouw</name>
 +
        <desc language="nl-NL"> Vrouw die obstetrische zorgdiensten afneemt / heeft afgenomen. </desc>
 +
        <community name="fhirmapping">
 +
            <request>
 +
                <method value="GET"/>
 +
                <url value="Patient?identifier=[BSN]"/>
 +
            </request>
 +
        </community>
 +
    </concept>
 +
    <concept>
 +
        <name language="nl-NL">Zwangerschapsdossier</name>
 +
        <community name="fhirmapping">
 +
            <request>
 +
                <method value="GET"/>
 +
                <url value="EpisodeOfCare?patient=[VrouwID]"/>
 +
            </request>
 +
        </community>   
 +
    </concept>
 +
    <concept id="2.16.840.1.113883.2.4.3.11.60.90.77.2.6.10020" statusCode="draft"
 +
        effectiveDate="2016-09-08T00:00:00" type="group" minimumMultiplicity="1"
 +
        maximumMultiplicity="1" conformance="R" isMandatory="false"
 +
        iddisplay="peri23-dataelement-10020" shortName="zorginstelling">
 +
        <name language="nl-NL">Zorginstelling</name>
 +
        <desc language="nl-NL"> Organisatie (instelling) die de zorg levert / heeft geleverd </desc>
 +
        <community name="fhirmapping">
 +
            <request>
 +
                <method value="GET"/>
 +
                <url value="Organization/[OrganizationID]"/>
 +
            </request>
 +
        </community>
 +
    </concept>
 +
    <concept id="2.16.840.1.113883.2.4.3.11.60.90.77.2.6.10810" statusCode="draft"
 +
        effectiveDate="2016-09-08T00:00:00" type="item" minimumMultiplicity="0"
 +
        maximumMultiplicity="1" conformance="R" isMandatory="false"
 +
        iddisplay="peri23-dataelement-10810" shortName="bloedgroep_vrouw">
 +
        <name language="nl-NL">Bloedgroep vrouw</name>
 +
        <desc language="nl-NL">Bloedgroep van de vrouw</desc>
 +
        <community name="fhirmapping">
 +
            <request>
 +
                <method value="GET"/>
 +
                <url
 +
                    value="Observation?code=http://loinc.org|883-9&amp;patient=[VrouwID]&amp;context=[DossierID]"
 +
                />
 +
            </request>
 +
        </community>
 +
    </concept>
 +
    <concept id="2.16.840.1.113883.2.4.3.11.60.90.77.2.6.10811" statusCode="draft"
 +
        effectiveDate="2016-09-08T00:00:00" type="item" minimumMultiplicity="0"
 +
        maximumMultiplicity="1" conformance="R" isMandatory="false"
 +
        iddisplay="peri23-dataelement-10811" shortName="rhesus_d_factor_vrouw">
 +
        <name language="nl-NL">Rhesus D Factor vrouw</name>
 +
        <desc language="nl-NL">Rhesus D factor van de vrouw</desc>
 +
        <community name="fhirmapping">
 +
            <request>
 +
                <method value="GET"/>
 +
                <url
 +
                    value="Observation?code=http://loinc.org|1305-2&amp;patient=[VrouwID]&amp;context=[DossierID]"
 +
                />
 +
            </request>
 +
        </community>
 +
    </concept>
 +
    <concept id="2.16.840.1.113883.2.4.3.11.60.90.77.2.6.10816" statusCode="draft"
 +
        effectiveDate="2016-09-08T00:00:00" type="item" minimumMultiplicity="0"
 +
        maximumMultiplicity="1" conformance="R" isMandatory="false"
 +
        iddisplay="peri23-dataelement-10816" shortName="rhesus_c_factor">
 +
        <name language="nl-NL">Rhesus c Factor</name>
 +
        <desc language="nl-NL">Rhesus c factor van de vrouw</desc>
 +
        <community name="fhirmapping">
 +
            <request>
 +
                <method value="GET"/>
 +
                <url
 +
                    value="Observation?code=http://loinc.org|718-7&amp;patient=[VrouwID]&amp;context=[DossierID]"
 +
                />
 +
            </request>
 +
        </community>
 +
    </concept>
 +
    <concept id="2.16.840.1.113883.2.4.3.11.60.90.77.2.6.3" statusCode="draft"
 +
        effectiveDate="2016-09-08T00:00:00" type="group" minimumMultiplicity="1"
 +
        maximumMultiplicity="1" conformance="R" isMandatory="false" iddisplay="peri23-dataelement-3"
 +
        shortName="zwangerschap">
 +
        <name language="nl-NL">Zwangerschap</name>
 +
        <desc language="nl-NL"> De al dan niet afgesloten zwangerschap waarop de gegevens betrekking
 +
            hebben. </desc>
 +
        <community name="fhirmapping">
 +
            <request>
 +
                <method value="GET"/>
 +
                <url
 +
                    value="Condition?code=http://snomed.info/sct|364320009&amp;patient=[VrouwID]&amp;context=[DossierID]"
 +
                />
 +
            </request>
 +
        </community>
 +
    </concept>
 +
    <concept id="2.16.840.1.113883.2.4.3.11.60.90.77.2.6.20010" statusCode="final"
 +
        effectiveDate="2016-09-08T00:00:00" type="item" minimumMultiplicity="1"
 +
        maximumMultiplicity="1" conformance="R" isMandatory="false"
 +
        iddisplay="peri23-dataelement-20010" shortName="graviditeit">
 +
        <name language="nl-NL">Graviditeit</name>
 +
        <desc language="nl-NL"> Het aantal keren dat de vrouw zwanger is geworden (inclusief deze). </desc>
 +
        <community name="fhirmapping">
 +
            <request>
 +
                <method value="GET"/>
 +
                <url
 +
                    value="Observation?code=http://loinc.org|11996-6&amp;patient=[VrouwID]&amp;context=[DossierID]"
 +
                />
 +
            </request>
 +
        </community>
 +
    </concept>
 +
    <concept id="2.16.840.1.113883.2.4.3.11.60.90.77.2.6.20153" statusCode="draft"
 +
        effectiveDate="2016-09-08T00:00:00" type="item" minimumMultiplicity="1"
 +
        maximumMultiplicity="1" conformance="R" isMandatory="false"
 +
        iddisplay="peri23-dataelement-20153" shortName="pariteit">
 +
        <name language="nl-NL">Pariteit</name>
 +
        <desc language="nl-NL"> Aantal zwangerschappen die eindigden met een partus (>= 16w 0d / 112
 +
            dagen) </desc>
 +
        <community name="fhirmapping">
 +
            <request>
 +
                <method value="GET"/>
 +
                <url
 +
                    value="Observation?code=http://loinc.org|11977-6&amp;patient=[VrouwID]&amp;context=[DossierID]"
 +
                />
 +
            </request>
 +
        </community>
 +
    </concept>
 +
    <concept id="2.16.840.1.113883.2.4.3.11.60.90.77.2.6.20029" statusCode="draft"
 +
        effectiveDate="2016-09-08T00:00:00" type="group" minimumMultiplicity="1"
 +
        maximumMultiplicity="1" conformance="R" isMandatory="false"
 +
        iddisplay="peri23-dataelement-20029" shortName="a_terme_datum_groep">
 +
        <name language="nl-NL">A terme datum (groep)</name>
 +
        <desc language="nl-NL">A terme datum (groep)</desc>
 +
        <community name="fhirmapping">
 +
            <request>
 +
                <method value="GET"/>
 +
                <url
 +
                    value="Observation?code=http://loinc.org|11778-8&amp;patient=[VrouwID]&amp;context=[DossierID]"
 +
                />
 +
            </request>
 +
        </community>
 +
    </concept>
 +
    <concept id="2.16.840.1.113883.2.4.3.11.60.90.77.2.6.10814" statusCode="draft"
 +
        effectiveDate="2016-09-08T00:00:00" type="item" minimumMultiplicity="1"
 +
        maximumMultiplicity="1" conformance="R" isMandatory="false"
 +
        iddisplay="peri23-dataelement-10814" shortName="hb">
 +
        <name language="nl-NL">Hb</name>
 +
        <desc language="nl-NL">Hb waarde</desc>
 +
        <community name="fhirmapping">
 +
            <request>
 +
                <method value="GET"/>
 +
                <url
 +
                    value="Observation?code=http://loinc.org|718-7&amp;patient=[VrouwID]&amp;context=[DossierID]"
 +
                />
 +
            </request>
 +
        </community>
 +
    </concept>
 +
</dataset>
 +
</syntaxhighlight>
 +
 +
====TouchStone TestScript====
 +
Hieronder een voorbeeld van de opbouw van een test in een TestScript in TouchStone.
 +
 +
<syntaxhighlight lang="xml" heading="XML fragment">
 +
  <test id="01-ServePatient">
 +
    <name value="01-ServePatient"/>
 +
    <description value="Test XIS Server query operation for Patient - XML Format."/>
 +
    <action>
 +
      <operation>
 +
        <label value="peri23-dataelement-2"/> <!-- kan optioneel toegevoegd worden -->
 +
        <type>
 +
          <system value="http://hl7.org/fhir/testscript-operation-codes"/>
 +
          <code value="search"/>
 +
        </type>
 +
        <resource value="Patient"/>
 +
        <description value="Test XIS Server query operation for Patient - XML Format."/>
 +
        <accept value="xml"/>
 +
        <contentType value="none"/>
 +
        <params value="?_identifier=${bsn}"/>
 +
      </operation>
 +
    </action>
 +
</syntaxhighlight>
 +
 
==Translation table==
 
==Translation table==

Versie van 24 apr 2020 11:23

{{#customtitle:FHIR Implementation Guide Geboortezorg v2.3 Retrieve view| FHIR Implementation Guide Geboortezorg v2.3 Retrieve view}}

AfsprakenstelselFunctioneelTechnischAfspraken-Functioneel-Technisch

Introduction

This page details the HL7 FHIR requirements for retrieving a view for a particular use case. Use cases examples are:

  • Regular consultation
  • Obstetric intake
  • Acute referral
  • etc.

Usually the use cases for retrieving views will not match those for registering data one-on-one; however in the first case, Prio1, we've chosen to use the same scenario for registering and retrieving.

Use case: Retrieve Prio1 view

Introduction

The Register Prio1 transaction is requested by the receiving XIS from the registry. The retrieval is facilitated by two tables:

  1. Table with all FHIR resources to be retrieved, along with necessary query parameters
  2. Table with designations of all codes (Snomed CT, LOINC) in a chosen language.

Retrieval table

Under construction

methode toelichting voordelen nadelen
XML Genereren van een XML bestand uit ART-DECOR door op basis van de betreffende transactie alle elementen en bijhorende FHIR-mappingen / requests op te halen. Het XML bestand kan vervolgens door leveranciers (automatisch) worden uitgelezen. Relatief eenvoudige oplossing

Sluit aan bij ART-DECOR data definitie Onderhoud op 1 plek in ART-DECOR

FHIR Retrieval table als FHIR resource instance beschikbaar stellen op de FHIR server (C). Definities beschikbaar op FHIR server Nog onduidelijk welke resource hiervoor het meest geschikt is, geen resource die 1 op 1 dit doel dient

Maakt de oplossing complexer en mogelijk lastiger voor leveranciers om te implementeren Vergt onderhoud op de C server bij wijzigingen in transacties (hier evt ook FHIR instances genereren via ART-DECOR mogelijk)

TouchStone Uitlezen operations uit FHIR TestScripts in TouchStone. Per transaction is er een TestScript beschikbaar die alle requests test die een server moet kunnen uitvoeren. Relatief eenvoudige oplossing

Geen extra werk nodig

Koppeling naar data definitie in ART-DECOR ontbreekt (zou evt als label toegevoegd kunnen worden)

Toegang tot TouchStone nodig

Voorbeelden

XML

Hieronder een voorbeeld van hoe de XML voor de transactie Prio 1 huidige zwangerschap er uit zou kunnen komen te zien.

<?xml version="1.0" encoding="UTF-8"?>
<dataset id="2.16.840.1.113883.2.4.3.11.60.90.77.1.6" effectiveDate="2016-09-08T00:00:00"
    statusCode="draft" prefix="peri20-" transactionId="2.16.840.1.113883.2.4.3.11.60.90.77.4.2493"
    transactionEffectiveDate="2020-01-08T13:13:15" transactionStatusCode="draft"
    transactionType="stationary" transactionIddisplay="peri-transaction-2493"
    shortName="prio1_huidige_zwangerschap" iddisplay="peri23-dataset-">
    <name language="nl-NL">Prio1 huidige zwangerschap</name>
    <desc language="nl-NL"/>
    <concept id="2.16.840.1.113883.2.4.3.11.60.90.77.2.6.2" statusCode="draft"
        effectiveDate="2016-09-08T00:00:00" type="group" minimumMultiplicity="1"
        maximumMultiplicity="1" conformance="R" isMandatory="false" iddisplay="peri23-dataelement-2"
        shortName="vrouw">
        <name language="nl-NL">Vrouw</name>
        <desc language="nl-NL"> Vrouw die obstetrische zorgdiensten afneemt / heeft afgenomen. </desc>
        <community name="fhirmapping">
            <request>
                <method value="GET"/>
                <url value="Patient?identifier=[BSN]"/>
            </request>
        </community>
    </concept>
    <concept>
        <name language="nl-NL">Zwangerschapsdossier</name>
        <community name="fhirmapping">
            <request>
                <method value="GET"/>
                <url value="EpisodeOfCare?patient=[VrouwID]"/>
            </request>
        </community>     
    </concept>
    <concept id="2.16.840.1.113883.2.4.3.11.60.90.77.2.6.10020" statusCode="draft"
        effectiveDate="2016-09-08T00:00:00" type="group" minimumMultiplicity="1"
        maximumMultiplicity="1" conformance="R" isMandatory="false"
        iddisplay="peri23-dataelement-10020" shortName="zorginstelling">
        <name language="nl-NL">Zorginstelling</name>
        <desc language="nl-NL"> Organisatie (instelling) die de zorg levert / heeft geleverd </desc>
        <community name="fhirmapping">
            <request>
                <method value="GET"/>
                <url value="Organization/[OrganizationID]"/>
            </request>
        </community>
    </concept>
    <concept id="2.16.840.1.113883.2.4.3.11.60.90.77.2.6.10810" statusCode="draft"
        effectiveDate="2016-09-08T00:00:00" type="item" minimumMultiplicity="0"
        maximumMultiplicity="1" conformance="R" isMandatory="false"
        iddisplay="peri23-dataelement-10810" shortName="bloedgroep_vrouw">
        <name language="nl-NL">Bloedgroep vrouw</name>
        <desc language="nl-NL">Bloedgroep van de vrouw</desc>
        <community name="fhirmapping">
            <request>
                <method value="GET"/>
                <url
                    value="Observation?code=http://loinc.org|883-9&amp;patient=[VrouwID]&amp;context=[DossierID]"
                />
            </request>
        </community>
    </concept>
    <concept id="2.16.840.1.113883.2.4.3.11.60.90.77.2.6.10811" statusCode="draft"
        effectiveDate="2016-09-08T00:00:00" type="item" minimumMultiplicity="0"
        maximumMultiplicity="1" conformance="R" isMandatory="false"
        iddisplay="peri23-dataelement-10811" shortName="rhesus_d_factor_vrouw">
        <name language="nl-NL">Rhesus D Factor vrouw</name>
        <desc language="nl-NL">Rhesus D factor van de vrouw</desc>
        <community name="fhirmapping">
            <request>
                <method value="GET"/>
                <url
                    value="Observation?code=http://loinc.org|1305-2&amp;patient=[VrouwID]&amp;context=[DossierID]"
                />
            </request>
        </community>
    </concept>
    <concept id="2.16.840.1.113883.2.4.3.11.60.90.77.2.6.10816" statusCode="draft"
        effectiveDate="2016-09-08T00:00:00" type="item" minimumMultiplicity="0"
        maximumMultiplicity="1" conformance="R" isMandatory="false"
        iddisplay="peri23-dataelement-10816" shortName="rhesus_c_factor">
        <name language="nl-NL">Rhesus c Factor</name>
        <desc language="nl-NL">Rhesus c factor van de vrouw</desc>
        <community name="fhirmapping">
            <request>
                <method value="GET"/>
                <url
                    value="Observation?code=http://loinc.org|718-7&amp;patient=[VrouwID]&amp;context=[DossierID]"
                />
            </request>
        </community>
    </concept>
    <concept id="2.16.840.1.113883.2.4.3.11.60.90.77.2.6.3" statusCode="draft"
        effectiveDate="2016-09-08T00:00:00" type="group" minimumMultiplicity="1"
        maximumMultiplicity="1" conformance="R" isMandatory="false" iddisplay="peri23-dataelement-3"
        shortName="zwangerschap">
        <name language="nl-NL">Zwangerschap</name>
        <desc language="nl-NL"> De al dan niet afgesloten zwangerschap waarop de gegevens betrekking
            hebben. </desc>
        <community name="fhirmapping">
            <request>
                <method value="GET"/>
                <url
                    value="Condition?code=http://snomed.info/sct|364320009&amp;patient=[VrouwID]&amp;context=[DossierID]"
                />
            </request>
        </community>
    </concept>
    <concept id="2.16.840.1.113883.2.4.3.11.60.90.77.2.6.20010" statusCode="final"
        effectiveDate="2016-09-08T00:00:00" type="item" minimumMultiplicity="1"
        maximumMultiplicity="1" conformance="R" isMandatory="false"
        iddisplay="peri23-dataelement-20010" shortName="graviditeit">
        <name language="nl-NL">Graviditeit</name>
        <desc language="nl-NL"> Het aantal keren dat de vrouw zwanger is geworden (inclusief deze). </desc>
        <community name="fhirmapping">
            <request>
                <method value="GET"/>
                <url
                    value="Observation?code=http://loinc.org|11996-6&amp;patient=[VrouwID]&amp;context=[DossierID]"
                />
            </request>
        </community>
    </concept>
    <concept id="2.16.840.1.113883.2.4.3.11.60.90.77.2.6.20153" statusCode="draft"
        effectiveDate="2016-09-08T00:00:00" type="item" minimumMultiplicity="1"
        maximumMultiplicity="1" conformance="R" isMandatory="false"
        iddisplay="peri23-dataelement-20153" shortName="pariteit">
        <name language="nl-NL">Pariteit</name>
        <desc language="nl-NL"> Aantal zwangerschappen die eindigden met een partus (>= 16w 0d / 112
            dagen) </desc>
        <community name="fhirmapping">
            <request>
                <method value="GET"/>
                <url
                    value="Observation?code=http://loinc.org|11977-6&amp;patient=[VrouwID]&amp;context=[DossierID]"
                />
            </request>
        </community>
    </concept>
    <concept id="2.16.840.1.113883.2.4.3.11.60.90.77.2.6.20029" statusCode="draft"
        effectiveDate="2016-09-08T00:00:00" type="group" minimumMultiplicity="1"
        maximumMultiplicity="1" conformance="R" isMandatory="false"
        iddisplay="peri23-dataelement-20029" shortName="a_terme_datum_groep">
        <name language="nl-NL">A terme datum (groep)</name>
        <desc language="nl-NL">A terme datum (groep)</desc>
        <community name="fhirmapping">
            <request>
                <method value="GET"/>
                <url
                    value="Observation?code=http://loinc.org|11778-8&amp;patient=[VrouwID]&amp;context=[DossierID]"
                />
            </request>
        </community>
    </concept>
    <concept id="2.16.840.1.113883.2.4.3.11.60.90.77.2.6.10814" statusCode="draft"
        effectiveDate="2016-09-08T00:00:00" type="item" minimumMultiplicity="1"
        maximumMultiplicity="1" conformance="R" isMandatory="false"
        iddisplay="peri23-dataelement-10814" shortName="hb">
        <name language="nl-NL">Hb</name>
        <desc language="nl-NL">Hb waarde</desc>
        <community name="fhirmapping">
            <request>
                <method value="GET"/>
                <url
                    value="Observation?code=http://loinc.org|718-7&amp;patient=[VrouwID]&amp;context=[DossierID]"
                />
            </request>
        </community>
    </concept>
</dataset>

TouchStone TestScript

Hieronder een voorbeeld van de opbouw van een test in een TestScript in TouchStone.

  <test id="01-ServePatient">
    <name value="01-ServePatient"/>
    <description value="Test XIS Server query operation for Patient - XML Format."/>
    <action>
      <operation>
        <label value="peri23-dataelement-2"/> <!-- kan optioneel toegevoegd worden -->
        <type>
          <system value="http://hl7.org/fhir/testscript-operation-codes"/>
          <code value="search"/>
        </type>
        <resource value="Patient"/>
        <description value="Test XIS Server query operation for Patient - XML Format."/>
        <accept value="xml"/>
        <contentType value="none"/>
        <params value="?_identifier=${bsn}"/>
      </operation>
    </action>

Translation table