﻿{
  "openapi": "3.0.2",
  "info": {
    "title": "EEHRxF Resource Consumer CapabilityStatement",
    "description": "CapabilityStatement for the EEHRxF Resource Consumer actor. This actor queries for\nclinical data resources following the International Patient Access (IPA) patterns and\nIHE QEDm Clinical Data Consumer capabilities.\n\nThis CapabilityStatement defines the requirements for systems consuming direct resource\naccess (beyond document-based exchange) in the EU EHR Exchange Format (EEHRxF) ecosystem.\nIt inherits patterns from:\n- **IPA (International Patient Access)**: Resource profiles and search parameter patterns\n- **IHE QEDm (Query for Existing Data for Mobile)**: Clinical Data Consumer actor capabilities\n\n### Resource Flexibility (IPA Alignment)\n\nFollowing IPA\u0027s approach, clients are not required to consume all clinical resources listed\nbelow. Clients MAY choose which resources to query based on their needs and the server\u0027s\ndeclared capabilities. The only required capability is Patient lookup. This flexibility\nallows clients to implement targeted use cases without requiring support for all resource types.\n\n**Required**: Patient (for lookup context)\n**Optional (request based on needs and server support)**:\n- Practitioner, Organization: Reference resolution\n- Condition, AllergyIntolerance: Patient safety data\n- Observation, DiagnosticReport: Clinical results\n- MedicationRequest, MedicationDispense, MedicationStatement: Medication data\n- Immunization: Vaccination records\n- Encounter: Visit context\n\nClients should check the server\u0027s CapabilityStatement to discover which resources are available.\n\n### Security\nSystems SHALL support SMART Backend Services authorization for all transactions.\n\n### Profile Inheritance\nConsumers SHOULD expect resources conforming to EU Core profiles where available.",
    "license": {
      "name": "Creative Commons Zero v1.0 Universal",
      "url": "http://spdx.org/licenses/CC0-1.0.html"
    },
    "version": "0.1.0",
    "contact": {
      "name": "HL7 Europe",
      "url": "http://hl7.eu"
    }
  },
  "externalDocs": {
    "url": "http://hl7.eu/fhir/eu-health-data-api/CapabilityStatement/EEHRxF-ResourceConsumer",
    "description": "FHIR CapabilityStatement"
  },
  "components": {
    "parameters": {
      "rid": {
        "name": "rid",
        "in": "path",
        "description": "id of the resource (\u003dResource.id)",
        "required": true,
        "allowEmptyValue": false,
        "style": "simple",
        "schema": {
          "type": "string"
        }
      },
      "hid": {
        "name": "hid",
        "in": "path",
        "description": "id of the history entry (\u003dResource.meta.versionId)",
        "required": true,
        "allowEmptyValue": false,
        "style": "simple",
        "schema": {
          "type": "string"
        }
      },
      "summary": {
        "name": "_summary",
        "in": "query",
        "description": "Requests the server to return a designated subset of the resource",
        "allowEmptyValue": true,
        "style": "form",
        "schema": {
          "type": "string",
          "enum": [
            "true",
            "text",
            "data",
            "count",
            "false"
          ]
        }
      },
      "format": {
        "name": "_format",
        "in": "query",
        "description": "Specify alternative response formats by their MIME-types (when a client is unable acccess accept: header)",
        "allowEmptyValue": true,
        "style": "form",
        "schema": {
          "type": "string",
          "format": "mime-type"
        }
      },
      "pretty": {
        "name": "_pretty",
        "in": "query",
        "description": "Ask for a pretty printed response for human convenience",
        "allowEmptyValue": true,
        "style": "form",
        "schema": {
          "type": "boolean"
        }
      },
      "elements": {
        "name": "_elements",
        "in": "query",
        "description": "Requests the server to return a collection of elements from the resource",
        "allowEmptyValue": true,
        "style": "form",
        "explode": false,
        "schema": {
          "type": "array",
          "format": "string",
          "items": {
            "format": "string"
          }
        }
      },
      "count": {
        "name": "_count",
        "in": "query",
        "description": "The maximum number of search results on a page. The server is not bound to return the number requested, but cannot return more",
        "schema": {
          "type": "number"
        }
      }
    }
  }
}