diff --git a/README.md b/README.md index f4bbb16..158588d 100644 --- a/README.md +++ b/README.md @@ -197,4 +197,4 @@ Developers should make sure that these align according to any user journeys that Additionally, and less importantly, there are: -* Fixed organization details: see [ClientRPDetailsHeader.SetRequestHeaders.js](proxies/sandbox/apiproxy/resources/jsc/ClientRPDetailsHeader.SetRequestHeaders.js) \ No newline at end of file +* Fixed organization details: see [ClientRPDetailsHeader.SetRequestHeaders.js](proxies/sandbox/apiproxy/resources/jsc/ClientRPDetailsHeader.SetRequestHeaders.js) diff --git a/specification/nrl-consumer-api.yaml b/specification/nrl-consumer-api.yaml index 95ee3dd..6640860 100644 --- a/specification/nrl-consumer-api.yaml +++ b/specification/nrl-consumer-api.yaml @@ -1,41 +1,2062 @@ +openapi: 3.0.0 # This is an OpenAPI Specification (https://swagger.io/specification/) -# for nrl-consumer-api owned by NHS Digital (https://digital.nhs.uk/) -openapi: '3.0.0' +# for the National Record Locator Producer FHIR API +# owned by NHS Digital (https://digital.nhs.uk/) info: - title: 'nrl-consumer-api' - version: 'Computed and injected at build time by `scripts/set_version.py`' + title: National Record Locator Producer - FHIR API description: | ## Overview - Add a fully fledged description here with markdown syntax. - For help completing the content of your API spec, see our guidance on the minimum standard (bronze) details - to include [here](https://nhsd-confluence.digital.nhs.uk/display/APM/Writing+a+bronze+API+cover+page). You should also base your content on our exemplar API - [PDS FHIR](https://digital.nhs.uk/developer/api-catalogue/personal-demographics-service-fhir). + Use this API to populate an index of a patient’s shared clinical records. + + You can: + - manage pointers to clinical records + + You cannot currently use this API to: + - access pointers controlled by other producers + + ### Data availability, timing and quality + TBC + ## Who can use this API - To be completed. - ## Related APIs - To be completed. + This API: + - is only for use by patient-facing applications + - is only for non-clinical use + - can only be used where there is a legal basis to do so + + Make sure you have a valid use case before you go too far with your development. + To do this, [contact us](https://digital.nhs.uk/developer/help-and-support). + + You must do this before you can go live (see ‘Onboarding’ below). + ## API status and roadmap - To be completed. + This API is [in development](https://digital.nhs.uk/developer/guides-and-documentation/reference-guide#statuses). + + To see our roadmap, or to suggest, comment or vote on features for this API, see our [interactive product backlog](https://nhs-digital-api-management.featureupvote.com/?tag=immunisation-history-api). + + If you have any other queries, [contact us](https://digital.nhs.uk/developer/help-and-support). + ## Service level - To be completed. + + This API is a TBC service, meaning it is operational and supported TBC. + + For more details, see [service levels](https://digital.nhs.uk/developer/guides-and-documentation/reference-guide#service-levels). + ## Technology - To be completed. + This API is [RESTful](https://digital.nhs.uk/developer/guides-and-documentation/our-api-technologies#basic-rest). + + It conforms to the [FHIR](https://digital.nhs.uk/developer/guides-and-documentation/our-api-technologies#fhir) global standard for health care data exchange, specifically to [FHIR R4 (v4.0.1)](https://hl7.org/fhir/r4/), except that it does not support the [capabilities](http://hl7.org/fhir/R4/http.html#capabilities) interaction. + + It includes some country-specific FHIR extensions, which conform to [FHIR UK Core](https://digital.nhs.uk/services/fhir-uk-core), specifically [fhir.r4.ukcore.stu1 0.5.1](https://simplifier.net/packages/fhir.r4.ukcore.stu1/0.5.1). + + You do not need to know much about FHIR to use this API - FHIR APIs are just RESTful APIs that follow specific rules. + In particular: + - resource names are capitalised and singular, and use US spellings, for example `/Immunization` not `/immunisations` + - array names are singular, for example `entry` not `entries` for address lines + - data items that are country-specific and thus not included in the FHIR global base resources are usually wrapped in an `extension` object + + There are [libraries and SDKs available](https://digital.nhs.uk/developer/guides-and-documentation/api-technologies-at-nhs-digital#fhir-libraries-and-sdks) to help with FHIR API integration. + ## Network access - To be completed. + This API is available on the internet and, indirectly, on the [Health and Social Care Network (HSCN)](https://digital.nhs.uk/services/health-and-social-care-network). + + For more details see [Network access for APIs](https://digital.nhs.uk/developer/guides-and-documentation/network-access-for-apis). + ## Security and authorisation - To be completed. + + This API uses the following access modes: + * application-restricted access + + ### Application-restricted access + + This access mode is [application-restricted](https://digital.nhs.uk/developer/guides-and-documentation/security-and-authorisation#application-restricted-apis), meaning we authenticate the calling application but not the end user. + + To use this access mode, use the following security pattern: + * [Application-restricted RESTful API - signed JWT authentication](https://digital.nhs.uk/developer/guides-and-documentation/security-and-authorisation/application-restricted-restful-apis-signed-jwt-authentication) + ## Environments and testing - To be completed. + | Environment | Base URL | + | ----------------- | ---------------------------------------------------------------------- | + | Sandbox | `https://sandbox.api.service.nhs.uk/nrl-producer-api/FHIR/R4/` | + | Integration test | `https://int.api.service.nhs.uk/nrl-producer-api/FHIR/R4/` | + | Production | `https://api.service.nhs.uk/nrl-producer-api/FHIR/R4/` | + + ### Sandbox testing + Our [sandbox environment](https://digital.nhs.uk/developer/guides-and-documentation/testing#sandbox-testing): + * is for early developer testing + * only covers a limited set of scenarios + * is open access, so does not allow you to test authorisation + + For details of sandbox test scenarios, or to try out the sandbox using our 'Try this API' feature, see the documentation for each endpoint. + + Alternatively, you can try out the sandbox using our Postman collection: + + [![Run in Postman](https://run.pstmn.io/button.svg)](https://app.getpostman.com/run-collection/TBC) + + ### Integration testing + Our [integration test environment](https://digital.nhs.uk/developer/guides-and-documentation/testing#integration-testing): + * is for formal integration testing + * includes authorisation + + It also includes ready-to-use TBC test data + + For more details see [integration testing with our RESTful APIs](https://digital.nhs.uk/developer/guides-and-documentation/testing#integration-testing-with-our-restful-apis). + ## Onboarding - To be completed. + You need to get your software approved by us before it can go live with this API. We call this onboarding. The onboarding process can sometimes be quite long, so it’s worth planning well ahead. + + This API uses our online digital onboarding process. + + As part of this process, you need to demonstrate that you can manage risks and that your software conforms technically with the requirements for this API. + + Information on this page might impact the design of your software. For details, see [Onboarding support information](https://digital.nhs.uk/developer/api-catalogue/immunisation-history-fhir/onboarding-support-information). + + To get started, see [digital onboarding](https://digital.nhs.uk/developer/guides-and-documentation/digital-onboarding#using-the-digital-onboarding-portal). + version: 1.0.0 contact: - name: 'nrl-consumer-api API Support' - url: 'https://digital.nhs.uk/developer/help-and-support' + name: NHS Digital API Management + url: "https://digital.nhs.uk/developer/help-and-support" email: api.management@nhs.net servers: - - url: 'https://sandbox.api.service.nhs.uk/nrl-consumer-api' - description: Sandbox environment. - - url: 'https://int.api.service.nhs.uk/nrl-consumer-api' - description: Integration test environment. - - url: 'https://api.service.nhs.uk/nrl-consumer-api' - description: Production environment. -paths: {} + - url: / +tags: + - name: NRLF Consumer +paths: + /DocumentReference: + get: + tags: + - NRLF Consumer + summary: Search for DocumentReference resources + operationId: searchDocumentReference + parameters: + - $ref: "#/components/parameters/subject" + - $ref: "#/components/parameters/custodian" + - $ref: "#/components/parameters/snomedCode" + - $ref: "#/components/parameters/fromASID" + - $ref: "#/components/parameters/toASID" + responses: + "200": + description: Search DocumentReference operation successful + content: + application/fhir+json: + schema: + $ref: "#/components/schemas/Bundle" + application/fhir+xml: + schema: + $ref: "#/components/schemas/Bundle" + /DocumentReference/_search: + post: + tags: + - NRLF Consumer + summary: Search for DocumentReference resources + operationId: searchPostDocumentReference + parameters: + - $ref: "#/components/parameters/fromASID" + - $ref: "#/components/parameters/toASID" + requestBody: + content: + application/x-www-form-urlencoded: + schema: + type: object + properties: {} + application/json: + schema: + $ref: "#/components/schemas/RequestParams" + responses: + "200": + description: Search DocumentReference operation successful + content: + application/fhir+json: + schema: + $ref: "#/components/schemas/Bundle" + /DocumentReference/{id}: + get: + tags: + - NRLF Consumer + summary: Read a DocumentReference resource + operationId: readDocumentReference + parameters: + - $ref: "#/components/parameters/id" + responses: + "200": + description: Read DocumentReference operation successful + content: + application/fhir+json: + schema: + $ref: "#/components/schemas/DocumentReference" +components: + requestBodies: + DocumentReference: + content: + application/fhir+json: + schema: + $ref: "#/components/schemas/DocumentReference" + required: true + schemas: + Resource: + type: object + properties: + resourceType: + type: string + enum: + - Resource + - DomainResource + - Account + - ActivityDefinition + - AdverseEvent + - AllergyIntolerance + - Appointment + - AppointmentResponse + - AuditEvent + - Basic + - Binary + - BiologicallyDerivedProduct + - BodyStructure + - Bundle + - CapabilityStatement + - CarePlan + - CareTeam + - CatalogEntry + - ChargeItem + - ChargeItemDefinition + - Claim + - ClaimResponse + - ClinicalImpression + - CodeSystem + - Communication + - CommunicationRequest + - CompartmentDefinition + - Composition + - ConceptMap + - Condition + - Consent + - Contract + - Coverage + - CoverageEligibilityRequest + - CoverageEligibilityResponse + - DetectedIssue + - Device + - DeviceDefinition + - DeviceMetric + - DeviceRequest + - DeviceUseStatement + - DiagnosticReport + - DocumentManifest + - DocumentReference + - EffectEvidenceSynthesis + - Encounter + - Endpoint + - EnrollmentRequest + - EnrollmentResponse + - EpisodeOfCare + - EventDefinition + - Evidence + - EvidenceVariable + - ExampleScenario + - ExplanationOfBenefit + - FamilyMemberHistory + - Flag + - Goal + - GraphDefinition + - Group + - GuidanceResponse + - HealthcareService + - ImagingStudy + - Immunization + - ImmunizationEvaluation + - ImmunizationRecommendation + - ImplementationGuide + - InsurancePlan + - Invoice + - Library + - Linkage + - List + - Location + - Measure + - MeasureReport + - Media + - Medication + - MedicationAdministration + - MedicationDispense + - MedicationKnowledge + - MedicationRequest + - MedicationStatement + - MedicinalProduct + - MedicinalProductAuthorization + - MedicinalProductContraindication + - MedicinalProductIndication + - MedicinalProductIngredient + - MedicinalProductInteraction + - MedicinalProductManufactured + - MedicinalProductPackaged + - MedicinalProductPharmaceutical + - MedicinalProductUndesirableEffect + - MessageDefinition + - MessageHeader + - MolecularSequence + - NamingSystem + - NutritionOrder + - Observation + - ObservationDefinition + - OperationDefinition + - OperationOutcome + - Organization + - OrganizationAffiliation + - Parameters + - Patient + - PaymentNotice + - PaymentReconciliation + - Person + - PlanDefinition + - Practitioner + - PractitionerRole + - Procedure + - Provenance + - Questionnaire + - QuestionnaireResponse + - RelatedPerson + - RequestGroup + - ResearchDefinition + - ResearchElementDefinition + - ResearchStudy + - ResearchSubject + - RiskAssessment + - RiskEvidenceSynthesis + - Schedule + - SearchParameter + - ServiceRequest + - Slot + - Specimen + - SpecimenDefinition + - StructureDefinition + - StructureMap + - Subscription + - Substance + - SubstanceNucleicAcid + - SubstancePolymer + - SubstanceProtein + - SubstanceReferenceInformation + - SubstanceSourceMaterial + - SubstanceSpecification + - SupplyDelivery + - SupplyRequest + - Task + - TerminologyCapabilities + - TestReport + - TestScript + - ValueSet + - VerificationResult + - VisionPrescription + id: + type: string + pattern: '[A-Za-z0-9\-\.]{1,64}' + description: The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes. + meta: + $ref: "#/components/schemas/Meta" + description: The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource. + implicitRules: + type: string + pattern: \S* + description: A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc. + language: + type: string + pattern: '[^\s]+(\s[^\s]+)*' + description: The base language in which the resource is written. + required: + - resourceType + DomainResource: + allOf: + - $ref: "#/components/schemas/Resource" + - type: object + properties: + text: + $ref: "#/components/schemas/Narrative" + description: A human–readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety. + contained: + type: array + items: + $ref: "#/components/schemas/Resource" + description: These resources do not have an independent existence apart from the resource that contains them – they cannot be identified independently, and nor can they have their own independent transaction scope. + extension: + type: array + items: + $ref: "#/components/schemas/Extension" + description: May be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, 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. + modifierExtension: + type: array + items: + $ref: "#/components/schemas/Extension" + description: |- + May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. + + Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself). + DocumentReference: + allOf: + - $ref: "#/components/schemas/DomainResource" + - type: object + properties: + masterIdentifier: + $ref: "#/components/schemas/Identifier" + description: Document identifier as assigned by the source of the document. This identifier is specific to this version of the document. This unique identifier may be used elsewhere to identify this version of the document. + identifier: + type: array + items: + $ref: "#/components/schemas/Identifier" + description: Other identifiers associated with the document, including version independent identifiers. + status: + type: string + pattern: '[^\s]+(\s[^\s]+)*' + description: The status of this document reference. + docStatus: + type: string + pattern: '[^\s]+(\s[^\s]+)*' + description: The status of the underlying document. + type: + $ref: "#/components/schemas/CodeableConcept" + description: Specifies the particular kind of document referenced (e.g. History and Physical, Discharge Summary, Progress Note). This usually equates to the purpose of making the document referenced. + category: + type: array + items: + $ref: "#/components/schemas/CodeableConcept" + description: A categorization for the type of document referenced – helps for indexing and searching. This may be implied by or derived from the code specified in the DocumentReference.type. + subject: + $ref: "#/components/schemas/Reference" + description: Who or what the document is about. The document can be about a person, (patient or healthcare practitioner), a device (e.g. a machine) or even a group of subjects (such as a document about a herd of farm animals, or a set of patients that share a common exposure). + date: + type: string + pattern: ([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-9]000)-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])T([01][0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)((0[0-9]|1[0-3]):[0-5][0-9]|14:00)) + description: When the document reference was created. + author: + type: array + items: + $ref: "#/components/schemas/Reference" + description: Identifies who is responsible for adding the information to the document. + authenticator: + $ref: "#/components/schemas/Reference" + description: Which person or organization authenticates that this document is valid. + custodian: + $ref: "#/components/schemas/Reference" + description: Identifies the organization or group who is responsible for ongoing maintenance of and access to the document. + relatesTo: + type: array + items: + $ref: "#/components/schemas/DocumentReferenceRelatesTo" + description: Relationships that this document has with other document references that already exist. + description: + type: string + pattern: '[ \r\n\t\S]+' + description: Human–readable description of the source document. + securityLabel: + type: array + items: + $ref: "#/components/schemas/CodeableConcept" + description: A set of Security–Tag codes specifying the level of privacy/security of the Document. Note that DocumentReference.meta.security contains the security labels of the "reference" to the document, while DocumentReference.securityLabel contains a snapshot of the security labels on the document the reference refers to. + content: + type: array + items: + $ref: "#/components/schemas/DocumentReferenceContent" + description: The document and format referenced. There may be multiple content element repetitions, each with a different format. + minItems: 1 + context: + $ref: "#/components/schemas/DocumentReferenceContext" + description: The clinical context in which the document was prepared. + required: + - status + - content + example: + resourceType: DocumentReference + meta: + versionId: gtFTiNf4pp + lastUpdated: "2021-04-12T14:34:34.01-05:00" + source: u1NjrkzkI9 + profile: + - GeX8qExU8T + security: + - system: CnHy_LhYEO + version: 5jgtFQbOsh + code: ykt_NRVN2m + display: kWifQsgkn2 + userSelected: true + tag: + - system: dNL6RYHvEh + version: JZe571xjI9 + code: qfOWgGfGwa + display: tLxG622FFM + userSelected: true + - code: ibm/complete-mock + implicitRules: 6lVNfkBMu8 + language: en-US + text: + status: additional + div:
+ masterIdentifier: + use: old + type: + coding: + - system: 7mwyNwu55K + version: yffM988UcE + code: 3BOy0Jxcor + display: jjlmPREoGm + userSelected: true + text: ghl1nSX6YC + system: TTrHlxfLip + value: D5fA_0kdwA + period: + start: "2021-04-12T14:34:34.004-05:00" + end: "2021-04-12T14:34:34.004-05:00" + identifier: + - use: official + type: + coding: + - system: lS5SVgd7m8 + version: D0f_cGPYb3 + code: Iwr8clnIJV + display: WWKdoxQqi_ + userSelected: true + text: 9V8npw0pd4 + system: CdLlOyLjU1 + value: KVSh9dgHSm + period: + start: "2021-04-12T14:34:33.999-05:00" + end: "2021-04-12T14:34:34-05:00" + status: superseded + docStatus: amended + type: + coding: + - system: dRfGnezqS8 + version: v1QrmnRwbQ + code: upr0MbXWgh + display: jXbIcKWPkF + userSelected: true + text: VcIijzsugN + category: + - coding: + - system: A7k2cP5mRe + version: lTr225DJ_f + code: ok1stFGDa7 + display: a46ixWeWBj + userSelected: true + text: 3tczy6K8mz + subject: + reference: Patient/sWaJHjRsNv + type: Patient + identifier: + use: temp + type: + coding: + - system: sZVJfrk4hb + version: WZ1Mph143n + code: WFmxKMXh2Z + display: KuPLtc3dyH + userSelected: true + text: CFf77IMQCj + system: kXtDyGzwt6 + value: pCWwi5XqhA + period: + start: "2021-04-12T14:34:34.002-05:00" + end: "2021-04-12T14:34:34.003-05:00" + display: 2azTEoyPfc + date: "2021-04-12T14:34:34.009-05:00" + author: + - reference: Practitioner/dat6us3Wuh + type: Practitioner + identifier: + use: usual + type: + coding: + - system: WLir5fXZvI + version: brIG31Koax + code: IOMdkc9pNe + display: GVXgZtHeP8 + userSelected: true + text: Rw7RNXxgM8 + system: Q9QbHygPMg + value: wWagFX4Q0o + period: + start: "2021-04-12T14:34:33.996-05:00" + end: "2021-04-12T14:34:33.996-05:00" + display: CQbhbAruWE + authenticator: + reference: Practitioner/wziffURBSp + type: Practitioner + identifier: + use: usual + type: + coding: + - system: 8Kmrm2wBQK + version: biW6ZqUReL + code: SPSNBMINwX + display: T4yKMVXuv2 + userSelected: true + text: pHdbq_lhSn + system: ooZWTdZDZ7 + value: 9s65NQY7Ps + period: + start: "2021-04-12T14:34:33.997-05:00" + end: "2021-04-12T14:34:33.997-05:00" + display: tsv_lBf2Xh + custodian: + reference: Organization/xQdz7LMAbe + type: Organization + identifier: + use: secondary + type: + coding: + - system: rKdu5gDhAF + version: WCi5iw_hw2 + code: S9L30wltk1 + display: zryQgMABeW + userSelected: true + text: e77g9DjgrG + system: rmqPsYs95K + value: A_R82Ugl7C + period: + start: "2021-04-12T14:34:34-05:00" + end: "2021-04-12T14:34:34-05:00" + display: lm5AajqYNd + relatesTo: + - code: signs + target: + reference: DocumentReference/hM-RLCNVjU + type: DocumentReference + identifier: + use: secondary + type: + coding: + - system: 7SuCx4Fj2Y + version: ZApT2WuBjt + code: IPftdTqi8u + display: rYHXLz6oFS + userSelected: true + text: 4z6kJa9fBz + system: FbeYXzWzgF + value: MNKHkIU9jF + period: + start: "2021-04-12T14:34:34.001-05:00" + end: "2021-04-12T14:34:34.002-05:00" + display: fxezsRnaOp + description: k8lgLi0g0U + securityLabel: + - coding: + - system: Ez3uzI1Mwn + version: WQicPCuVlS + code: 4Kz6W_788K + display: ebtH3kMTAi + userSelected: true + text: VKYvFGKIcq + content: + - attachment: + contentType: qnkdEriAKi + language: en-US + data: KEAkP2s= + url: QAML_39pMf + size: 1216996556 + hash: Sz9rIVc= + title: 0f8gUmMpbe + creation: "2021-04-12T14:34:33.995-05:00" + format: + system: vPcJ_AP4_Y + version: nVovVd1zlP + code: 2waSvVDpfq + display: CalkROka2S + userSelected: true + context: + encounter: + - reference: Encounter/FNsCyzt4BN + type: Encounter + identifier: + use: official + type: + coding: + - system: WOfiWgV5Ge + version: nUC92AjpfY + code: rWsXWArOrU + display: aGuGtmS7Uc + userSelected: true + text: Bli0bKWE1c + system: zml7dk3gdz + value: YuaZxz4SB6 + period: + start: "2021-04-12T14:34:34.007-05:00" + end: "2021-04-12T14:34:34.007-05:00" + display: 0AV0WtxDhO + event: + - coding: + - system: 0JwJfUzpjY + version: sSJoYeHXX_ + code: Naj3bY5Jal + display: oEpirqwUVQ + userSelected: true + text: J2ZRMNDnpu + period: + start: "2021-04-12T14:34:34.005-05:00" + end: "2021-04-12T14:34:34.005-05:00" + facilityType: + coding: + - system: iJf7tYTgRI + version: ljYQ5xsuWr + code: NGHdAde7W6 + display: 3Wo0EpCWG6 + userSelected: true + text: n0hnnT13Nu + practiceSetting: + coding: + - system: 1545J6V3Ou + version: 5lyBpxd0pe + code: RrOvA1oUzY + display: hMwANtKfd4 + userSelected: true + text: 66o72vxTG8 + sourcePatientInfo: + reference: Patient/ViGKrDHYS3 + type: Patient + identifier: + use: official + type: + coding: + - system: 41qAmtaJu9 + version: YxGqwVxLmU + code: lHDLBSP_6R + display: La92gyRePJ + userSelected: true + text: jUNMEcfFQn + system: 5FGzR43kw6 + value: ceF9qwCw7Y + period: + start: "2021-04-12T14:34:34.008-05:00" + end: "2021-04-12T14:34:34.008-05:00" + display: g7xaLj8bf4 + related: + - reference: Basic/EuipjRjEHI + type: Basic + identifier: + use: temp + type: + coding: + - system: hEj1nOEFgh + version: GLHUYRu3Wb + code: xTOuf7_8Pe + display: PxOpZ2F7aH + userSelected: true + text: I1ArFo90cZ + system: 1Iqq1r69bi + value: Vb8DWppzxd + period: + start: "2021-04-12T14:34:34.006-05:00" + end: "2021-04-12T14:34:34.006-05:00" + display: moc4oDijFi + Bundle: + allOf: + - $ref: "#/components/schemas/Resource" + - type: object + properties: + identifier: + $ref: "#/components/schemas/Identifier" + description: A persistent identifier for the bundle that won't change as a bundle is copied from server to server. + type: + type: string + pattern: '[^\s]+(\s[^\s]+)*' + description: Indicates the purpose of this bundle – how it is intended to be used. + timestamp: + type: string + pattern: ([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-9]000)-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])T([01][0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)((0[0-9]|1[0-3]):[0-5][0-9]|14:00)) + description: The date/time that the bundle was assembled – i.e. when the resources were placed in the bundle. + total: + type: integer + format: int32 + description: If a set of search matches, this is the total number of entries of type 'match' across all pages in the search. It does not include search.mode = 'include' or 'outcome' entries and it does not provide a count of the number of entries in the Bundle. + link: + type: array + items: + $ref: "#/components/schemas/BundleLink" + description: A series of links that provide context to this bundle. + entry: + type: array + items: + $ref: "#/components/schemas/BundleEntry" + description: An entry in a bundle resource – will either contain a resource or information about a resource (transactions and history only). + signature: + $ref: "#/components/schemas/Signature" + description: Digital Signature – base64 encoded. XML–DSig or a JWT. + required: + - type + example: + resourceType: Bundle + meta: + versionId: VD9dxMjhBQ + lastUpdated: "2021-04-12T14:34:37.652-05:00" + source: JUp4RZhVMR + profile: + - Fec0pB4qv3 + security: + - system: dO8eKozGdg + version: g2Z1yrpGqL + code: AaVP6dRWHJ + display: MOdc7BqdCe + userSelected: true + tag: + - system: 9XfImFywbS + version: cpOXk_fnfK + code: VwBBYWM5YE + display: GGrdyf7kSX + userSelected: true + - code: ibm/complete-mock + implicitRules: f9UW4JtFH9 + language: en-US + identifier: + use: official + type: + coding: + - system: 25m4g6AC04 + version: EmPuWoNHGO + code: FuuaG1RtIb + display: z4dys_Vt0Y + userSelected: true + text: OX8cTeTDLr + system: a5bA7vXyCl + value: RUJ35DJz4T + period: + start: "2021-04-12T14:34:37.641-05:00" + end: "2021-04-12T14:34:37.641-05:00" + type: transaction-response + timestamp: "2021-04-12T14:34:37.645-05:00" + total: 1574108328 + link: + - relation: 9gsxK0gdZd + url: x5puA71jvk + entry: + - link: + - relation: wJ0wLub8sj + url: HFm_mzHn2z + fullUrl: sYNHpCvLu6 + search: + mode: outcome + score: 8960673372 + request: + method: PATCH + url: 8jiWbkD8S7 + ifNoneMatch: AdZT_le7SH + ifModifiedSince: "2021-04-12T14:34:37.647-05:00" + ifMatch: PQD4pHngAm + ifNoneExist: saa1HX7us2 + response: + status: lT5ZNvdH4r + location: o7f0kua08h + etag: 4kMlqpFwlq + lastModified: "2021-04-12T14:34:37.646-05:00" + signature: + type: + - system: SCaxhhhYHf + version: bIsWXgnGWT + code: uIuNEKeok2 + display: 09v4Og5VO1 + userSelected: true + when: "2021-04-12T14:34:37.644-05:00" + who: + reference: Practitioner/3BxOedQTGQ + type: Practitioner + identifier: + use: official + type: + coding: + - system: EBWsJFiSee + version: tM3MDDp49w + code: YBhQUC48Io + display: WUQKZlqzSt + userSelected: true + text: ChRS8TCGUi + system: D4ZGHPnrPM + value: DQ1bc4APiL + period: + start: "2021-04-12T14:34:37.643-05:00" + end: "2021-04-12T14:34:37.643-05:00" + display: Rw9DdhNaHA + onBehalfOf: + reference: Practitioner/PDaucuqEoc + type: Practitioner + identifier: + use: secondary + type: + coding: + - system: CZTG15XRKE + version: l29nYs4v3D + code: hRcCFBqxMk + display: pWv3KBIMIs + userSelected: true + text: epk3OT1lD8 + system: gHBW2H7m4P + value: LD4_EQrH3N + period: + start: "2021-04-12T14:34:37.642-05:00" + end: "2021-04-12T14:34:37.642-05:00" + display: HOdn3UAvlg + targetFormat: NCDfzz08UJ + sigFormat: OR9Y23khox + data: aHg6D2k= + OperationOutcome: + allOf: + - $ref: "#/components/schemas/DomainResource" + - type: object + properties: + issue: + type: array + items: + $ref: "#/components/schemas/OperationOutcomeIssue" + description: An error, warning, or information message that results from a system action. + minItems: 1 + required: + - issue + example: + resourceType: OperationOutcome + meta: + versionId: BnpJOa5-Sb + lastUpdated: "2021-04-12T14:34:36.061-05:00" + source: BCL3d5NERb + profile: + - xSempdez3Y + security: + - system: tczS7uP8XL + version: IXKbCw05qO + code: NvDP1hL64Y + display: _r1z5oJld1 + userSelected: true + tag: + - system: 2qqXHsE1Mx + version: lybFyQ1tBj + code: Q9w075fYd3 + display: Nm2QqbYibP + userSelected: true + - code: ibm/complete-mock + implicitRules: l8KHk6qOt4 + language: en-US + text: + status: additional + div:
+ issue: + - severity: warning + code: business-rule + details: + coding: + - system: eQgFofRHmJ + version: T524HDk5Za + code: tC_7iQg31j + display: s0bLc4W5KE + userSelected: true + text: BfBVppHmsh + diagnostics: EcvPDGbK0q + location: + - GK5ihTmfe6 + expression: + - Uidx_swV4Z + BundleEntry: + allOf: + - $ref: "#/components/schemas/BackboneElement" + - type: object + properties: + link: + type: array + items: + $ref: "#/components/schemas/BundleLink" + description: A series of links that provide context to this entry. + fullUrl: + type: string + pattern: \S* + description: "The Absolute URL for the resource. The fullUrl SHALL NOT disagree with the id in the resource – i.e. if the fullUrl is not a urn:uuid, the URL shall be version–independent URL consistent with the Resource.id. The fullUrl is a version independent reference to the resource. The fullUrl element SHALL have a value except that: \n* fullUrl can be empty on a POST (although it does not need to when specifying a temporary id for reference in the bundle)\n* Results from operations might involve resources that are not identified." + resource: + $ref: "#/components/schemas/Resource" + description: The Resource for the entry. The purpose/meaning of the resource is determined by the Bundle.type. + search: + $ref: "#/components/schemas/BundleEntrySearch" + description: Information about the search process that lead to the creation of this entry. + request: + $ref: "#/components/schemas/BundleEntryRequest" + description: Additional information about how this entry should be processed as part of a transaction or batch. For history, it shows how the entry was processed to create the version contained in the entry. + response: + $ref: "#/components/schemas/BundleEntryResponse" + description: Indicates the results of processing the corresponding 'request' entry in the batch or transaction being responded to or what the results of an operation where when returning history. + BundleEntryResponse: + allOf: + - $ref: "#/components/schemas/BackboneElement" + - type: object + properties: + status: + type: string + pattern: '[ \r\n\t\S]+' + description: The status code returned by processing this entry. The status SHALL start with a 3 digit HTTP code (e.g. 404) and may contain the standard HTTP description associated with the status code. + location: + type: string + pattern: \S* + description: The location header created by processing this operation, populated if the operation returns a location. + etag: + type: string + pattern: '[ \r\n\t\S]+' + description: The Etag for the resource, if the operation for the entry produced a versioned resource (see [Resource Metadata and Versioning](http.html#versioning) and [Managing Resource Contention](http.html#concurrency)). + lastModified: + type: string + pattern: ([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-9]000)-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])T([01][0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)((0[0-9]|1[0-3]):[0-5][0-9]|14:00)) + description: The date/time that the resource was modified on the server. + outcome: + $ref: "#/components/schemas/Resource" + description: An OperationOutcome containing hints and warnings produced as part of processing this entry in a batch or transaction. + required: + - status + BundleEntryRequest: + allOf: + - $ref: "#/components/schemas/BackboneElement" + - type: object + properties: + method: + type: string + pattern: '[^\s]+(\s[^\s]+)*' + description: In a transaction or batch, this is the HTTP action to be executed for this entry. In a history bundle, this indicates the HTTP action that occurred. + url: + type: string + pattern: \S* + description: The URL for this entry, relative to the root (the address to which the request is posted). + ifNoneMatch: + type: string + pattern: '[ \r\n\t\S]+' + description: If the ETag values match, return a 304 Not Modified status. See the API documentation for ["Conditional Read"](http.html#cread). + ifModifiedSince: + type: string + pattern: ([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-9]000)-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])T([01][0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)((0[0-9]|1[0-3]):[0-5][0-9]|14:00)) + description: Only perform the operation if the last updated date matches. See the API documentation for ["Conditional Read"](http.html#cread). + ifMatch: + type: string + pattern: '[ \r\n\t\S]+' + description: Only perform the operation if the Etag value matches. For more information, see the API section ["Managing Resource Contention"](http.html#concurrency). + ifNoneExist: + type: string + pattern: '[ \r\n\t\S]+' + description: Instruct the server not to perform the create if a specified resource already exists. For further information, see the API documentation for ["Conditional Create"](http.html#ccreate). This is just the query portion of the URL – what follows the "?" (not including the "?"). + required: + - method + - url + BundleEntrySearch: + allOf: + - $ref: "#/components/schemas/BackboneElement" + - type: object + properties: + mode: + type: string + pattern: '[^\s]+(\s[^\s]+)*' + description: Why this entry is in the result set – whether it's included as a match or because of an _include requirement, or to convey information or warning information about the search process. + score: + type: number + description: When searching, the server's search ranking score for the entry. + BundleLink: + allOf: + - $ref: "#/components/schemas/BackboneElement" + - type: object + properties: + relation: + type: string + pattern: '[ \r\n\t\S]+' + description: A name which details the functional use for this link – see [http://www.iana.org/assignments/link–relations/link–relations.xhtml#link–relations–1](http://www.iana.org/assignments/link–relations/link–relations.xhtml#link–relations–1). + url: + type: string + pattern: \S* + description: The reference details for the link. + required: + - relation + - url + DocumentReferenceContext: + allOf: + - $ref: "#/components/schemas/BackboneElement" + - type: object + properties: + encounter: + type: array + items: + $ref: "#/components/schemas/Reference" + description: Describes the clinical encounter or type of care that the document content is associated with. + event: + type: array + items: + $ref: "#/components/schemas/CodeableConcept" + description: This list of codes represents the main clinical acts, such as a colonoscopy or an appendectomy, being documented. In some cases, the event is inherent in the type Code, such as a "History and Physical Report" in which the procedure being documented is necessarily a "History and Physical" act. + period: + $ref: "#/components/schemas/Period" + description: The time period over which the service that is described by the document was provided. + facilityType: + $ref: "#/components/schemas/CodeableConcept" + description: The kind of facility where the patient was seen. + practiceSetting: + $ref: "#/components/schemas/CodeableConcept" + description: This property may convey specifics about the practice setting where the content was created, often reflecting the clinical specialty. + sourcePatientInfo: + $ref: "#/components/schemas/Reference" + description: The Patient Information as known when the document was published. May be a reference to a version specific, or contained. + related: + type: array + items: + $ref: "#/components/schemas/Reference" + description: Related identifiers or resources associated with the DocumentReference. + DocumentReferenceContent: + allOf: + - $ref: "#/components/schemas/BackboneElement" + - type: object + properties: + attachment: + $ref: "#/components/schemas/Attachment" + description: The document or URL of the document along with critical metadata to prove content has integrity. + format: + $ref: "#/components/schemas/Coding" + description: An identifier of the document encoding, structure, and template that the document conforms to beyond the base format indicated in the mimeType. + required: + - attachment + DocumentReferenceRelatesTo: + allOf: + - $ref: "#/components/schemas/BackboneElement" + - type: object + properties: + code: + type: string + pattern: '[^\s]+(\s[^\s]+)*' + description: The type of relationship that this document has with anther document. + target: + $ref: "#/components/schemas/Reference" + description: The target document of this relationship. + required: + - code + - target + OperationOutcomeIssue: + allOf: + - $ref: "#/components/schemas/BackboneElement" + - type: object + properties: + severity: + type: string + pattern: '[^\s]+(\s[^\s]+)*' + description: Indicates whether the issue indicates a variation from successful processing. + code: + type: string + pattern: '[^\s]+(\s[^\s]+)*' + description: Describes the type of the issue. The system that creates an OperationOutcome SHALL choose the most applicable code from the IssueType value set, and may additional provide its own code for the error in the details element. + details: + $ref: "#/components/schemas/CodeableConcept" + description: Additional details about the error. This may be a text description of the error or a system code that identifies the error. + diagnostics: + type: string + pattern: '[ \r\n\t\S]+' + description: Additional diagnostic information about the issue. + location: + type: array + items: + type: string + pattern: '[ \r\n\t\S]+' + description: "This element is deprecated because it is XML specific. It is replaced by issue.expression, which is format independent, and simpler to parse. \n\nFor resource issues, this will be a simple XPath limited to element names, repetition indicators and the default child accessor that identifies one of the elements in the resource that caused this issue to be raised. For HTTP errors, will be \"http.\" + the parameter name." + expression: + type: array + items: + type: string + pattern: '[ \r\n\t\S]+' + description: A [simple subset of FHIRPath](fhirpath.html#simple) limited to element names, repetition indicators and the default child accessor that identifies one of the elements in the resource that caused this issue to be raised. + required: + - severity + - code + Element: + type: object + properties: + id: + type: string + pattern: '[A-Za-z0-9\-\.]{1,64}' + description: Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. + extension: + type: array + items: + $ref: "#/components/schemas/Extension" + description: 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 manageable, 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. + example: + - url: http://example.com + valueString: text value + BackboneElement: + allOf: + - $ref: "#/components/schemas/Element" + - type: object + properties: + modifierExtension: + type: array + items: + $ref: "#/components/schemas/Extension" + description: |- + May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, 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. Applications processing a resource are required to check for modifier extensions. + + Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself). + Address: + allOf: + - $ref: "#/components/schemas/Element" + - type: object + properties: + use: + type: string + pattern: '[^\s]+(\s[^\s]+)*' + description: The purpose of this address. + type: + type: string + pattern: '[^\s]+(\s[^\s]+)*' + description: Distinguishes between physical addresses (those you can visit) and mailing addresses (e.g. PO Boxes and care–of addresses). Most addresses are both. + text: + type: string + pattern: '[ \r\n\t\S]+' + description: Specifies the entire address as it should be displayed e.g. on a postal label. This may be provided instead of or as well as the specific parts. + line: + type: array + items: + type: string + pattern: '[ \r\n\t\S]+' + description: This component contains the house number, apartment number, street name, street direction, P.O. Box number, delivery hints, and similar address information. + city: + type: string + pattern: '[ \r\n\t\S]+' + description: The name of the city, town, suburb, village or other community or delivery center. + district: + type: string + pattern: '[ \r\n\t\S]+' + description: The name of the administrative area (county). + state: + type: string + pattern: '[ \r\n\t\S]+' + description: Sub–unit of a country with limited sovereignty in a federally organized country. A code may be used if codes are in common use (e.g. US 2 letter state codes). + postalCode: + type: string + pattern: '[ \r\n\t\S]+' + description: A postal code designating a region defined by the postal service. + country: + type: string + pattern: '[ \r\n\t\S]+' + description: Country – a nation as commonly understood or generally accepted. + period: + $ref: "#/components/schemas/Period" + description: Time period when address was/is in use. + Age: + allOf: + - $ref: "#/components/schemas/Quantity" + - type: object + properties: {} + Annotation: + allOf: + - $ref: "#/components/schemas/Element" + - type: object + properties: + authorReference: + $ref: "#/components/schemas/Reference" + description: The individual responsible for making the annotation. + authorString: + type: string + pattern: '[ \r\n\t\S]+' + description: The individual responsible for making the annotation. + time: + type: string + pattern: ([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-9]000)(-(0[1-9]|1[0-2])(-(0[1-9]|[1-2][0-9]|3[0-1])(T([01][0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)((0[0-9]|1[0-3]):[0-5][0-9]|14:00)))?)?)? + description: Indicates when this particular annotation was made. + text: + type: string + pattern: '[ \r\n\t\S]+' + description: The text of the annotation in markdown format. + required: + - text + Attachment: + allOf: + - $ref: "#/components/schemas/Element" + - type: object + properties: + contentType: + type: string + pattern: '[^\s]+(\s[^\s]+)*' + description: Identifies the type of the data in the attachment and allows a method to be chosen to interpret or render the data. Includes mime type parameters such as charset where appropriate. + language: + type: string + pattern: '[^\s]+(\s[^\s]+)*' + description: The human language of the content. The value can be any valid value according to BCP 47. + data: + type: string + pattern: (\s*([0-9a-zA-Z\+/=]){4}\s*)+ + description: The actual data of the attachment – a sequence of bytes, base64 encoded. + url: + type: string + pattern: \S* + description: A location where the data can be accessed. + size: + type: integer + format: int32 + description: The number of bytes of data that make up this attachment (before base64 encoding, if that is done). + hash: + type: string + pattern: (\s*([0-9a-zA-Z\+/=]){4}\s*)+ + description: The calculated hash of the data using SHA–1. Represented using base64. + title: + type: string + pattern: '[ \r\n\t\S]+' + description: A label or set of text to display in place of the data. + creation: + type: string + pattern: ([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-9]000)(-(0[1-9]|1[0-2])(-(0[1-9]|[1-2][0-9]|3[0-1])(T([01][0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)((0[0-9]|1[0-3]):[0-5][0-9]|14:00)))?)?)? + description: The date that the attachment was first created. + CodeableConcept: + allOf: + - $ref: "#/components/schemas/Element" + - type: object + properties: + coding: + type: array + items: + $ref: "#/components/schemas/Coding" + description: A reference to a code defined by a terminology system. + text: + type: string + pattern: '[ \r\n\t\S]+' + description: A human language representation of the concept as seen/selected/uttered by the user who entered the data and/or which represents the intended meaning of the user. + Coding: + allOf: + - $ref: "#/components/schemas/Element" + - type: object + properties: + system: + type: string + pattern: \S* + description: The identification of the code system that defines the meaning of the symbol in the code. + version: + type: string + pattern: '[ \r\n\t\S]+' + description: The version of the code system which was used when choosing this code. Note that a well–maintained code system does not need the version reported, because the meaning of codes is consistent across versions. However this cannot consistently be assured, and when the meaning is not guaranteed to be consistent, the version SHOULD be exchanged. + code: + type: string + pattern: '[^\s]+(\s[^\s]+)*' + description: A symbol in syntax defined by the system. The symbol may be a predefined code or an expression in a syntax defined by the coding system (e.g. post–coordination). + display: + type: string + pattern: '[ \r\n\t\S]+' + description: A representation of the meaning of the code in the system, following the rules of the system. + userSelected: + type: boolean + description: Indicates that this coding was chosen by a user directly – e.g. off a pick list of available items (codes or displays). + ContactPoint: + allOf: + - $ref: "#/components/schemas/Element" + - type: object + properties: + system: + type: string + pattern: '[^\s]+(\s[^\s]+)*' + description: Telecommunications form for contact point – what communications system is required to make use of the contact. + value: + type: string + pattern: '[ \r\n\t\S]+' + description: The actual contact point details, in a form that is meaningful to the designated communication system (i.e. phone number or email address). + use: + type: string + pattern: '[^\s]+(\s[^\s]+)*' + description: Identifies the purpose for the contact point. + rank: + type: integer + format: int32 + description: Specifies a preferred order in which to use a set of contacts. ContactPoints with lower rank values are more preferred than those with higher rank values. + period: + $ref: "#/components/schemas/Period" + description: Time period when the contact point was/is in use. + Count: + allOf: + - $ref: "#/components/schemas/Quantity" + - type: object + properties: {} + Distance: + allOf: + - $ref: "#/components/schemas/Quantity" + - type: object + properties: {} + Duration: + allOf: + - $ref: "#/components/schemas/Quantity" + - type: object + properties: {} + HumanName: + allOf: + - $ref: "#/components/schemas/Element" + - type: object + properties: + use: + type: string + pattern: '[^\s]+(\s[^\s]+)*' + description: Identifies the purpose for this name. + text: + type: string + pattern: '[ \r\n\t\S]+' + description: Specifies the entire name as it should be displayed e.g. on an application UI. This may be provided instead of or as well as the specific parts. + family: + type: string + pattern: '[ \r\n\t\S]+' + description: The part of a name that links to the genealogy. In some cultures (e.g. Eritrea) the family name of a son is the first name of his father. + given: + type: array + items: + type: string + pattern: '[ \r\n\t\S]+' + description: Given name. + prefix: + type: array + items: + type: string + pattern: '[ \r\n\t\S]+' + description: Part of the name that is acquired as a title due to academic, legal, employment or nobility status, etc. and that appears at the start of the name. + suffix: + type: array + items: + type: string + pattern: '[ \r\n\t\S]+' + description: Part of the name that is acquired as a title due to academic, legal, employment or nobility status, etc. and that appears at the end of the name. + period: + $ref: "#/components/schemas/Period" + description: Indicates the period of time when this name was valid for the named person. + Identifier: + allOf: + - $ref: "#/components/schemas/Element" + - type: object + properties: + use: + type: string + pattern: '[^\s]+(\s[^\s]+)*' + description: The purpose of this identifier. + type: + $ref: "#/components/schemas/CodeableConcept" + description: A coded type for the identifier that can be used to determine which identifier to use for a specific purpose. + system: + type: string + pattern: \S* + description: Establishes the namespace for the value – that is, a URL that describes a set values that are unique. + value: + type: string + pattern: '[ \r\n\t\S]+' + description: The portion of the identifier typically relevant to the user and which is unique within the context of the system. + period: + $ref: "#/components/schemas/Period" + description: Time period during which identifier is/was valid for use. + assigner: + $ref: "#/components/schemas/Reference" + description: Organization that issued/manages the identifier. + example: + reference: Organization/123 + type: Organization + display: The Assigning Organization + Money: + allOf: + - $ref: "#/components/schemas/Element" + - type: object + properties: + value: + type: number + description: Numerical value (with implicit precision). + currency: + type: string + pattern: '[^\s]+(\s[^\s]+)*' + description: ISO 4217 Currency Code. + MoneyQuantity: + allOf: + - $ref: "#/components/schemas/Quantity" + - type: object + properties: {} + Period: + allOf: + - $ref: "#/components/schemas/Element" + - type: object + properties: + start: + type: string + pattern: ([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-9]000)(-(0[1-9]|1[0-2])(-(0[1-9]|[1-2][0-9]|3[0-1])(T([01][0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)((0[0-9]|1[0-3]):[0-5][0-9]|14:00)))?)?)? + description: The start of the period. The boundary is inclusive. + end: + type: string + pattern: ([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-9]000)(-(0[1-9]|1[0-2])(-(0[1-9]|[1-2][0-9]|3[0-1])(T([01][0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)((0[0-9]|1[0-3]):[0-5][0-9]|14:00)))?)?)? + description: The end of the period. If the end of the period is missing, it means no end was known or planned at the time the instance was created. The start may be in the past, and the end date in the future, which means that period is expected/planned to end at that time. + Quantity: + allOf: + - $ref: "#/components/schemas/Element" + - type: object + properties: + value: + type: number + description: The value of the measured amount. The value includes an implicit precision in the presentation of the value. + comparator: + type: string + pattern: '[^\s]+(\s[^\s]+)*' + description: How the value should be understood and represented – whether the actual value is greater or less than the stated value due to measurement issues; e.g. if the comparator is "<" , then the real value is < stated value. + unit: + type: string + pattern: '[ \r\n\t\S]+' + description: A human–readable form of the unit. + system: + type: string + pattern: \S* + description: The identification of the system that provides the coded form of the unit. + code: + type: string + pattern: '[^\s]+(\s[^\s]+)*' + description: A computer processable form of the unit in some unit representation system. + Range: + allOf: + - $ref: "#/components/schemas/Element" + - type: object + properties: + low: + $ref: "#/components/schemas/SimpleQuantity" + description: The low limit. The boundary is inclusive. + high: + $ref: "#/components/schemas/SimpleQuantity" + description: The high limit. The boundary is inclusive. + Ratio: + allOf: + - $ref: "#/components/schemas/Element" + - type: object + properties: + numerator: + $ref: "#/components/schemas/Quantity" + description: The value of the numerator. + denominator: + $ref: "#/components/schemas/Quantity" + description: The value of the denominator. + Reference: + allOf: + - $ref: "#/components/schemas/Element" + - type: object + properties: + reference: + type: string + pattern: '[ \r\n\t\S]+' + description: A reference to a location at which the other resource is found. The reference may be a relative reference, in which case it is relative to the service base URL, or an absolute URL that resolves to the location where the resource is found. The reference may be version specific or not. If the reference is not to a FHIR RESTful server, then it should be assumed to be version specific. Internal fragment references (start with '#') refer to contained resources. + type: + type: string + pattern: \S* + description: |- + The expected type of the target of the reference. If both Reference.type and Reference.reference are populated and Reference.reference is a FHIR URL, both SHALL be consistent. + + The type is the Canonical URL of Resource Definition that is the type this reference refers to. References are URLs that are relative to http://hl7.org/fhir/StructureDefinition/ e.g. "Patient" is a reference to http://hl7.org/fhir/StructureDefinition/Patient. Absolute URLs are only allowed for logical models (and can only be used in references in logical models, not resources). + identifier: + $ref: "#/components/schemas/Identifier" + description: An identifier for the target resource. This is used when there is no way to reference the other resource directly, either because the entity it represents is not available through a FHIR server, or because there is no way for the author of the resource to convert a known identifier to an actual location. There is no requirement that a Reference.identifier point to something that is actually exposed as a FHIR instance, but it SHALL point to a business concept that would be expected to be exposed as a FHIR instance, and that instance would need to be of a FHIR resource type allowed by the reference. + display: + type: string + pattern: '[ \r\n\t\S]+' + description: Plain text narrative that identifies the resource in addition to the resource reference. + SampledData: + allOf: + - $ref: "#/components/schemas/Element" + - type: object + properties: + origin: + $ref: "#/components/schemas/SimpleQuantity" + description: The base quantity that a measured value of zero represents. In addition, this provides the units of the entire measurement series. + period: + type: number + description: The length of time between sampling times, measured in milliseconds. + factor: + type: number + description: A correction factor that is applied to the sampled data points before they are added to the origin. + lowerLimit: + type: number + description: The lower limit of detection of the measured points. This is needed if any of the data points have the value "L" (lower than detection limit). + upperLimit: + type: number + description: The upper limit of detection of the measured points. This is needed if any of the data points have the value "U" (higher than detection limit). + dimensions: + type: integer + format: int32 + description: The number of sample points at each time point. If this value is greater than one, then the dimensions will be interlaced – all the sample points for a point in time will be recorded at once. + data: + type: string + pattern: '[ \r\n\t\S]+' + description: A series of data points which are decimal values separated by a single space (character u20). The special values "E" (error), "L" (below detection limit) and "U" (above detection limit) can also be used in place of a decimal value. + required: + - origin + - period + - dimensions + SimpleQuantity: + allOf: + - $ref: "#/components/schemas/Quantity" + - type: object + properties: {} + Signature: + allOf: + - $ref: "#/components/schemas/Element" + - type: object + properties: + type: + type: array + items: + $ref: "#/components/schemas/Coding" + description: An indication of the reason that the entity signed this document. This may be explicitly included as part of the signature information and can be used when determining accountability for various actions concerning the document. + minItems: 1 + when: + type: string + pattern: ([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-9]000)-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])T([01][0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)((0[0-9]|1[0-3]):[0-5][0-9]|14:00)) + description: When the digital signature was signed. + who: + $ref: "#/components/schemas/Reference" + description: A reference to an application–usable description of the identity that signed (e.g. the signature used their private key). + onBehalfOf: + $ref: "#/components/schemas/Reference" + description: A reference to an application–usable description of the identity that is represented by the signature. + targetFormat: + type: string + pattern: '[^\s]+(\s[^\s]+)*' + description: A mime type that indicates the technical format of the target resources signed by the signature. + sigFormat: + type: string + pattern: '[^\s]+(\s[^\s]+)*' + description: A mime type that indicates the technical format of the signature. Important mime types are application/signature+xml for X ML DigSig, application/jose for JWS, and image/* for a graphical image of a signature, etc. + data: + type: string + pattern: (\s*([0-9a-zA-Z\+/=]){4}\s*)+ + description: The base64 encoding of the Signature content. When signature is not recorded electronically this element would be empty. + required: + - type + - when + - who + Timing: + allOf: + - $ref: "#/components/schemas/BackboneElement" + - type: object + properties: + event: + type: array + items: + type: string + pattern: ([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-9]000)(-(0[1-9]|1[0-2])(-(0[1-9]|[1-2][0-9]|3[0-1])(T([01][0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)((0[0-9]|1[0-3]):[0-5][0-9]|14:00)))?)?)? + description: Identifies specific times when the event occurs. + repeat: + $ref: "#/components/schemas/TimingRepeat" + description: A set of rules that describe when the event is scheduled. + code: + $ref: "#/components/schemas/CodeableConcept" + description: A code for the timing schedule (or just text in code.text). Some codes such as BID are ubiquitous, but many institutions define their own additional codes. If a code is provided, the code is understood to be a complete statement of whatever is specified in the structured timing data, and either the code or the data may be used to interpret the Timing, with the exception that .repeat.bounds still applies over the code (and is not contained in the code). + TimingRepeat: + allOf: + - $ref: "#/components/schemas/BackboneElement" + - type: object + properties: + boundsDuration: + $ref: "#/components/schemas/Duration" + description: Either a duration for the length of the timing schedule, a range of possible length, or outer bounds for start and/or end limits of the timing schedule. + boundsRange: + $ref: "#/components/schemas/Range" + description: Either a duration for the length of the timing schedule, a range of possible length, or outer bounds for start and/or end limits of the timing schedule. + boundsPeriod: + $ref: "#/components/schemas/Period" + description: Either a duration for the length of the timing schedule, a range of possible length, or outer bounds for start and/or end limits of the timing schedule. + count: + type: integer + format: int32 + description: A total count of the desired number of repetitions across the duration of the entire timing specification. If countMax is present, this element indicates the lower bound of the allowed range of count values. + countMax: + type: integer + format: int32 + description: If present, indicates that the count is a range – so to perform the action between [count] and [countMax] times. + duration: + type: number + description: How long this thing happens for when it happens. If durationMax is present, this element indicates the lower bound of the allowed range of the duration. + durationMax: + type: number + description: If present, indicates that the duration is a range – so to perform the action between [duration] and [durationMax] time length. + durationUnit: + type: string + pattern: '[^\s]+(\s[^\s]+)*' + description: The units of time for the duration, in UCUM units. + frequency: + type: integer + format: int32 + description: The number of times to repeat the action within the specified period. If frequencyMax is present, this element indicates the lower bound of the allowed range of the frequency. + frequencyMax: + type: integer + format: int32 + description: If present, indicates that the frequency is a range – so to repeat between [frequency] and [frequencyMax] times within the period or period range. + period: + type: number + description: Indicates the duration of time over which repetitions are to occur; e.g. to express "3 times per day", 3 would be the frequency and "1 day" would be the period. If periodMax is present, this element indicates the lower bound of the allowed range of the period length. + periodMax: + type: number + description: If present, indicates that the period is a range from [period] to [periodMax], allowing expressing concepts such as "do this once every 3–5 days. + periodUnit: + type: string + pattern: '[^\s]+(\s[^\s]+)*' + description: The units of time for the period in UCUM units. + dayOfWeek: + type: array + items: + type: string + pattern: '[^\s]+(\s[^\s]+)*' + description: If one or more days of week is provided, then the action happens only on the specified day(s). + timeOfDay: + type: array + items: + type: string + pattern: ([01][0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)(\.[0-9]+)? + description: Specified time of day for action to take place. + when: + type: array + items: + type: string + pattern: '[^\s]+(\s[^\s]+)*' + description: An approximate time period during the day, potentially linked to an event of daily living that indicates when the action should occur. + offset: + type: integer + format: int32 + description: The number of minutes from the event. If the event code does not indicate whether the minutes is before or after the event, then the offset is assumed to be after the event. + ContactDetail: + allOf: + - $ref: "#/components/schemas/Element" + - type: object + properties: + name: + type: string + pattern: '[ \r\n\t\S]+' + description: The name of an individual to contact. + telecom: + type: array + items: + $ref: "#/components/schemas/ContactPoint" + description: The contact details for the individual (if a name was provided) or the organization. + RelatedArtifact: + allOf: + - $ref: "#/components/schemas/Element" + - type: object + properties: + type: + type: string + pattern: '[^\s]+(\s[^\s]+)*' + description: The type of relationship to the related artifact. + label: + type: string + pattern: '[ \r\n\t\S]+' + description: A short label that can be used to reference the citation from elsewhere in the containing artifact, such as a footnote index. + display: + type: string + pattern: '[ \r\n\t\S]+' + description: A brief description of the document or knowledge resource being referenced, suitable for display to a consumer. + citation: + type: string + pattern: '[ \r\n\t\S]+' + description: A bibliographic citation for the related artifact. This text SHOULD be formatted according to an accepted citation format. + url: + type: string + pattern: \S* + description: A url for the artifact that can be followed to access the actual content. + document: + $ref: "#/components/schemas/Attachment" + description: The document being referenced, represented as an attachment. This is exclusive with the resource element. + resource: + type: string + pattern: \S* + description: The related resource, such as a library, value set, profile, or other knowledge resource. + required: + - type + UsageContext: + allOf: + - $ref: "#/components/schemas/Element" + - type: object + properties: + code: + $ref: "#/components/schemas/Coding" + description: A code that identifies the type of context being specified by this usage context. + valueCodeableConcept: + $ref: "#/components/schemas/CodeableConcept" + description: A value that defines the context specified in this context of use. The interpretation of the value is defined by the code. + valueQuantity: + $ref: "#/components/schemas/Quantity" + description: A value that defines the context specified in this context of use. The interpretation of the value is defined by the code. + valueRange: + $ref: "#/components/schemas/Range" + description: A value that defines the context specified in this context of use. The interpretation of the value is defined by the code. + valueReference: + $ref: "#/components/schemas/Reference" + description: A value that defines the context specified in this context of use. The interpretation of the value is defined by the code. + required: + - code + Meta: + allOf: + - $ref: "#/components/schemas/Element" + - type: object + properties: + versionId: + type: string + pattern: '[A-Za-z0-9\-\.]{1,64}' + description: The version specific identifier, as it appears in the version portion of the URL. This value changes when the resource is created, updated, or deleted. + lastUpdated: + type: string + pattern: ([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-9]000)-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])T([01][0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)((0[0-9]|1[0-3]):[0-5][0-9]|14:00)) + description: When the resource last changed – e.g. when the version changed. + source: + type: string + pattern: \S* + description: A uri that identifies the source system of the resource. This provides a minimal amount of [Provenance](provenance.html#) information that can be used to track or differentiate the source of information in the resource. The source may identify another FHIR server, document, message, database, etc. + profile: + type: array + items: + type: string + pattern: \S* + description: A list of profiles (references to [StructureDefinition](structuredefinition.html#) resources) that this resource claims to conform to. The URL is a reference to [StructureDefinition.url](structuredefinition–definitions.html#StructureDefinition.url). + security: + type: array + items: + $ref: "#/components/schemas/Coding" + description: Security labels applied to this resource. These tags connect specific resources to the overall security policy and infrastructure. + tag: + type: array + items: + $ref: "#/components/schemas/Coding" + description: Tags applied to this resource. Tags are intended to be used to identify and relate resources to process and workflow, and applications are not required to consider the tags when interpreting the meaning of a resource. + Narrative: + allOf: + - $ref: "#/components/schemas/Element" + - type: object + properties: + status: + type: string + pattern: '[^\s]+(\s[^\s]+)*' + description: The status of the narrative – whether it's entirely generated (from just the defined data or the extensions too), or whether a human authored it and it may contain additional data. + div: + type: string + description: The actual narrative content, a stripped down version of XHTML. + required: + - status + - div + Extension: + allOf: + - $ref: "#/components/schemas/Element" + - type: object + properties: + url: + type: string + pattern: \S* + description: Source of the definition for the extension code – a logical name or a URL. + valueBase64Binary: + type: string + pattern: (\s*([0-9a-zA-Z\+/=]){4}\s*)+ + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueBoolean: + type: boolean + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueCanonical: + type: string + pattern: \S* + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueCode: + type: string + pattern: '[^\s]+(\s[^\s]+)*' + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueDate: + type: string + pattern: ([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-9]000)(-(0[1-9]|1[0-2])(-(0[1-9]|[1-2][0-9]|3[0-1]))?)? + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueDateTime: + type: string + pattern: ([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-9]000)(-(0[1-9]|1[0-2])(-(0[1-9]|[1-2][0-9]|3[0-1])(T([01][0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)((0[0-9]|1[0-3]):[0-5][0-9]|14:00)))?)?)? + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueDecimal: + type: number + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueId: + type: string + pattern: '[A-Za-z0-9\-\.]{1,64}' + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueInstant: + type: string + pattern: ([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-9]000)-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])T([01][0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)((0[0-9]|1[0-3]):[0-5][0-9]|14:00)) + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueInteger: + type: integer + format: int32 + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueMarkdown: + type: string + pattern: '[ \r\n\t\S]+' + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueOid: + type: string + pattern: urn:oid:[0-2](\.(0|[1-9][0-9]*))+ + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valuePositiveInt: + type: integer + format: int32 + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueString: + type: string + pattern: '[ \r\n\t\S]+' + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueTime: + type: string + pattern: ([01][0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)(\.[0-9]+)? + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueUnsignedInt: + type: integer + format: int32 + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueUri: + type: string + pattern: \S* + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueUrl: + type: string + pattern: \S* + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueUuid: + type: string + pattern: urn:uuid:[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12} + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueAddress: + $ref: "#/components/schemas/Address" + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueAge: + $ref: "#/components/schemas/Age" + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueAnnotation: + $ref: "#/components/schemas/Annotation" + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueAttachment: + $ref: "#/components/schemas/Attachment" + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueCodeableConcept: + $ref: "#/components/schemas/CodeableConcept" + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueCoding: + $ref: "#/components/schemas/Coding" + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueContactPoint: + $ref: "#/components/schemas/ContactPoint" + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueCount: + $ref: "#/components/schemas/Count" + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueDistance: + $ref: "#/components/schemas/Distance" + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueDuration: + $ref: "#/components/schemas/Duration" + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueHumanName: + $ref: "#/components/schemas/HumanName" + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueIdentifier: + $ref: "#/components/schemas/Identifier" + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueMoney: + $ref: "#/components/schemas/Money" + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valuePeriod: + $ref: "#/components/schemas/Period" + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueQuantity: + $ref: "#/components/schemas/Quantity" + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueRange: + $ref: "#/components/schemas/Range" + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueRatio: + $ref: "#/components/schemas/Ratio" + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueReference: + $ref: "#/components/schemas/Reference" + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueSampledData: + $ref: "#/components/schemas/SampledData" + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueSignature: + $ref: "#/components/schemas/Signature" + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueTiming: + $ref: "#/components/schemas/Timing" + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueContactDetail: + $ref: "#/components/schemas/ContactDetail" + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueRelatedArtifact: + $ref: "#/components/schemas/RelatedArtifact" + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueUsageContext: + $ref: "#/components/schemas/UsageContext" + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + valueMeta: + $ref: "#/components/schemas/Meta" + description: Value of extension – must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list). + required: + - url + DocumentId: + type: string + pattern: '[ \r\n\t\S]+' + RequestPathParams: + type: object + properties: + id: + $ref: "#/components/schemas/DocumentId" + required: + - id + RequestHeader: + type: object + properties: + fromASID: + $ref: "#/components/schemas/RequestHeaderFromASID" + toASID: + $ref: "#/components/schemas/RequestHeaderToASID" + required: + - fromASID + - toASID + RequestParams: + type: object + properties: + subject: + $ref: "#/components/schemas/RequestQuerySubject" + custodian.identifier: + $ref: "#/components/schemas/RequestQueryCustodian" + snomed.identifier: + $ref: "#/components/schemas/RequestQuerySnomedCode" + required: + - subject + RequestQuerySubject: + type: string + pattern: ^https\:\/\/fhir\.nhs\.uk\/Id\/nhs-number\|(\d+)$ + RequestQueryCustodian: + type: string + pattern: ^https\:\/\/fhir\.nhs\.uk\/Id\/ods-code\|(\w+)$ + RequestQuerySnomedCode: + type: string + pattern: (^http\:\/\/snomed\.info\/sct\|(\d+)) + RequestHeaderFromASID: + type: string + RequestHeaderToASID: + type: string + securitySchemes: {} + parameters: + id: + name: id + in: path + required: true + description: logical identifier + schema: + $ref: "#/components/schemas/DocumentId" + subject: + name: subject + in: query + schema: + $ref: "#/components/schemas/RequestQuerySubject" + required: true + custodian: + name: custodian.identifier + in: query + schema: + $ref: "#/components/schemas/RequestQueryCustodian" + snomedCode: + name: snomed.identifier + in: query + schema: + $ref: "#/components/schemas/RequestQuerySnomedCode" + fromASID: + name: fromASID + description: Client System ASID. + in: header + schema: + $ref: "#/components/schemas/RequestHeaderFromASID" + required: true + toASID: + name: toASID + description: The Spine ASID. + in: header + schema: + $ref: "#/components/schemas/RequestHeaderFromASID" + required: true