...
Naast de veelgebruikte FHIR zoekkaders op deze pagina, kan men ook meer complexe zoekbewerkingen uitvoeren. Zie verschillende FHIR voorbeelden op https://www.hl7.org/fhir/search.html.
Overwegingen
FHIR API
FHIR biedt een duidelijke beschrijving van de search API. Koppeltaal gebruikt deze specificaties met enkele aanpassingen in:
- wat er ondersteund wordt,
- wat er binnen Koppeltaal verplicht is,
- toevoegingen op de standaard.
Paginering
De FHIR API maakt gebruik van Feed Paging and Archiving (rfc5005) voor paginering. In deze specificatie wordt een first, last, previous, self en next url in het resultaat meegegeven. De HAPI implementatie maakt naast rfc5005 tevens gebruik van zelf genereerbare URLs door middel van _count en _offset parameters. Het voordeel van het laatste is dat het voor een UX mogelijk wordt om naar specifieke pagina's te springen, omdat de URL van een dergelijke pagina te genereren/berekenen zijn. De rfc5005 werkt echter met enkel de URLs voor vooruit en achteruit spoelen, en niet met specifieke pagina's. Hoewel we mogelijk hier een wens zien ontstaan vanuit de afnemers van de API, besluiten we als Koppeltaal deze af te wachten en vooralsnog geen extra eisen anders dan de door de FHIR API gespecificeerde rfc5005 vast te stellen.
Toepassing en restricties
...
Info |
---|
Let op: Een aantal van de bovenstaande search result parameters worden NIET ondersteund. Dit vanwege extra complexiteit i.c.m. het autorisatiemodel. De niet ondersteunde parameters mogen a) door de FHIR resource service worden genegeerd of b) het request mag afgekeurd worden. |
...
.Paginering
De FHIR Resource Provider MOET paging ondersteunen voor API specificeert dat de resultaten van een zoek- of geschiedenis interactie en voldoen aan de methode (gespecificeerd in RFC 5005 - Feed Paging and Archiving (rfc5005) voor voor het verzenden van vervolg-links naar de applicatie-instantie bij het retourneren van een Bundle resource (bijv. geschiedenis en zoeken). Als de server dit niet doet, is er geen manier om door te gaan met oproepen. De FHIR resource service MOET deze specificatie volgen.
De implementatie MAG naast het implementeren van Feed Paging and Archiving (rfc5005) gebruik maken van vaste parameters rond paginering, geadviseerd wordt om gebruik te maken van_offset
. Deze in combinatie met de _count
paramater die reeds onderdeel is van de search parameters.
Voorbeeld - Het opvragen van Task(s) met als resultaat 25 Tasks die aan een bepaalde criteria voldoen, verdeeld over 3 pagina's die elk 10 Task resources tonen. Zie de _count=10
in link.relation=self
(is de huidige pagina):
...