This version of core is strictly a preview of what is currently in development for 1.2.0 and should not be built against.
| Core Version | Minimum Guide Version | Minimum API Spec Version |
|---|---|---|
| v1.2.0-alpha | v1.8.0 | v1.2.0 |
Standard Pattern - Endpoints
BaRS employs an endpoint catalogue to match Target Identifiers with a stored endpoint. Target Identifiers are provided in a header which is descripted in the API Spec The following pages will describe how these entries can be managed, outside of the onboarding process.
The BaRS endpoints will utilise not only service ids and a physical endpoint, but data describing the healthcare service, the provider of that service and the organization which manages and/or supplies the endpoint in question. This information will be stored using 3 FHIR resources which appropriately describe Endpoints, HealthcareServices and Organizations.
BaRS will expose an interface to manage this information for each of these resources. Each resource will have a corresponding endpoint on the Proxy to assist in managing these endpoints.
Interface
The Interface for managing the 3 resources relating to an "endpoint" is detailed below and is part of the API Specification for Core 1.2.0 and above.
Request and Response
| Behaviour | Initiator | VERB | API Path | Parameters | Payload | Payload Definition | Reactor | Reactor Behaviour | Happy Response | Response Definition |
|---|---|---|---|---|---|---|---|---|---|---|
| Get Capabilities | Sender | GET | /metadata | N/A | N/A | N/A | Endpoint Catalogue | Return a capability statement describing capabilities. | 200: CapabilityStatement | https://www.hl7.org/fhir/capabilitystatement.html |
| Get Endpoints | Sender / Receiver / BaRS / Admin | GET | /Endpoint | query: _has | N/A | N/A | Endpoint Catalogue | Return a searchset of Endpoints based on the properties of the parent given as a _has HealthcareService.Identifier or Id | 200: Search Bundle | https://simplifier.net/guide/NHSBookingandReferrals/UKCore-Bundle searchset |
| query: Endpoint.identifier | N/A | N/A | Endpoint Catalogue | Return a searchset of Endpoints based on the identifier of the Endpoint itself. this should only be one item. | 200: Search Bundle | https://simplifier.net/guide/NHSBookingandReferrals/UKCore-Bundle searchset | ||||
| Get Endpoint | Sender / Receiver / BaRS / Admin | GET | /Endpoint/{id} | path: id | N/A | N/A | Endpoint Catalogue | Return specific Endpoint based on id given. | 200: Endpoint | https://fhir.hl7.org.uk/StructureDefinition/UKCore-Endpoint |
| Create Endpoint | Receiver / Admin | POST | /Endpoint | path: id | Endpoint | https://fhir.hl7.org.uk/StructureDefinition/UKCore-Endpoint | Endpoint Catalogue | Store a new Endpoint based on id given. | 201: Endpoint | https://fhir.hl7.org.uk/StructureDefinition/UKCore-Endpoint |
| Update Endpoint | Receiver / Admin | PUT | /Endpoint/{id} | path: id | Endpoint | https://fhir.hl7.org.uk/StructureDefinition/UKCore-Endpoint | Endpoint Catalogue | Update an existing endpoint based on id given. | 200: Endpoint | https://fhir.hl7.org.uk/StructureDefinition/UKCore-Endpoint |
| Delete Endpoint | Receiver / Admin | DELETE | /Endpoint/{id} | path: id | N/A | N/A | Endpoint Catalogue | Remove an existing endpoint based on id given | 200: OperationOutcome | https://fhir.hl7.org.uk/StructureDefinition/UKCore-OperationOutcome |
| Get Organisations | Sender / Receiver / BaRS / Admin | GET | /Organisation? | query: Organization.identifier | N/A | N/A | Endpoint Catalogue | Return a list of Organizations based on the identifier given | 200: Search Bundle | https://simplifier.net/guide/NHSBookingandReferrals/UKCore-Bundle searchset |
| Get Organisation | Sender / Receiver / BaRS / Admin | GET | /Organisation/{id} | path: id | N/A | N/A | Endpoint Catalogue | Return a specific Endpoint based on the id given. | 200: Organization | https://fhir.hl7.org.uk/StructureDefinition/UKCore-Organization |
| Create Organisation | Receiver / Admin | POST | /Organisation | path: id | Organization | https://fhir.hl7.org.uk/StructureDefinition/UKCore-Organization | Endpoint Catalogue | Store a new Organization based on the id given. | 201: Organization | https://fhir.hl7.org.uk/StructureDefinition/UKCore-Organization |
| Update Organisation | Receiver / Admin | PUT | /Organisation/{id} | path: id | Organization | https://fhir.hl7.org.uk/StructureDefinition/UKCore-Organization | Endpoint Catalogue | Update an existing Organization based on the id given. | 200: Organization | https://fhir.hl7.org.uk/StructureDefinition/UKCore-Organization |
| Delete Organisation | Receiver / Admin | DELETE | /Organisation/{id} | path: id | N/A | N/A | Endpoint Catalogue | Remove an existing Organization based on the id given. | 200: OperationOutcome | https://fhir.hl7.org.uk/StructureDefinition/UKCore-OperationOutcome |
| Get HealthcareService | Sender / Receiver / BaRS / Admin | GET | /HealthcareService | query: HealthcareService.identifier | N/A | N/A | Endpoint Catalogue | Return a list of HealthcareServices based on the identifier given | 200: Search Bundle | https://simplifier.net/guide/NHSBookingandReferrals/UKCore-Bundle searchset |
| query: HealthcareService.providedBy | N/A | N/A | Endpoint Catalogue | Return a list of HealthcareServices based on the identifier given | 200: Search Bundle | https://simplifier.net/guide/NHSBookingandReferrals/UKCore-Bundle searchset | ||||
| Get HealthcareService | Sender / Receiver / BaRS / Admin | GET | /HealthcareService/{id} | path: id | N/A | N/A | Endpoint Catalogue | Return a specific HealthcareServicesbased on the id given. | 200: HealthcareServices | https://fhir.hl7.org.uk/StructureDefinition/UKCore-Organization |
| Create HealthcareService | Receiver / Admin | POST | /HealthcareService | path: id | Organization | https://fhir.hl7.org.uk/StructureDefinition/UKCore-Organization | Endpoint Catalogue | Store a new HealthcareServicesbased on the id given. | 201: HealthcareServices | https://fhir.hl7.org.uk/StructureDefinition/UKCore-Organization |
| Update HealthcareService | Receiver / Admin | PUT | /HealthcareService/{id} | path: id | Organization | https://fhir.hl7.org.uk/StructureDefinition/UKCore-Organization | Endpoint Catalogue | Update an existing HealthcareServicesbased on the id given. | 200: HealthcareServices | https://fhir.hl7.org.uk/StructureDefinition/UKCore-Organization |
| Delete HealthcareService | Receiver / Admin | DELETE | /HealthcareService/{id} | path: id | N/A | N/A | Endpoint Catalogue | Remove an existing HealthcareServicesbased on the id given. | 200: OperationOutcome | https://fhir.hl7.org.uk/StructureDefinition/UKCore-OperationOutcome |
Parameters
This table describes the parameters currently defined for the Paths defined in the interface table above.
| API Path | Type | Parameter | Format | Purpose |
|---|---|---|---|---|
| /Endpoint? | query | _has | _has:HealthcareService.Identifier=https://fhir.nhs.uk/Id/dos-service-id|1000099999 | An identifier for the HealthcareService to which Endpoints belong. in this example an id or DoS id. |
| _has:HealthcareService.Id=95852b93-d1ab-4c51-8e7d-c24cf9b257a9 | ||||
| /Endpoint? | query | Endpoint.identifier | The identifier of the type of Endpoint. This would be used to say if you want a BaRS endpoint or otherwise. |
|
| /Endpoint/{} | path | id | GUID/UUID - "c1ab3fba-6bae-4ba4-b257-5a87c44d4a91" | The identifier of the endpoint. |
| /HealthcareService/? | query | HealthcareService.identifier | https://fhir.nhs.uk/Id/dos-service-id|1000099999 | an identifier of the healthcareService, in this example, a DoS id. |
| /HealthcareService/? | query | HealthcareService.providedBy | https://fhir.nhs.uk/Id/ods-organization-code|A001 | the owning organisations ODS code. |
| /HealthcareService/{id} | path | id | GUID/UUID - "c1ab3fba-6bae-4ba4-b257-5a87c44d4a91" | specific resource id of an HealthcareService. |
| /Organisation? | query | Organization.identifier | "A001" | An identifier for the organization. in this example an ODS code. |
| "https://fhir.nhs.uk/id/ods-organization-code|A001" | ||||
| /Organisation/{id} | path | id | GUID/UUID - "c1ab3fba-6bae-4ba4-b257-5a87c44d4a91" | specific resource id of an organization. |
Payloads for Creating or modifying an endpoint
Describing Endpoints will be facilitated by the Organization, HealthcareService and Endpoint FHIR resources. Each of these are detailed in the below tables. Examples of each are also given. In this model
- HealthcareServices Belong to an organization.
- An Organization can be a child Organization of a parent Organization, or Standalone.
- An Organization can describe a Provider or a Supplier.
- An Endpoint belongs to a HealthcareService.
- Multiple Endpoints of the same type are not permitted for a HealthcareService
> Organization
This resource will describe either the Organisation of the Provider or the Organisation of the Supplier managing an Endpoint
| UKCoreOrganization (Organization) | I | Organization | There are no (further) constraints on this element Element idOrganization A grouping of people or organizations with a common purpose DefinitionA formally or informally recognized grouping of people or organizations formed for the purpose of achieving some form of collective action. Includes companies, institutions, corporations, departments, community groups, healthcare practice groups, payer/insurer, etc.
| |
| id | Σ | 0..1 | string | There are no (further) constraints on this element Element idOrganization.id Logical id of this artifact DefinitionThe logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes. The only time that a resource does not have an id is when it is being submitted to the server using a create operation. |
| meta | Σ | 0..1 | Meta | There are no (further) constraints on this element Element idOrganization.meta Metadata about the resource DefinitionThe 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 | Σ ?! | 0..1 | uri | There are no (further) constraints on this element Element idOrganization.implicitRules A set of rules under which this content was created DefinitionA 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. Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.
|
| language | 0..1 | codeBinding | There are no (further) constraints on this element Element idOrganization.language Language of the resource content DefinitionThe base language in which the resource is written. Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute). A human language.
| |
| text | 0..1 | Narrative | There are no (further) constraints on this element Element idOrganization.text Text summary of the resource, for human interpretation Alternate namesnarrative, html, xhtml, display DefinitionA 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 resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a "text blob" or where text is additionally entered raw or narrated and encoded information is added later.
| |
| contained | 0..* | Resource | There are no (further) constraints on this element Element idOrganization.contained Contained, inline Resources Alternate namesinline resources, anonymous resources, contained resources DefinitionThese 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. This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.
| |
| extension | I | 0..* | Extension | Element idOrganization.extension Additional content defined by implementations Alternate namesextensions, user content DefinitionMay 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. There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. Unordered, Open, by url(Value) Extensions are always sliced by (at least) url Constraints
|
| mainLocation | I | 0..* | Extension(Reference()) | Element idOrganization.extension:mainLocation Main location Alternate namesextensions, user content DefinitionThe main location of the organisation. There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-MainLocation Constraints
|
| organizationPeriod | I | 0..1 | Extension(Period) | Element idOrganization.extension:organizationPeriod The date range that this organization should be considered available. Alternate namesextensions, user content DefinitionThe date range that this organization should be considered available. There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. http://hl7.org/fhir/StructureDefinition/organization-period Constraints
|
| id | 0..1 | string | There are no (further) constraints on this element Element idOrganization.extension:organizationPeriod.id Unique id for inter-element referencing DefinitionUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
| |
| extension | I | 0..0 | Extension | There are no (further) constraints on this element Element idOrganization.extension:organizationPeriod.extension Additional content defined by implementations Alternate namesextensions, user content DefinitionMay 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. There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. Unordered, Open, by url(Value) Extensions are always sliced by (at least) url Constraints
|
| url | 1..1 | uriFixed Value | There are no (further) constraints on this element Element idOrganization.extension:organizationPeriod.url identifies the meaning of the extension DefinitionSource of the definition for the extension code - a logical name or a URL. The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension. http://hl7.org/fhir/StructureDefinition/organization-period
| |
| value[x] | 1..1 | Element idOrganization.extension:organizationPeriod.value[x] The date range that this organization should be considered available. DefinitionThe date range that this organization should be considered available.
| ||
| valuePeriod | Period | There are no (further) constraints on this element Data type | ||
| modifierExtension | ?! I | 0..* | Extension | There are no (further) constraints on this element Element idOrganization.modifierExtension Extensions that cannot be ignored Alternate namesextensions, user content DefinitionMay 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). Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions. There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. Unordered, Open, by url(Value) Extensions are always sliced by (at least) url Constraints
|
| identifier | Σ I | 0..* | Identifier | Element idOrganization.identifier Identifies this organization across multiple systems DefinitionIdentifier for the organization that is used to identify the organization across multiple disparate systems. Organizations are known by a variety of ids. Some institutions maintain several, and most collect identifiers for exchange with other organizations concerning the organization. Unordered, Open, by system(Value) Constraints
|
| odsOrganisationCode | Σ I | 0..1 | Identifier | Element idOrganization.identifier:odsOrganisationCode Organisation Data Service code DefinitionIdentifier code supplier by the Organisation Data Service. Organizations are known by a variety of ids. Some institutions maintain several, and most collect identifiers for exchange with other organizations concerning the organization.
|
| id | 0..1 | string | There are no (further) constraints on this element Element idOrganization.identifier:odsOrganisationCode.id Unique id for inter-element referencing DefinitionUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
| |
| extension | I | 0..* | Extension | There are no (further) constraints on this element Element idOrganization.identifier:odsOrganisationCode.extension Additional content defined by implementations Alternate namesextensions, user content DefinitionMay 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. There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. Unordered, Open, by url(Value) Extensions are always sliced by (at least) url Constraints
|
| use | Σ ?! | 0..1 | codeBinding | There are no (further) constraints on this element Element idOrganization.identifier:odsOrganisationCode.use usual | official | temp | secondary | old (If known) DefinitionThe purpose of this identifier. Allows the appropriate identifier for a particular context of use to be selected from among a set of identifiers. Applications can assume that an identifier is permanent unless it explicitly says that it is temporary. Identifies the purpose for this identifier, if known .
|
| type | Σ | 0..1 | CodeableConceptBinding | There are no (further) constraints on this element Element idOrganization.identifier:odsOrganisationCode.type Description of identifier DefinitionA coded type for the identifier that can be used to determine which identifier to use for a specific purpose. Allows users to make use of identifiers when the identifier system is not known. This element deals only with general categories of identifiers. It SHOULD not be used for codes that correspond 1..1 with the Identifier.system. Some identifiers may fall into multiple categories due to common usage. Where the system is known, a type is unnecessary because the type is always part of the system definition. However systems often need to handle identifiers where the system is not known. There is not a 1:1 relationship between type and system, since many different systems have the same type. A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
|
| system | Σ | 1..1 | uriFixed Value | Element idOrganization.identifier:odsOrganisationCode.system The namespace for the identifier value DefinitionEstablishes the namespace for the value - that is, a URL that describes a set values that are unique. There are many sets of identifiers. To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers. Identifier.system is always case sensitive.
https://fhir.nhs.uk/Id/ods-organization-code
|
| value | Σ | 1..1 | string | There are no (further) constraints on this element Element idOrganization.identifier:odsOrganisationCode.value The value that is unique DefinitionThe portion of the identifier typically relevant to the user and which is unique within the context of the system. If the value is a full URI, then the system SHALL be urn:ietf:rfc:3986. The value's primary purpose is computational mapping. As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.) A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe.
General 123456 Mappings
|
| period | Σ I | 0..1 | Period | There are no (further) constraints on this element Element idOrganization.identifier:odsOrganisationCode.period Time period when id is/was valid for use DefinitionTime period during which identifier is/was valid for use. A Period specifies a range of time; the context of use will specify whether the entire range applies (e.g. "the patient was an inpatient of the hospital for this time range") or one value from the range applies (e.g. "give to the patient between these two times"). Period is not used for a duration (a measure of elapsed time). See Duration.
|
| assigner | Σ I | 0..1 | Reference() | Element idOrganization.identifier:odsOrganisationCode.assigner Organization that issued id (may be just text) DefinitionOrganization that issued/manages the identifier. The Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.
|
| odsSiteCode | Σ I | 0..1 | Identifier | Element idOrganization.identifier:odsSiteCode ODS Site code to identify the organisation at site level DefinitionODS Site code to identify the organisation at site level. Organizations are known by a variety of ids. Some institutions maintain several, and most collect identifiers for exchange with other organizations concerning the organization.
|
| id | 0..1 | string | There are no (further) constraints on this element Element idOrganization.identifier:odsSiteCode.id Unique id for inter-element referencing DefinitionUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
| |
| extension | I | 0..* | Extension | There are no (further) constraints on this element Element idOrganization.identifier:odsSiteCode.extension Additional content defined by implementations Alternate namesextensions, user content DefinitionMay 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. There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. Unordered, Open, by url(Value) Extensions are always sliced by (at least) url Constraints
|
| use | Σ ?! | 0..1 | codeBinding | There are no (further) constraints on this element Element idOrganization.identifier:odsSiteCode.use usual | official | temp | secondary | old (If known) DefinitionThe purpose of this identifier. Allows the appropriate identifier for a particular context of use to be selected from among a set of identifiers. Applications can assume that an identifier is permanent unless it explicitly says that it is temporary. Identifies the purpose for this identifier, if known .
|
| type | Σ | 0..1 | CodeableConceptBinding | There are no (further) constraints on this element Element idOrganization.identifier:odsSiteCode.type Description of identifier DefinitionA coded type for the identifier that can be used to determine which identifier to use for a specific purpose. Allows users to make use of identifiers when the identifier system is not known. This element deals only with general categories of identifiers. It SHOULD not be used for codes that correspond 1..1 with the Identifier.system. Some identifiers may fall into multiple categories due to common usage. Where the system is known, a type is unnecessary because the type is always part of the system definition. However systems often need to handle identifiers where the system is not known. There is not a 1:1 relationship between type and system, since many different systems have the same type. A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
|
| system | Σ | 1..1 | uriFixed Value | Element idOrganization.identifier:odsSiteCode.system The namespace for the identifier value DefinitionEstablishes the namespace for the value - that is, a URL that describes a set values that are unique. There are many sets of identifiers. To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers. Identifier.system is always case sensitive.
https://fhir.nhs.uk/Id/ods-site-code
|
| value | Σ | 1..1 | string | There are no (further) constraints on this element Element idOrganization.identifier:odsSiteCode.value The value that is unique DefinitionThe portion of the identifier typically relevant to the user and which is unique within the context of the system. If the value is a full URI, then the system SHALL be urn:ietf:rfc:3986. The value's primary purpose is computational mapping. As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.) A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe.
General 123456 Mappings
|
| period | Σ I | 0..1 | Period | There are no (further) constraints on this element Element idOrganization.identifier:odsSiteCode.period Time period when id is/was valid for use DefinitionTime period during which identifier is/was valid for use. A Period specifies a range of time; the context of use will specify whether the entire range applies (e.g. "the patient was an inpatient of the hospital for this time range") or one value from the range applies (e.g. "give to the patient between these two times"). Period is not used for a duration (a measure of elapsed time). See Duration.
|
| assigner | Σ I | 0..1 | Reference() | Element idOrganization.identifier:odsSiteCode.assigner Organization that issued id (may be just text) DefinitionOrganization that issued/manages the identifier. The Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.
|
| active | Σ ?! | 0..1 | boolean | There are no (further) constraints on this element Element idOrganization.active Whether the organization's record is still in active use DefinitionWhether the organization's record is still in active use. Need a flag to indicate a record is no longer to be used and should generally be hidden for the user in the UI. This active flag is not intended to be used to mark an organization as temporarily closed or under construction. Instead the Location(s) within the Organization should have the suspended status. If further details of the reason for the suspension are required, then an extension on this element should be used. This element is labeled as a modifier because it may be used to mark that the resource was created in error. This resource is generally assumed to be active if no value is provided for the active element
|
| type | Σ | 0..* | CodeableConcept | There are no (further) constraints on this element Element idOrganization.type Kind of organization DefinitionThe kind(s) of organization that this is. Need to be able to track the kind of organization that this is - different organization types have different uses. Organizations can be corporations, wards, sections, clinical teams, government departments, etc. Note that code is generally a classifier of the type of organization; in many applications, codes are used to identity a particular organization (say, ward) as opposed to another of the same type - these are identifiers, not codes When considering if multiple types are appropriate, you should evaluate if child organizations would be a more appropriate use of the concept, as different types likely are in different sub-areas of the organization. This is most likely to be used where type values have orthogonal values, such as a religious, academic and medical center. We expect that some jurisdictions will profile this optionality to be a single cardinality. Used to categorize the organization.
|
| name | Σ I | 0..1 | string | There are no (further) constraints on this element Element idOrganization.name Name used for the organization DefinitionA name associated with the organization. Need to use the name as the label of the organization. If the name of an organization changes, consider putting the old name in the alias column so that it can still be located through searches.
|
| alias | 0..* | string | There are no (further) constraints on this element Element idOrganization.alias A list of alternate names that the organization is known as, or was known as in the past DefinitionA list of alternate names that the organization is known as, or was known as in the past. Over time locations and organizations go through many changes and can be known by different names. For searching knowing previous names that the organization was known by can be very useful. There are no dates associated with the alias/historic names, as this is not intended to track when names were used, but to assist in searching so that older names can still result in identifying the organization.
| |
| telecom | I | 0..* | ContactPoint | There are no (further) constraints on this element Element idOrganization.telecom A contact detail for the organization DefinitionA contact detail for the organization. Human contact for the organization. The use code 'home' is not to be used. Note that these contacts are not the contact details of people who are employed by or represent the organization, but official contacts for the organization itself.
|
| address | I | 0..* | Address | There are no (further) constraints on this element Element idOrganization.address An address for the organization DefinitionAn address for the organization. May need to keep track of the organization's addresses for contacting, billing or reporting requirements. Organization may have multiple addresses with different uses or applicable periods. The use code 'home' is not to be used.
|
| partOf | Σ I | 0..1 | Reference() | Element idOrganization.partOf The organization of which this organization forms a part DefinitionThe organization of which this organization forms a part. Need to be able to track the hierarchy of organizations within an organization. References SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc.). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository.
|
| id | 0..1 | string | There are no (further) constraints on this element Element idOrganization.partOf.id Unique id for inter-element referencing DefinitionUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
| |
| extension | I | 0..* | Extension | There are no (further) constraints on this element Element idOrganization.partOf.extension Additional content defined by implementations Alternate namesextensions, user content DefinitionMay 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. There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. Unordered, Open, by url(Value) Extensions are always sliced by (at least) url Constraints
|
| reference | Σ I | 0..1 | string | There are no (further) constraints on this element Element idOrganization.partOf.reference Literal reference, Relative, internal or absolute URL DefinitionA 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. Using absolute URLs provides a stable scalable approach suitable for a cloud/web context, while using relative/logical references provides a flexible approach suitable for use when trading across closed eco-system boundaries. Absolute URLs do not need to point to a FHIR RESTful server, though this is the preferred approach. If the URL conforms to the structure "/[type]/[id]" then it should be assumed that the reference is to a FHIR RESTful server.
|
| type | Σ | 0..1 | uriBinding | There are no (further) constraints on this element Element idOrganization.partOf.type Type the reference refers to (e.g. "Patient") DefinitionThe 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). This element is used to indicate the type of the target of the reference. This may be used which ever of the other elements are populated (or not). In some cases, the type of the target may be determined by inspection of the reference (e.g. a RESTful URL) or by resolving the target of the reference; if both the type and a reference is provided, the reference SHALL resolve to a resource of the same type as that specified. Aa resource (or, for logical models, the URI of the logical model).
|
| identifier | Σ | 0..1 | Identifier | There are no (further) constraints on this element Element idOrganization.partOf.identifier Logical reference, when literal reference is not known DefinitionAn 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. When an identifier is provided in place of a reference, any system processing the reference will only be able to resolve the identifier to a reference if it understands the business context in which the identifier is used. Sometimes this is global (e.g. a national identifier) but often it is not. For this reason, none of the useful mechanisms described for working with references (e.g. chaining, includes) are possible, nor should servers be expected to be able resolve the reference. Servers may accept an identifier based reference untouched, resolve it, and/or reject it - see CapabilityStatement.rest.resource.referencePolicy. When both an identifier and a literal reference are provided, the literal reference is preferred. Applications processing the resource are allowed - but not required - to check that the identifier matches the literal reference Applications converting a logical reference to a literal reference may choose to leave the logical reference present, or remove it. Reference is intended to point to a structure that can potentially be expressed as a FHIR resource, though there is no need for it to exist as an actual FHIR resource instance - except in as much as an application wishes to actual find the target of the reference. The content referred to be the identifier must meet the logical constraints implied by any limitations on what resource types are permitted for the reference. For example, it would not be legitimate to send the identifier for a drug prescription if the type were Reference(Observation|DiagnosticReport). One of the use-cases for Reference.identifier is the situation where no FHIR representation exists (where the type is Reference (Any).
|
| id | 0..1 | string | There are no (further) constraints on this element Element idOrganization.partOf.identifier.id Unique id for inter-element referencing DefinitionUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
| |
| extension | I | 0..* | Extension | There are no (further) constraints on this element Element idOrganization.partOf.identifier.extension Additional content defined by implementations Alternate namesextensions, user content DefinitionMay 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. There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. Unordered, Open, by url(Value) Extensions are always sliced by (at least) url Constraints
|
| use | Σ ?! | 0..1 | codeBinding | There are no (further) constraints on this element Element idOrganization.partOf.identifier.use usual | official | temp | secondary | old (If known) DefinitionThe purpose of this identifier. Allows the appropriate identifier for a particular context of use to be selected from among a set of identifiers. Applications can assume that an identifier is permanent unless it explicitly says that it is temporary. Identifies the purpose for this identifier, if known .
|
| type | Σ | 0..1 | CodeableConceptBinding | There are no (further) constraints on this element Element idOrganization.partOf.identifier.type Description of identifier DefinitionA coded type for the identifier that can be used to determine which identifier to use for a specific purpose. Allows users to make use of identifiers when the identifier system is not known. This element deals only with general categories of identifiers. It SHOULD not be used for codes that correspond 1..1 with the Identifier.system. Some identifiers may fall into multiple categories due to common usage. Where the system is known, a type is unnecessary because the type is always part of the system definition. However systems often need to handle identifiers where the system is not known. There is not a 1:1 relationship between type and system, since many different systems have the same type. A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
|
| system | Σ | 0..1 | uri | There are no (further) constraints on this element Element idOrganization.partOf.identifier.system The namespace for the identifier value DefinitionEstablishes the namespace for the value - that is, a URL that describes a set values that are unique. There are many sets of identifiers. To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers. Identifier.system is always case sensitive.
General http://www.acme.com/identifiers/patient Mappings
|
| value | Σ | 0..1 | string | There are no (further) constraints on this element Element idOrganization.partOf.identifier.value The value that is unique DefinitionThe portion of the identifier typically relevant to the user and which is unique within the context of the system. If the value is a full URI, then the system SHALL be urn:ietf:rfc:3986. The value's primary purpose is computational mapping. As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.) A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe.
General 123456 Mappings
|
| period | Σ I | 0..1 | Period | There are no (further) constraints on this element Element idOrganization.partOf.identifier.period Time period when id is/was valid for use DefinitionTime period during which identifier is/was valid for use. A Period specifies a range of time; the context of use will specify whether the entire range applies (e.g. "the patient was an inpatient of the hospital for this time range") or one value from the range applies (e.g. "give to the patient between these two times"). Period is not used for a duration (a measure of elapsed time). See Duration.
|
| assigner | Σ I | 0..1 | Reference() | Element idOrganization.partOf.identifier.assigner Organization that issued id (may be just text) DefinitionOrganization that issued/manages the identifier. The Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.
|
| display | Σ | 0..1 | string | There are no (further) constraints on this element Element idOrganization.partOf.display Text alternative for the resource DefinitionPlain text narrative that identifies the resource in addition to the resource reference. This is generally not the same as the Resource.text of the referenced resource. The purpose is to identify what's being referenced, not to fully describe it.
|
| contact | 0..* | BackboneElement | There are no (further) constraints on this element Element idOrganization.contact Contact for the organization for a certain purpose DefinitionContact for the organization for a certain purpose. Need to keep track of assigned contact points within bigger organization. Where multiple contacts for the same purpose are provided there is a standard extension that can be used to determine which one is the preferred contact to use.
| |
| id | 0..1 | string | There are no (further) constraints on this element Element idOrganization.contact.id Unique id for inter-element referencing DefinitionUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
| |
| extension | I | 0..* | Extension | There are no (further) constraints on this element Element idOrganization.contact.extension Additional content defined by implementations Alternate namesextensions, user content DefinitionMay 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. There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. Unordered, Open, by url(Value) Extensions are always sliced by (at least) url Constraints
|
| modifierExtension | Σ ?! I | 0..* | Extension | There are no (further) constraints on this element Element idOrganization.contact.modifierExtension Extensions that cannot be ignored even if unrecognized Alternate namesextensions, user content, modifiers DefinitionMay 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). Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions. There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
|
| purpose | 0..1 | CodeableConceptBinding | There are no (further) constraints on this element Element idOrganization.contact.purpose The type of contact DefinitionIndicates a purpose for which the contact can be reached. Need to distinguish between multiple contact persons. Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination. The purpose for which you would contact a contact party.
| |
| name | 0..1 | HumanName | There are no (further) constraints on this element Element idOrganization.contact.name A name associated with the contact DefinitionA name associated with the contact. Need to be able to track the person by name. Names may be changed, or repudiated, or people may have different names in different contexts. Names may be divided into parts of different type that have variable significance depending on context, though the division into parts does not always matter. With personal names, the different parts might or might not be imbued with some implicit meaning; various cultures associate different importance with the name parts and the degree to which systems must care about name parts around the world varies widely.
| |
| telecom | I | 0..* | ContactPoint | There are no (further) constraints on this element Element idOrganization.contact.telecom Contact details (telephone, email, etc.) for a contact DefinitionA contact detail (e.g. a telephone number or an email address) by which the party may be contacted. People have (primary) ways to contact them in some way such as phone, email.
|
| address | 0..1 | Address | There are no (further) constraints on this element Element idOrganization.contact.address Visiting or postal addresses for the contact DefinitionVisiting or postal addresses for the contact. May need to keep track of a contact party's address for contacting, billing or reporting requirements. Note: address is intended to describe postal addresses for administrative purposes, not to describe absolute geographical coordinates. Postal addresses are often used as proxies for physical locations (also see the Location resource).
| |
| endpoint | I | 0..* | Reference(Endpoint) | There are no (further) constraints on this element Element idOrganization.endpoint Technical endpoints providing access to services operated for the organization DefinitionTechnical endpoints providing access to services operated for the organization. Organizations have multiple systems that provide various services and need to be able to define the technical connection details for how to connect to them, and for what purpose. References SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc.). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository.
|
| id | 0..1 | string | There are no (further) constraints on this element Element idOrganization.endpoint.id Unique id for inter-element referencing DefinitionUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
| |
| extension | I | 0..* | Extension | There are no (further) constraints on this element Element idOrganization.endpoint.extension Additional content defined by implementations Alternate namesextensions, user content DefinitionMay 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. There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. Unordered, Open, by url(Value) Extensions are always sliced by (at least) url Constraints
|
| reference | Σ I | 0..1 | string | There are no (further) constraints on this element Element idOrganization.endpoint.reference Literal reference, Relative, internal or absolute URL DefinitionA 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. Using absolute URLs provides a stable scalable approach suitable for a cloud/web context, while using relative/logical references provides a flexible approach suitable for use when trading across closed eco-system boundaries. Absolute URLs do not need to point to a FHIR RESTful server, though this is the preferred approach. If the URL conforms to the structure "/[type]/[id]" then it should be assumed that the reference is to a FHIR RESTful server.
|
| type | Σ | 0..1 | uriBinding | There are no (further) constraints on this element Element idOrganization.endpoint.type Type the reference refers to (e.g. "Patient") DefinitionThe 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). This element is used to indicate the type of the target of the reference. This may be used which ever of the other elements are populated (or not). In some cases, the type of the target may be determined by inspection of the reference (e.g. a RESTful URL) or by resolving the target of the reference; if both the type and a reference is provided, the reference SHALL resolve to a resource of the same type as that specified. Aa resource (or, for logical models, the URI of the logical model).
|
| identifier | Σ | 0..1 | Identifier | There are no (further) constraints on this element Element idOrganization.endpoint.identifier Logical reference, when literal reference is not known DefinitionAn 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. When an identifier is provided in place of a reference, any system processing the reference will only be able to resolve the identifier to a reference if it understands the business context in which the identifier is used. Sometimes this is global (e.g. a national identifier) but often it is not. For this reason, none of the useful mechanisms described for working with references (e.g. chaining, includes) are possible, nor should servers be expected to be able resolve the reference. Servers may accept an identifier based reference untouched, resolve it, and/or reject it - see CapabilityStatement.rest.resource.referencePolicy. When both an identifier and a literal reference are provided, the literal reference is preferred. Applications processing the resource are allowed - but not required - to check that the identifier matches the literal reference Applications converting a logical reference to a literal reference may choose to leave the logical reference present, or remove it. Reference is intended to point to a structure that can potentially be expressed as a FHIR resource, though there is no need for it to exist as an actual FHIR resource instance - except in as much as an application wishes to actual find the target of the reference. The content referred to be the identifier must meet the logical constraints implied by any limitations on what resource types are permitted for the reference. For example, it would not be legitimate to send the identifier for a drug prescription if the type were Reference(Observation|DiagnosticReport). One of the use-cases for Reference.identifier is the situation where no FHIR representation exists (where the type is Reference (Any).
|
| id | 0..1 | string | There are no (further) constraints on this element Element idOrganization.endpoint.identifier.id Unique id for inter-element referencing DefinitionUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
| |
| extension | I | 0..* | Extension | There are no (further) constraints on this element Element idOrganization.endpoint.identifier.extension Additional content defined by implementations Alternate namesextensions, user content DefinitionMay 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. There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. Unordered, Open, by url(Value) Extensions are always sliced by (at least) url Constraints
|
| use | Σ ?! | 0..1 | codeBinding | There are no (further) constraints on this element Element idOrganization.endpoint.identifier.use usual | official | temp | secondary | old (If known) DefinitionThe purpose of this identifier. Allows the appropriate identifier for a particular context of use to be selected from among a set of identifiers. Applications can assume that an identifier is permanent unless it explicitly says that it is temporary. Identifies the purpose for this identifier, if known .
|
| type | Σ | 0..1 | CodeableConceptBinding | There are no (further) constraints on this element Element idOrganization.endpoint.identifier.type Description of identifier DefinitionA coded type for the identifier that can be used to determine which identifier to use for a specific purpose. Allows users to make use of identifiers when the identifier system is not known. This element deals only with general categories of identifiers. It SHOULD not be used for codes that correspond 1..1 with the Identifier.system. Some identifiers may fall into multiple categories due to common usage. Where the system is known, a type is unnecessary because the type is always part of the system definition. However systems often need to handle identifiers where the system is not known. There is not a 1:1 relationship between type and system, since many different systems have the same type. A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
|
| system | Σ | 0..1 | uri | There are no (further) constraints on this element Element idOrganization.endpoint.identifier.system The namespace for the identifier value DefinitionEstablishes the namespace for the value - that is, a URL that describes a set values that are unique. There are many sets of identifiers. To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers. Identifier.system is always case sensitive.
General http://www.acme.com/identifiers/patient Mappings
|
| value | Σ | 0..1 | string | There are no (further) constraints on this element Element idOrganization.endpoint.identifier.value The value that is unique DefinitionThe portion of the identifier typically relevant to the user and which is unique within the context of the system. If the value is a full URI, then the system SHALL be urn:ietf:rfc:3986. The value's primary purpose is computational mapping. As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.) A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe.
General 123456 Mappings
|
| period | Σ I | 0..1 | Period | There are no (further) constraints on this element Element idOrganization.endpoint.identifier.period Time period when id is/was valid for use DefinitionTime period during which identifier is/was valid for use. A Period specifies a range of time; the context of use will specify whether the entire range applies (e.g. "the patient was an inpatient of the hospital for this time range") or one value from the range applies (e.g. "give to the patient between these two times"). Period is not used for a duration (a measure of elapsed time). See Duration.
|
| assigner | Σ I | 0..1 | Reference() | Element idOrganization.endpoint.identifier.assigner Organization that issued id (may be just text) DefinitionOrganization that issued/manages the identifier. The Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.
|
| display | Σ | 0..1 | string | There are no (further) constraints on this element Element idOrganization.endpoint.display Text alternative for the resource DefinitionPlain text narrative that identifies the resource in addition to the resource reference. This is generally not the same as the Resource.text of the referenced resource. The purpose is to identify what's being referenced, not to fully describe it.
|
| Data Item | Implementation Guidance | Necessity | Profile Cardinality | Example | Immutable |
|---|---|---|---|---|---|
| Organization | https://fhir.hl7.org.uk/StructureDefinition/UKCore-Organization | ||||
| Organization.id | This MUST only be populated with an id generated by the Endpoint Catalogue in the synchronous HTTP response upon creation. Its necessity is applicable to all VERBS bar POST | MUST | 0.1 | 236bb75d-90ef-461f-b71e-fde7f899802c | Y |
| Organization.meta | https://www.hl7.org/fhir/resource.html#Meta | MUST | Y | ||
| Organization.meta.lastUpdated | This MUST be supplied by the client with the time the resource is requested to be created or updated. If it is before the timestamp on the resource on an update, the request will be rejected. This is not the case for a DELETE operation. | MUST | 2021-11-26T15:00:00.8185338+00:00 | Y | |
| Organization.meta.profile | This MUST be populated with the structure definition for the R4 Organization Resource | MUST | https://fhir.hl7.org.uk/StructureDefinition/UKCore-Organization | Y | |
| Organization.identifier[1] | MUST | Y | |||
| Organization.identifier[0] | This MUST Contain the identifier for Organization ODS code | MUST | Y | ||
| Organization.identifier[0].system | This MUST be the ODS code system identifier https://fhir.nhs.uk/id/ods-organization-code | MUST | https://fhir.nhs.uk/id/ods-organization-code | Y | |
| Organization.identifier[0].value | The ODS code as a string. | MUST | AA01 | Y | |
| Organization.identifier[1] | this MUST contain the identifier for Product ID | MUST | Y | ||
| Organization.identifier[1].system | this MUST be the Product ID system Identifier for http://fhir.nhs.uk/Id/product-id | MUST | http://fhir.nhs.uk/Id/product-id | Y | |
| Organization.identifier[1].value | The hexadecimal Product ID as a string. | MUST | AAA000 | Y | |
| Organization.name | The name of the Organization | MUST | "NHS Trust A" OR "Supplier A" | Y | |
| Organization.partOf | If this Organization describes a child organisation, then the reference to the parent MUST be populated | SHOULD | N | ||
| Organization.partOf.reference | the reference to the parent organization. | SHOULD | Organization/d5ffd0cd-ec7e-48a1-84f1-91f4c0eb8fc5 | N | |
| Organization.type | Follow UK Core guidance for populating this element. | COULD | N | ||
| Organization.type.ValueCodeableConcept | Follow UK Core guidance for populating this element. | COULD | N | ||
| Organization.alias | Follow UK Core guidance for populating this element. | COULD | N | ||
| Organization.telecom | Follow UK Core guidance for populating this element. | COULD | N | ||
| Organization.address | Follow UK Core guidance for populating this element. | COULD | N | ||
| Organization.contact | Follow UK Core guidance for populating this element. | COULD | N | ||
| Organization.endpoint | Not currently used in this implementation. | COULD | N |
This Resource describes the healthcare service that the endpoint is serving. The details of a healthcare service available at a location The details of a healthcare service available at a location. Logical id of this artifact The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes. The only time that a resource does not have an id is when it is being submitted to the server using a create operation. Metadata about the resource 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. A set of rules under which this content was created 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. Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc. Language of the resource content The base language in which the resource is written. Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute). A human language. Text summary of the resource, for human interpretation narrative, html, xhtml, display 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 resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a "text blob" or where text is additionally entered raw or narrated and encoded information is added later. Contained, inline Resources inline resources, anonymous resources, contained resources 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. This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels. Additional content defined by implementations extensions, user content 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. There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. Unordered, Open, by url(Value) Extensions that cannot be ignored extensions, user content 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). Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions. There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. Unordered, Open, by url(Value) External identifiers for this item External identifiers for this item. Unique id for inter-element referencing Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. Additional content defined by implementations extensions, user content 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. There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. Unordered, Open, by url(Value) usual | official | temp | secondary | old (If known) The purpose of this identifier. Allows the appropriate identifier for a particular context of use to be selected from among a set of identifiers. Applications can assume that an identifier is permanent unless it explicitly says that it is temporary. Identifies the purpose for this identifier, if known . Description of identifier A coded type for the identifier that can be used to determine which identifier to use for a specific purpose. Allows users to make use of identifiers when the identifier system is not known. This element deals only with general categories of identifiers. It SHOULD not be used for codes that correspond 1..1 with the Identifier.system. Some identifiers may fall into multiple categories due to common usage. Where the system is known, a type is unnecessary because the type is always part of the system definition. However systems often need to handle identifiers where the system is not known. There is not a 1:1 relationship between type and system, since many different systems have the same type. A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. The namespace for the identifier value Establishes the namespace for the value - that is, a URL that describes a set values that are unique. There are many sets of identifiers. To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers. Identifier.system is always case sensitive. The value that is unique The portion of the identifier typically relevant to the user and which is unique within the context of the system. If the value is a full URI, then the system SHALL be urn:ietf:rfc:3986. The value's primary purpose is computational mapping. As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.) A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe. Time period when id is/was valid for use Time period during which identifier is/was valid for use. A Period specifies a range of time; the context of use will specify whether the entire range applies (e.g. "the patient was an inpatient of the hospital for this time range") or one value from the range applies (e.g. "give to the patient between these two times"). Period is not used for a duration (a measure of elapsed time). See Duration. Organization that issued id (may be just text) Organization that issued/manages the identifier. The Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization. Whether this HealthcareService record is in active use This flag is used to mark the record to not be used. This is not used when a center is closed for maintenance, or for holidays, the notAvailable period is to be used for this. This element is labeled as a modifier because it may be used to mark that the resource was created in error. This resource is generally assumed to be active if no value is provided for the active element Organization that provides this service The organization that provides this healthcare service. This property is recommended to be the same as the Location's managingOrganization, and if not provided should be interpreted as such. If the Location does not have a managing Organization, then this property should be populated. Unique id for inter-element referencing Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. Additional content defined by implementations extensions, user content 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. There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. Unordered, Open, by url(Value) Literal reference, Relative, internal or absolute URL 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. Using absolute URLs provides a stable scalable approach suitable for a cloud/web context, while using relative/logical references provides a flexible approach suitable for use when trading across closed eco-system boundaries. Absolute URLs do not need to point to a FHIR RESTful server, though this is the preferred approach. If the URL conforms to the structure "/[type]/[id]" then it should be assumed that the reference is to a FHIR RESTful server. Type the reference refers to (e.g. "Patient") 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). This element is used to indicate the type of the target of the reference. This may be used which ever of the other elements are populated (or not). In some cases, the type of the target may be determined by inspection of the reference (e.g. a RESTful URL) or by resolving the target of the reference; if both the type and a reference is provided, the reference SHALL resolve to a resource of the same type as that specified. Aa resource (or, for logical models, the URI of the logical model). Logical reference, when literal reference is not known 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. When an identifier is provided in place of a reference, any system processing the reference will only be able to resolve the identifier to a reference if it understands the business context in which the identifier is used. Sometimes this is global (e.g. a national identifier) but often it is not. For this reason, none of the useful mechanisms described for working with references (e.g. chaining, includes) are possible, nor should servers be expected to be able resolve the reference. Servers may accept an identifier based reference untouched, resolve it, and/or reject it - see CapabilityStatement.rest.resource.referencePolicy. When both an identifier and a literal reference are provided, the literal reference is preferred. Applications processing the resource are allowed - but not required - to check that the identifier matches the literal reference Applications converting a logical reference to a literal reference may choose to leave the logical reference present, or remove it. Reference is intended to point to a structure that can potentially be expressed as a FHIR resource, though there is no need for it to exist as an actual FHIR resource instance - except in as much as an application wishes to actual find the target of the reference. The content referred to be the identifier must meet the logical constraints implied by any limitations on what resource types are permitted for the reference. For example, it would not be legitimate to send the identifier for a drug prescription if the type were Reference(Observation|DiagnosticReport). One of the use-cases for Reference.identifier is the situation where no FHIR representation exists (where the type is Reference (Any). Unique id for inter-element referencing Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. Additional content defined by implementations extensions, user content 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. There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. Unordered, Open, by url(Value) usual | official | temp | secondary | old (If known) The purpose of this identifier. Allows the appropriate identifier for a particular context of use to be selected from among a set of identifiers. Applications can assume that an identifier is permanent unless it explicitly says that it is temporary. Identifies the purpose for this identifier, if known . Description of identifier A coded type for the identifier that can be used to determine which identifier to use for a specific purpose. Allows users to make use of identifiers when the identifier system is not known. This element deals only with general categories of identifiers. It SHOULD not be used for codes that correspond 1..1 with the Identifier.system. Some identifiers may fall into multiple categories due to common usage. Where the system is known, a type is unnecessary because the type is always part of the system definition. However systems often need to handle identifiers where the system is not known. There is not a 1:1 relationship between type and system, since many different systems have the same type. A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. The namespace for the identifier value Establishes the namespace for the value - that is, a URL that describes a set values that are unique. There are many sets of identifiers. To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers. Identifier.system is always case sensitive. The value that is unique The portion of the identifier typically relevant to the user and which is unique within the context of the system. If the value is a full URI, then the system SHALL be urn:ietf:rfc:3986. The value's primary purpose is computational mapping. As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.) A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe. Time period when id is/was valid for use Time period during which identifier is/was valid for use. A Period specifies a range of time; the context of use will specify whether the entire range applies (e.g. "the patient was an inpatient of the hospital for this time range") or one value from the range applies (e.g. "give to the patient between these two times"). Period is not used for a duration (a measure of elapsed time). See Duration. Organization that issued id (may be just text) Organization that issued/manages the identifier. The Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization. Text alternative for the resource Plain text narrative that identifies the resource in addition to the resource reference. This is generally not the same as the Resource.text of the referenced resource. The purpose is to identify what's being referenced, not to fully describe it. Broad category of service being performed or delivered service category Identifies the broad category of service being performed or delivered. Selecting a Service Category then determines the list of relevant service types that can be selected in the primary service type. A category of the service(s) that could be provided. Type of service that may be delivered or performed service type The specific type of service that may be delivered or performed. Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination. Additional details about where the content was created (e.g. clinical specialty). Specialties handled by the HealthcareService Collection of specialties handled by the service site. This is more of a medical term. Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination. A specialty that a healthcare service may provide. Location(s) where service may be provided The location(s) where this healthcare service may be provided. References SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc.). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository. Unique id for inter-element referencing Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. Additional content defined by implementations extensions, user content 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. There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. Unordered, Open, by url(Value) Literal reference, Relative, internal or absolute URL 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. Using absolute URLs provides a stable scalable approach suitable for a cloud/web context, while using relative/logical references provides a flexible approach suitable for use when trading across closed eco-system boundaries. Absolute URLs do not need to point to a FHIR RESTful server, though this is the preferred approach. If the URL conforms to the structure "/[type]/[id]" then it should be assumed that the reference is to a FHIR RESTful server. Type the reference refers to (e.g. "Patient") 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). This element is used to indicate the type of the target of the reference. This may be used which ever of the other elements are populated (or not). In some cases, the type of the target may be determined by inspection of the reference (e.g. a RESTful URL) or by resolving the target of the reference; if both the type and a reference is provided, the reference SHALL resolve to a resource of the same type as that specified. Aa resource (or, for logical models, the URI of the logical model). Logical reference, when literal reference is not known 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. When an identifier is provided in place of a reference, any system processing the reference will only be able to resolve the identifier to a reference if it understands the business context in which the identifier is used. Sometimes this is global (e.g. a national identifier) but often it is not. For this reason, none of the useful mechanisms described for working with references (e.g. chaining, includes) are possible, nor should servers be expected to be able resolve the reference. Servers may accept an identifier based reference untouched, resolve it, and/or reject it - see CapabilityStatement.rest.resource.referencePolicy. When both an identifier and a literal reference are provided, the literal reference is preferred. Applications processing the resource are allowed - but not required - to check that the identifier matches the literal reference Applications converting a logical reference to a literal reference may choose to leave the logical reference present, or remove it. Reference is intended to point to a structure that can potentially be expressed as a FHIR resource, though there is no need for it to exist as an actual FHIR resource instance - except in as much as an application wishes to actual find the target of the reference. The content referred to be the identifier must meet the logical constraints implied by any limitations on what resource types are permitted for the reference. For example, it would not be legitimate to send the identifier for a drug prescription if the type were Reference(Observation|DiagnosticReport). One of the use-cases for Reference.identifier is the situation where no FHIR representation exists (where the type is Reference (Any). Unique id for inter-element referencing Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. Additional content defined by implementations extensions, user content 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. There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. Unordered, Open, by url(Value) usual | official | temp | secondary | old (If known) The purpose of this identifier. Allows the appropriate identifier for a particular context of use to be selected from among a set of identifiers. Applications can assume that an identifier is permanent unless it explicitly says that it is temporary. Identifies the purpose for this identifier, if known . Description of identifier A coded type for the identifier that can be used to determine which identifier to use for a specific purpose. Allows users to make use of identifiers when the identifier system is not known. This element deals only with general categories of identifiers. It SHOULD not be used for codes that correspond 1..1 with the Identifier.system. Some identifiers may fall into multiple categories due to common usage. Where the system is known, a type is unnecessary because the type is always part of the system definition. However systems often need to handle identifiers where the system is not known. There is not a 1:1 relationship between type and system, since many different systems have the same type. A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. The namespace for the identifier value Establishes the namespace for the value - that is, a URL that describes a set values that are unique. There are many sets of identifiers. To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers. Identifier.system is always case sensitive. The value that is unique The portion of the identifier typically relevant to the user and which is unique within the context of the system. If the value is a full URI, then the system SHALL be urn:ietf:rfc:3986. The value's primary purpose is computational mapping. As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.) A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe. Time period when id is/was valid for use Time period during which identifier is/was valid for use. A Period specifies a range of time; the context of use will specify whether the entire range applies (e.g. "the patient was an inpatient of the hospital for this time range") or one value from the range applies (e.g. "give to the patient between these two times"). Period is not used for a duration (a measure of elapsed time). See Duration. Organization that issued id (may be just text) Organization that issued/manages the identifier. The Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization. Text alternative for the resource Plain text narrative that identifies the resource in addition to the resource reference. This is generally not the same as the Resource.text of the referenced resource. The purpose is to identify what's being referenced, not to fully describe it. Description of service as presented to a consumer while searching Further description of the service as it would be presented to a consumer while searching. Note that FHIR strings SHALL NOT exceed 1MB in size Additional description and/or any specific issues not covered elsewhere Any additional description of the service and/or any specific issues not covered by the other attributes, which can be displayed as further detail under the serviceName. Would expect that a user would not see this information on a search results, and it would only be available when viewing the complete details of the service. Extra details about the service that can't be placed in the other fields Extra details about the service that can't be placed in the other fields. Systems are not required to have markdown support, so the text should be readable without markdown processing. The markdown syntax is GFM - see https://github.github.com/gfm/ Facilitates quick identification of the service If there is a photo/symbol associated with this HealthcareService, it may be included here to facilitate quick identification of the service in a list. When providing a summary view (for example with Observation.value[x]) Attachment should be represented with a brief display text such as "Signed Procedure Consent". Contacts related to the healthcare service List of contacts related to this specific healthcare service. If this is empty, then refer to the location's contacts. Location(s) service is intended for/available to The location(s) that this service is available to (not where the service is provided). The locations referenced by the coverage area can include both specific locations, including areas, and also conceptual domains too (mode = kind), such as a physical area (tri-state area) and some other attribute (covered by Example Care Organization). These types of Locations are often not managed by any specific organization. This could also include generic locations such as "in-home". Unique id for inter-element referencing Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. Additional content defined by implementations extensions, user content 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. There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. Unordered, Open, by url(Value) Literal reference, Relative, internal or absolute URL 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. Using absolute URLs provides a stable scalable approach suitable for a cloud/web context, while using relative/logical references provides a flexible approach suitable for use when trading across closed eco-system boundaries. Absolute URLs do not need to point to a FHIR RESTful server, though this is the preferred approach. If the URL conforms to the structure "/[type]/[id]" then it should be assumed that the reference is to a FHIR RESTful server. Type the reference refers to (e.g. "Patient") 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). This element is used to indicate the type of the target of the reference. This may be used which ever of the other elements are populated (or not). In some cases, the type of the target may be determined by inspection of the reference (e.g. a RESTful URL) or by resolving the target of the reference; if both the type and a reference is provided, the reference SHALL resolve to a resource of the same type as that specified. Aa resource (or, for logical models, the URI of the logical model). Logical reference, when literal reference is not known 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. When an identifier is provided in place of a reference, any system processing the reference will only be able to resolve the identifier to a reference if it understands the business context in which the identifier is used. Sometimes this is global (e.g. a national identifier) but often it is not. For this reason, none of the useful mechanisms described for working with references (e.g. chaining, includes) are possible, nor should servers be expected to be able resolve the reference. Servers may accept an identifier based reference untouched, resolve it, and/or reject it - see CapabilityStatement.rest.resource.referencePolicy. When both an identifier and a literal reference are provided, the literal reference is preferred. Applications processing the resource are allowed - but not required - to check that the identifier matches the literal reference Applications converting a logical reference to a literal reference may choose to leave the logical reference present, or remove it. Reference is intended to point to a structure that can potentially be expressed as a FHIR resource, though there is no need for it to exist as an actual FHIR resource instance - except in as much as an application wishes to actual find the target of the reference. The content referred to be the identifier must meet the logical constraints implied by any limitations on what resource types are permitted for the reference. For example, it would not be legitimate to send the identifier for a drug prescription if the type were Reference(Observation|DiagnosticReport). One of the use-cases for Reference.identifier is the situation where no FHIR representation exists (where the type is Reference (Any). Unique id for inter-element referencing Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. Additional content defined by implementations extensions, user content 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. There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. Unordered, Open, by url(Value) usual | official | temp | secondary | old (If known) The purpose of this identifier. Allows the appropriate identifier for a particular context of use to be selected from among a set of identifiers. Applications can assume that an identifier is permanent unless it explicitly says that it is temporary. Identifies the purpose for this identifier, if known . Description of identifier A coded type for the identifier that can be used to determine which identifier to use for a specific purpose. Allows users to make use of identifiers when the identifier system is not known. This element deals only with general categories of identifiers. It SHOULD not be used for codes that correspond 1..1 with the Identifier.system. Some identifiers may fall into multiple categories due to common usage. Where the system is known, a type is unnecessary because the type is always part of the system definition. However systems often need to handle identifiers where the system is not known. There is not a 1:1 relationship between type and system, since many different systems have the same type. A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. The namespace for the identifier value Establishes the namespace for the value - that is, a URL that describes a set values that are unique. There are many sets of identifiers. To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers. Identifier.system is always case sensitive. The value that is unique The portion of the identifier typically relevant to the user and which is unique within the context of the system. If the value is a full URI, then the system SHALL be urn:ietf:rfc:3986. The value's primary purpose is computational mapping. As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.) A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe. Time period when id is/was valid for use Time period during which identifier is/was valid for use. A Period specifies a range of time; the context of use will specify whether the entire range applies (e.g. "the patient was an inpatient of the hospital for this time range") or one value from the range applies (e.g. "give to the patient between these two times"). Period is not used for a duration (a measure of elapsed time). See Duration. Organization that issued id (may be just text) Organization that issued/manages the identifier. The Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization. Text alternative for the resource Plain text narrative that identifies the resource in addition to the resource reference. This is generally not the same as the Resource.text of the referenced resource. The purpose is to identify what's being referenced, not to fully describe it. Conditions under which service is available/offered The code(s) that detail the conditions under which the healthcare service is available/offered. The provision means being commissioned by, contractually obliged or financially sourced. Types of costings that may apply to this healthcare service, such if the service may be available for free, some discounts available, or fees apply. The code(s) that detail the conditions under which the healthcare service is available/offered. Specific eligibility requirements required to use the service Does this service have specific eligibility requirements that need to be met in order to use the service? Unique id for inter-element referencing Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. Additional content defined by implementations extensions, user content 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. There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. Unordered, Open, by url(Value) Extensions that cannot be ignored even if unrecognized extensions, user content, modifiers 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). Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions. There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. Coded value for the eligibility Coded value for the eligibility. Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination. Coded values underwhich a specific service is made available. Describes the eligibility conditions for the service Describes the eligibility conditions for the service. The description of service eligibility should, in general, not exceed one or two paragraphs. It should be sufficient for a prospective consumer to determine if they are likely to be eligible or not. Where eligibility requirements and conditions are complex, it may simply be noted that an eligibility assessment is required. Where eligibility is determined by an outside source, such as an Act of Parliament, this should be noted, preferably with a reference to a commonly available copy of the source document such as a web page. Programs that this service is applicable to Programs that this service is applicable to. Programs are often defined externally to an Organization, commonly by governments; e.g. Home and Community Care Programs, Homeless Program, …. Government or local programs that this service applies to. Collection of characteristics (attributes) Collection of characteristics (attributes). These could be such things as is wheelchair accessible. A custom attribute that could be provided at a service (e.g. Wheelchair accessibiliy). The language that this service is offered in Some services are specifically made available in multiple languages, this property permits a directory to declare the languages this is offered in. Typically this is only provided where a service operates in communities with mixed languages used. When using this property it indicates that the service is available with this language, it is not derived from the practitioners, and not all are required to use this language, just that this language is available while scheduling. A ValueSet that identifies the language used by a person. Ways that the service accepts referrals Ways that the service accepts referrals, if this is not provided then it is implied that no referral is required. Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination. The methods of referral can be used when referring to a specific HealthCareService resource. If an appointment is required for access to this service Indicates whether or not a prospective consumer will require an appointment for a particular service at a site to be provided by the Organization. Indicates if an appointment is required for access to this service. Times the Service Site is available A collection of times that the Service Site is available. More detailed availability information may be provided in associated Schedule/Slot resources. Unique id for inter-element referencing Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. Additional content defined by implementations extensions, user content 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. There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. Unordered, Open, by url(Value) Extensions that cannot be ignored even if unrecognized extensions, user content, modifiers 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). Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions. There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. mon | tue | wed | thu | fri | sat | sun Indicates which days of the week are available between the start and end Times. Note that FHIR strings SHALL NOT exceed 1MB in size The days of the week. Always available? e.g. 24 hour service Is this always available? (hence times are irrelevant) e.g. 24 hour service. Opening time of day (ignored if allDay = true) The opening time of day. Note: If the AllDay flag is set, then this time is ignored. The time zone is expected to be for where this HealthcareService is provided at. Closing time of day (ignored if allDay = true) The closing time of day. Note: If the AllDay flag is set, then this time is ignored. The time zone is expected to be for where this HealthcareService is provided at. Not available during this time due to provided reason The HealthcareService is not available during this period of time due to the provided reason. Unique id for inter-element referencing Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. Additional content defined by implementations extensions, user content 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. There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. Unordered, Open, by url(Value) Extensions that cannot be ignored even if unrecognized extensions, user content, modifiers 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). Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions. There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. Reason presented to the user explaining why time not available The reason that can be presented to the user as to why this time is not available. Note that FHIR strings SHALL NOT exceed 1MB in size Service not available from this date Service is not available (seasonally or for a public holiday) from this date. A Period specifies a range of time; the context of use will specify whether the entire range applies (e.g. "the patient was an inpatient of the hospital for this time range") or one value from the range applies (e.g. "give to the patient between these two times"). Period is not used for a duration (a measure of elapsed time). See Duration. Description of availability exceptions A description of site availability exceptions, e.g. public holiday availability. Succinctly describing all possible exceptions to normal site availability as details in the available Times and not available Times. Note that FHIR strings SHALL NOT exceed 1MB in size Technical endpoints providing access to electronic services operated for the healthcare service Technical endpoints providing access to services operated for the specific healthcare services defined at this resource. References SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc.). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository. Unique id for inter-element referencing Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. Additional content defined by implementations extensions, user content 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. There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. Unordered, Open, by url(Value) Literal reference, Relative, internal or absolute URL 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. Using absolute URLs provides a stable scalable approach suitable for a cloud/web context, while using relative/logical references provides a flexible approach suitable for use when trading across closed eco-system boundaries. Absolute URLs do not need to point to a FHIR RESTful server, though this is the preferred approach. If the URL conforms to the structure "/[type]/[id]" then it should be assumed that the reference is to a FHIR RESTful server. Type the reference refers to (e.g. "Patient") 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). This element is used to indicate the type of the target of the reference. This may be used which ever of the other elements are populated (or not). In some cases, the type of the target may be determined by inspection of the reference (e.g. a RESTful URL) or by resolving the target of the reference; if both the type and a reference is provided, the reference SHALL resolve to a resource of the same type as that specified. Aa resource (or, for logical models, the URI of the logical model). Logical reference, when literal reference is not known 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. When an identifier is provided in place of a reference, any system processing the reference will only be able to resolve the identifier to a reference if it understands the business context in which the identifier is used. Sometimes this is global (e.g. a national identifier) but often it is not. For this reason, none of the useful mechanisms described for working with references (e.g. chaining, includes) are possible, nor should servers be expected to be able resolve the reference. Servers may accept an identifier based reference untouched, resolve it, and/or reject it - see CapabilityStatement.rest.resource.referencePolicy. When both an identifier and a literal reference are provided, the literal reference is preferred. Applications processing the resource are allowed - but not required - to check that the identifier matches the literal reference Applications converting a logical reference to a literal reference may choose to leave the logical reference present, or remove it. Reference is intended to point to a structure that can potentially be expressed as a FHIR resource, though there is no need for it to exist as an actual FHIR resource instance - except in as much as an application wishes to actual find the target of the reference. The content referred to be the identifier must meet the logical constraints implied by any limitations on what resource types are permitted for the reference. For example, it would not be legitimate to send the identifier for a drug prescription if the type were Reference(Observation|DiagnosticReport). One of the use-cases for Reference.identifier is the situation where no FHIR representation exists (where the type is Reference (Any). Unique id for inter-element referencing Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. Additional content defined by implementations extensions, user content 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. There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. Unordered, Open, by url(Value) usual | official | temp | secondary | old (If known) The purpose of this identifier. Allows the appropriate identifier for a particular context of use to be selected from among a set of identifiers. Applications can assume that an identifier is permanent unless it explicitly says that it is temporary. Identifies the purpose for this identifier, if known . Description of identifier A coded type for the identifier that can be used to determine which identifier to use for a specific purpose. Allows users to make use of identifiers when the identifier system is not known. This element deals only with general categories of identifiers. It SHOULD not be used for codes that correspond 1..1 with the Identifier.system. Some identifiers may fall into multiple categories due to common usage. Where the system is known, a type is unnecessary because the type is always part of the system definition. However systems often need to handle identifiers where the system is not known. There is not a 1:1 relationship between type and system, since many different systems have the same type. A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. The namespace for the identifier value Establishes the namespace for the value - that is, a URL that describes a set values that are unique. There are many sets of identifiers. To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers. Identifier.system is always case sensitive. The value that is unique The portion of the identifier typically relevant to the user and which is unique within the context of the system. If the value is a full URI, then the system SHALL be urn:ietf:rfc:3986. The value's primary purpose is computational mapping. As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.) A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe. Time period when id is/was valid for use Time period during which identifier is/was valid for use. A Period specifies a range of time; the context of use will specify whether the entire range applies (e.g. "the patient was an inpatient of the hospital for this time range") or one value from the range applies (e.g. "give to the patient between these two times"). Period is not used for a duration (a measure of elapsed time). See Duration. Organization that issued id (may be just text) Organization that issued/manages the identifier. The Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization. Text alternative for the resource Plain text narrative that identifies the resource in addition to the resource reference. This is generally not the same as the Resource.text of the referenced resource. The purpose is to identify what's being referenced, not to fully describe it.> HealthcareService
UKCoreHealthcareService (HealthcareService) I HealthcareService HealthcareService
contained.contained.empty()contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()text.`div`.exists()contained.meta.security.empty()id Σ 0..1 string HealthcareService.id
meta Σ 0..1 Meta HealthcareService.meta
hasValue() or (children().count() > id.count())implicitRules Σ ?! 0..1 uri HealthcareService.implicitRules
hasValue() or (children().count() > id.count())language 0..1 codeBinding HealthcareService.language
hasValue() or (children().count() > id.count())text 0..1 Narrative HealthcareService.text
hasValue() or (children().count() > id.count())contained 0..* Resource HealthcareService.contained
extension I 0..* Extension HealthcareService.extension
hasValue() or (children().count() > id.count())extension.exists() != value.exists()modifierExtension ?! I 0..* Extension HealthcareService.modifierExtension
hasValue() or (children().count() > id.count())extension.exists() != value.exists()identifier Σ 0..* Identifier HealthcareService.identifier
hasValue() or (children().count() > id.count())id 0..1 string HealthcareService.identifier.id
extension I 0..* Extension HealthcareService.identifier.extension
hasValue() or (children().count() > id.count())extension.exists() != value.exists()use Σ ?! 0..1 codeBinding HealthcareService.identifier.use
hasValue() or (children().count() > id.count())type Σ 0..1 CodeableConceptBinding HealthcareService.identifier.type
hasValue() or (children().count() > id.count())system Σ 0..1 uri HealthcareService.identifier.system
hasValue() or (children().count() > id.count())http://www.acme.com/identifiers/patient
Mappingsvalue Σ 0..1 string HealthcareService.identifier.value
hasValue() or (children().count() > id.count())123456
Mappingsperiod Σ I 0..1 Period HealthcareService.identifier.period
hasValue() or (children().count() > id.count())start.hasValue().not() or end.hasValue().not() or (start <= end)assigner Σ I 0..1 Reference() Element id HealthcareService.identifier.assigner
hasValue() or (children().count() > id.count())reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))active Σ ?! 0..1 boolean HealthcareService.active
hasValue() or (children().count() > id.count())providedBy Σ I 0..1 Reference() Element id HealthcareService.providedBy
hasValue() or (children().count() > id.count())reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))id 0..1 string HealthcareService.providedBy.id
extension I 0..* Extension HealthcareService.providedBy.extension
hasValue() or (children().count() > id.count())extension.exists() != value.exists()reference Σ I 0..1 string HealthcareService.providedBy.reference
hasValue() or (children().count() > id.count())type Σ 0..1 uriBinding HealthcareService.providedBy.type
hasValue() or (children().count() > id.count())identifier Σ 0..1 Identifier HealthcareService.providedBy.identifier
hasValue() or (children().count() > id.count())id 0..1 string HealthcareService.providedBy.identifier.id
extension I 0..* Extension HealthcareService.providedBy.identifier.extension
hasValue() or (children().count() > id.count())extension.exists() != value.exists()use Σ ?! 0..1 codeBinding HealthcareService.providedBy.identifier.use
hasValue() or (children().count() > id.count())type Σ 0..1 CodeableConceptBinding HealthcareService.providedBy.identifier.type
hasValue() or (children().count() > id.count())system Σ 0..1 uri HealthcareService.providedBy.identifier.system
hasValue() or (children().count() > id.count())http://www.acme.com/identifiers/patient
Mappingsvalue Σ 0..1 string HealthcareService.providedBy.identifier.value
hasValue() or (children().count() > id.count())123456
Mappingsperiod Σ I 0..1 Period HealthcareService.providedBy.identifier.period
hasValue() or (children().count() > id.count())start.hasValue().not() or end.hasValue().not() or (start <= end)assigner Σ I 0..1 Reference() Element id HealthcareService.providedBy.identifier.assigner
hasValue() or (children().count() > id.count())reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))display Σ 0..1 string HealthcareService.providedBy.display
hasValue() or (children().count() > id.count())category Σ 0..* CodeableConcept HealthcareService.category
hasValue() or (children().count() > id.count())type Σ 0..* CodeableConcept HealthcareService.type
hasValue() or (children().count() > id.count())specialty Σ 0..* CodeableConceptBinding HealthcareService.specialty
hasValue() or (children().count() > id.count())location Σ I 0..* Reference() Element id HealthcareService.location
hasValue() or (children().count() > id.count())reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))id 0..1 string HealthcareService.location.id
extension I 0..* Extension HealthcareService.location.extension
hasValue() or (children().count() > id.count())extension.exists() != value.exists()reference Σ I 0..1 string HealthcareService.location.reference
hasValue() or (children().count() > id.count())type Σ 0..1 uriBinding HealthcareService.location.type
hasValue() or (children().count() > id.count())identifier Σ 0..1 Identifier HealthcareService.location.identifier
hasValue() or (children().count() > id.count())id 0..1 string HealthcareService.location.identifier.id
extension I 0..* Extension HealthcareService.location.identifier.extension
hasValue() or (children().count() > id.count())extension.exists() != value.exists()use Σ ?! 0..1 codeBinding HealthcareService.location.identifier.use
hasValue() or (children().count() > id.count())type Σ 0..1 CodeableConceptBinding HealthcareService.location.identifier.type
hasValue() or (children().count() > id.count())system Σ 0..1 uri HealthcareService.location.identifier.system
hasValue() or (children().count() > id.count())http://www.acme.com/identifiers/patient
Mappingsvalue Σ 0..1 string HealthcareService.location.identifier.value
hasValue() or (children().count() > id.count())123456
Mappingsperiod Σ I 0..1 Period HealthcareService.location.identifier.period
hasValue() or (children().count() > id.count())start.hasValue().not() or end.hasValue().not() or (start <= end)assigner Σ I 0..1 Reference() Element id HealthcareService.location.identifier.assigner
hasValue() or (children().count() > id.count())reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))display Σ 0..1 string HealthcareService.location.display
hasValue() or (children().count() > id.count())name Σ 0..1 string HealthcareService.name
hasValue() or (children().count() > id.count())comment Σ 0..1 string HealthcareService.comment
hasValue() or (children().count() > id.count())extraDetails 0..1 markdown HealthcareService.extraDetails
hasValue() or (children().count() > id.count())photo Σ I 0..1 Attachment HealthcareService.photo
hasValue() or (children().count() > id.count())data.empty() or contentType.exists()telecom I 0..* ContactPoint HealthcareService.telecom
hasValue() or (children().count() > id.count())value.empty() or system.exists()coverageArea I 0..* Reference() Element id HealthcareService.coverageArea
hasValue() or (children().count() > id.count())reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))id 0..1 string HealthcareService.coverageArea.id
extension I 0..* Extension HealthcareService.coverageArea.extension
hasValue() or (children().count() > id.count())extension.exists() != value.exists()reference Σ I 0..1 string HealthcareService.coverageArea.reference
hasValue() or (children().count() > id.count())type Σ 0..1 uriBinding HealthcareService.coverageArea.type
hasValue() or (children().count() > id.count())identifier Σ 0..1 Identifier HealthcareService.coverageArea.identifier
hasValue() or (children().count() > id.count())id 0..1 string HealthcareService.coverageArea.identifier.id
extension I 0..* Extension HealthcareService.coverageArea.identifier.extension
hasValue() or (children().count() > id.count())extension.exists() != value.exists()use Σ ?! 0..1 codeBinding HealthcareService.coverageArea.identifier.use
hasValue() or (children().count() > id.count())type Σ 0..1 CodeableConceptBinding HealthcareService.coverageArea.identifier.type
hasValue() or (children().count() > id.count())system Σ 0..1 uri HealthcareService.coverageArea.identifier.system
hasValue() or (children().count() > id.count())http://www.acme.com/identifiers/patient
Mappingsvalue Σ 0..1 string HealthcareService.coverageArea.identifier.value
hasValue() or (children().count() > id.count())123456
Mappingsperiod Σ I 0..1 Period HealthcareService.coverageArea.identifier.period
hasValue() or (children().count() > id.count())start.hasValue().not() or end.hasValue().not() or (start <= end)assigner Σ I 0..1 Reference() Element id HealthcareService.coverageArea.identifier.assigner
hasValue() or (children().count() > id.count())reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))display Σ 0..1 string HealthcareService.coverageArea.display
hasValue() or (children().count() > id.count())serviceProvisionCode 0..* CodeableConcept HealthcareService.serviceProvisionCode
hasValue() or (children().count() > id.count())eligibility 0..* BackboneElement HealthcareService.eligibility
hasValue() or (children().count() > id.count())id 0..1 string HealthcareService.eligibility.id
extension I 0..* Extension HealthcareService.eligibility.extension
hasValue() or (children().count() > id.count())extension.exists() != value.exists()modifierExtension Σ ?! I 0..* Extension HealthcareService.eligibility.modifierExtension
hasValue() or (children().count() > id.count())extension.exists() != value.exists()code 0..1 CodeableConcept HealthcareService.eligibility.code
hasValue() or (children().count() > id.count())comment 0..1 markdown HealthcareService.eligibility.comment
hasValue() or (children().count() > id.count())program 0..* CodeableConcept HealthcareService.program
hasValue() or (children().count() > id.count())characteristic 0..* CodeableConcept HealthcareService.characteristic
hasValue() or (children().count() > id.count())communication 0..* CodeableConceptBinding Element id HealthcareService.communication
hasValue() or (children().count() > id.count())referralMethod 0..* CodeableConcept HealthcareService.referralMethod
hasValue() or (children().count() > id.count())appointmentRequired 0..1 boolean HealthcareService.appointmentRequired
hasValue() or (children().count() > id.count())availableTime 0..* BackboneElement HealthcareService.availableTime
hasValue() or (children().count() > id.count())id 0..1 string HealthcareService.availableTime.id
extension I 0..* Extension HealthcareService.availableTime.extension
hasValue() or (children().count() > id.count())extension.exists() != value.exists()modifierExtension Σ ?! I 0..* Extension HealthcareService.availableTime.modifierExtension
hasValue() or (children().count() > id.count())extension.exists() != value.exists()daysOfWeek 0..* codeBinding HealthcareService.availableTime.daysOfWeek
hasValue() or (children().count() > id.count())allDay 0..1 boolean HealthcareService.availableTime.allDay
hasValue() or (children().count() > id.count())availableStartTime 0..1 time HealthcareService.availableTime.availableStartTime
hasValue() or (children().count() > id.count())availableEndTime 0..1 time HealthcareService.availableTime.availableEndTime
hasValue() or (children().count() > id.count())notAvailable 0..* BackboneElement HealthcareService.notAvailable
hasValue() or (children().count() > id.count())id 0..1 string HealthcareService.notAvailable.id
extension I 0..* Extension HealthcareService.notAvailable.extension
hasValue() or (children().count() > id.count())extension.exists() != value.exists()modifierExtension Σ ?! I 0..* Extension HealthcareService.notAvailable.modifierExtension
hasValue() or (children().count() > id.count())extension.exists() != value.exists()description 1..1 string HealthcareService.notAvailable.description
hasValue() or (children().count() > id.count())during I 0..1 Period HealthcareService.notAvailable.during
hasValue() or (children().count() > id.count())start.hasValue().not() or end.hasValue().not() or (start <= end)availabilityExceptions 0..1 string HealthcareService.availabilityExceptions
hasValue() or (children().count() > id.count())endpoint I 0..* Reference(Endpoint) HealthcareService.endpoint
hasValue() or (children().count() > id.count())reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))id 0..1 string HealthcareService.endpoint.id
extension I 0..* Extension HealthcareService.endpoint.extension
hasValue() or (children().count() > id.count())extension.exists() != value.exists()reference Σ I 0..1 string HealthcareService.endpoint.reference
hasValue() or (children().count() > id.count())type Σ 0..1 uriBinding HealthcareService.endpoint.type
hasValue() or (children().count() > id.count())identifier Σ 0..1 Identifier HealthcareService.endpoint.identifier
hasValue() or (children().count() > id.count())id 0..1 string HealthcareService.endpoint.identifier.id
extension I 0..* Extension HealthcareService.endpoint.identifier.extension
hasValue() or (children().count() > id.count())extension.exists() != value.exists()use Σ ?! 0..1 codeBinding HealthcareService.endpoint.identifier.use
hasValue() or (children().count() > id.count())type Σ 0..1 CodeableConceptBinding HealthcareService.endpoint.identifier.type
hasValue() or (children().count() > id.count())system Σ 0..1 uri HealthcareService.endpoint.identifier.system
hasValue() or (children().count() > id.count())http://www.acme.com/identifiers/patient
Mappingsvalue Σ 0..1 string HealthcareService.endpoint.identifier.value
hasValue() or (children().count() > id.count())123456
Mappingsperiod Σ I 0..1 Period HealthcareService.endpoint.identifier.period
hasValue() or (children().count() > id.count())start.hasValue().not() or end.hasValue().not() or (start <= end)assigner Σ I 0..1 Reference() Element id HealthcareService.endpoint.identifier.assigner
hasValue() or (children().count() > id.count())reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))display Σ 0..1 string HealthcareService.endpoint.display
hasValue() or (children().count() > id.count())
| Data Item | Implementation Guidance | Necessity | Profile Cardinality | Example | Immutable |
|---|---|---|---|---|---|
| HealthcareService | https://fhir.hl7.org.uk/StructureDefinition/UKCore-HealthcareService | ||||
| HealthcareService.id | This MUST only be populated with an id generated by the Endpoint Catalogue in the synchronous HTTP response upon creation. Its necessity is applicable to all VERBS bar POST | MUST | 0.1 | 236bb75d-90ef-461f-b71e-fde7f899802c | Y |
| HealthcareService.meta | https://www.hl7.org/fhir/resource.html#Meta | MUST | Y | ||
| HealthcareService.meta.profile | This MUST be populated with the structure definition for the R4 HealthcareService Resource | MUST | https://fhir.hl7.org.uk/StructureDefinition/UKCore-HealthcareService | Y | |
| HealthcareService.meta.lastUpdated | This MUST be supplied by the client with the time the resource is requested to be created or updated. If it is before the timestamp on the resource on an update, the request will be rejected. This is not the case for a DELETE operation. | MUST | 2021-11-26T15:00:00.8185338+00:00 | Y | |
| HealthcareService.identifier[1] | MUST | Y | |||
| HealthcareService.identifier[0] | This MUST Contain the identifier for HealthcareService service ID | MUST | Y | ||
| HealthcareService.identifier[0].system | This MUST be the system used for the Service ID, in this example, DoS ID | MUST | http://fhir.nhs.uk/Id/dos-service-id | Y | |
| HealthcareService.identifier[0].value | The Service ID code as a string. | MUST | 1122334455 | Y | |
| HealthcareService.identifier[1] | this MUST contain the identifier for Product ID | MUST | http://fhir.nhs.uk/Id/product-id | Y | |
| HealthcareService.identifier[1].system | this MUST be the Product ID system Identifier for http://fhir.nhs.uk/Id/product-id | MUST | AAA000 | Y | |
| HealthcareService.identifier[1].value | The hexadecimal Product ID as a string. | MUST | Y | ||
| HealthcareService.active | Whether this Service is Active and ready to accept requests. | MUST | TRUE | Y | |
| HealthcareService.providedBy | The provider Organization this HealthcareService is provided by. | MUST | Y | ||
| HealthcareService.providedBy.reference | A reference to the id of the Organization, this MUST exist. | MUST | Organization/d5ffd0cd-ec7e-48a1-84f1-91f4c0eb8fc5 | Y | |
| HealthcareService.name | The name of the HealthcareService | MUST | Emergency Department A | Y | |
| HealthcareService.endpoint | A reference to the Endpoint associated to this HealthcareService. This MUST be a reference to the BaRS endpoint. | MUST | N | ||
| HealthcareService.endpoint.reference | This MUST be a reference to the BaRS endpoint. | MUST | Endpoint/d5ffd0cd-ec7e-48a1-84f1-91f4c0eb8fc5 | N | |
| HealthcareService.category | Follow UK Core guidance for populating this element. | COULD | N | ||
| HealthcareService.type | Follow UK Core guidance for populating this element. | COULD | N | ||
| HealthcareService.specialty | Follow UK Core guidance for populating this element. | COULD | N | ||
| HealthcareService.location | Follow UK Core guidance for populating this element. | COULD | N | ||
| HealthcareService.name | Follow UK Core guidance for populating this element. | COULD | N | ||
| HealthcareService.comment | Follow UK Core guidance for populating this element. | COULD | N | ||
| HealthcareService.extraDetails | Follow UK Core guidance for populating this element. | COULD | N | ||
| HealthcareService.photo | Follow UK Core guidance for populating this element. | COULD | N | ||
| HealthcareService.telecom | Follow UK Core guidance for populating this element. | COULD | N | ||
| HealthcareService.coverageArea | Follow UK Core guidance for populating this element. | COULD | N | ||
| HealthcareService.eligibility | Follow UK Core guidance for populating this element. | COULD | N | ||
| HealthcareService.serviceProvisionCode | Follow UK Core guidance for populating this element. | COULD | N | ||
| HealthcareService.program | Follow UK Core guidance for populating this element. | COULD | N | ||
| HealthcareService.characteristic | Follow UK Core guidance for populating this element. | COULD | N | ||
| HealthcareService.communication | Follow UK Core guidance for populating this element. | COULD | N | ||
| HealthcareService.referralMethod | Follow UK Core guidance for populating this element. | COULD | N | ||
| HealthcareService.appoiuntmentRequired | Follow UK Core guidance for populating this element. | COULD | N | ||
| HealthcareService.availableTime | Follow UK Core guidance for populating this element. | COULD | N | ||
| HealthcareService.notAvailable | Follow UK Core guidance for populating this element. | COULD | N | ||
| HealthcareService.availabilityExceptions | Follow UK Core guidance for populating this element. | COULD | N |
This resource describes the endpoint itself including data around how to interact with it The technical details of an endpoint that can be used for electronic services The technical details of an endpoint that can be used for electronic services, such as for web services providing XDS.b or a REST endpoint for another FHIR server. This may include any security context information. Logical id of this artifact The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes. The only time that a resource does not have an id is when it is being submitted to the server using a create operation. Metadata about the resource 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. A set of rules under which this content was created 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. Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc. Language of the resource content The base language in which the resource is written. Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute). A human language. Text summary of the resource, for human interpretation narrative, html, xhtml, display 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 resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a "text blob" or where text is additionally entered raw or narrated and encoded information is added later. Contained, inline Resources inline resources, anonymous resources, contained resources 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. This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels. Additional content defined by implementations extensions, user content 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. There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. Unordered, Open, by url(Value) Extensions that cannot be ignored extensions, user content 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). Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions. There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. Unordered, Open, by url(Value) Identifies this endpoint across multiple systems Identifier for the organization that is used to identify the endpoint across multiple disparate systems. active | suspended | error | off | entered-in-error | test active | suspended | error | off | test. This element is labeled as a modifier because the status contains codes that mark the endpoint as not currently valid. The status of the endpoint. Protocol/Profile/Standard to be used with this endpoint connection A coded value that represents the technical details of the usage of this endpoint, such as what WSDLs should be used in what way. (e.g. XDS.b/DICOM/cds-hook). For additional connectivity details for the protocol, extensions will be used at this point, as in the XDS example. EndpointConnectionType (extensible) A name that this endpoint can be identified by A friendly name that this endpoint can be referred to with. Note that FHIR strings SHALL NOT exceed 1MB in size Organization that manages this endpoint (might not be the organization that exposes the endpoint) The organization that manages this endpoint (even if technically another organization is hosting this in the cloud, it is the organization associated with the data). This property is not typically used when searching for Endpoint resources for usage. The typical usage is via the reference from an applicable Organization/Location/Practitioner resource, which is where the context is provided. Multiple Locations may reference a single endpoint, and don't have to be within the same organization resource, but most likely within the same organizational hierarchy. Contact details for source (e.g. troubleshooting) Contact details for a human to contact about the subscription. The primary use of this for system administrator troubleshooting. Interval the endpoint is expected to be operational The interval during which the endpoint is expected to be operational. A Period specifies a range of time; the context of use will specify whether the entire range applies (e.g. "the patient was an inpatient of the hospital for this time range") or one value from the range applies (e.g. "give to the patient between these two times"). Period is not used for a duration (a measure of elapsed time). See Duration. The type of content that may be used at this endpoint (e.g. XDS Discharge summaries) The payload type describes the acceptable content that can be communicated on the endpoint. The payloadFormat describes the serialization format of the data, where the payloadType indicates the specific document/schema that is being transferred; e.g. DischargeSummary or CarePlan. Mimetype to send. If not specified, the content could be anything (including no payload, if the connectionType defined this) The mime type to send the payload in - e.g. application/fhir+xml, application/fhir+json. If the mime type is not specified, then the sender could send any content (including no content depending on the connectionType). Sending the payload has obvious security consequences. The server is responsible for ensuring that the content is appropriately secured. The mime type of an attachment. Any valid mime type is allowed. The technical base address for connecting to this endpoint The uri that describes the actual end-point to connect to. For rest-hook, and websocket, the end-point must be an http: or https: URL; for email, a mailto: url, for sms, a tel: url, and for message the endpoint can be in any form of url the server understands (usually, http: or mllp:). The URI is allowed to be relative; in which case, it is relative to the server end-point (since there may be more than one, clients should avoid using relative URIs) This address will be to the service base, without any parameters, or sub-services or resources tacked on. E.g. for a WADO-RS endpoint, the url should be "https://pacs.hospital.org/wado-rs" and not "https://pacs.hospital.org/wado-rs/studies/1.2.250.1.59.40211.12345678.678910/series/1.2.250.1.59.40211.789001276.14556172.67789/instances/...". Usage depends on the channel type Additional headers / information to send as part of the notification. Exactly what these mean depends on the channel type. The can convey additional information to the recipient and/or meet security requirements.> Endpoint
Endpoint I DomainResource Element id Endpoint
contained.contained.empty()contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()text.`div`.exists()contained.meta.security.empty()id Σ 0..1 string Endpoint.id
meta Σ 0..1 Meta Endpoint.meta
hasValue() or (children().count() > id.count())implicitRules Σ ?! 0..1 uri Endpoint.implicitRules
hasValue() or (children().count() > id.count())language 0..1 codeBinding Endpoint.language
hasValue() or (children().count() > id.count())text 0..1 Narrative Endpoint.text
hasValue() or (children().count() > id.count())contained 0..* Resource Endpoint.contained
extension I 0..* Extension Endpoint.extension
hasValue() or (children().count() > id.count())extension.exists() != value.exists()modifierExtension ?! I 0..* Extension Endpoint.modifierExtension
hasValue() or (children().count() > id.count())extension.exists() != value.exists()identifier Σ 0..* Identifier Element id Endpoint.identifier
hasValue() or (children().count() > id.count())status Σ ?! 1..1 codeBinding Element id Endpoint.status
hasValue() or (children().count() > id.count())connectionType Σ 1..1 CodingBinding Element id Endpoint.connectionType
hasValue() or (children().count() > id.count())name Σ 0..1 string Element id Endpoint.name
hasValue() or (children().count() > id.count())managingOrganization Σ I 0..1 Reference(Organization) Element id Endpoint.managingOrganization
hasValue() or (children().count() > id.count())reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))contact I 0..* ContactPoint Element id Endpoint.contact
hasValue() or (children().count() > id.count())value.empty() or system.exists()period Σ I 0..1 Period Element id Endpoint.period
hasValue() or (children().count() > id.count())start.hasValue().not() or end.hasValue().not() or (start <= end)payloadType Σ 1..* CodeableConcept Element id Endpoint.payloadType
hasValue() or (children().count() > id.count())payloadMimeType Σ 0..* codeBinding Element id Endpoint.payloadMimeType
hasValue() or (children().count() > id.count())address Σ 1..1 url Element id Endpoint.address
hasValue() or (children().count() > id.count())header 0..* string Element id Endpoint.header
hasValue() or (children().count() > id.count())
| Data Item | Implementation Guidance | Necessity | Profile Cardinality | Example | Immutable |
|---|---|---|---|---|---|
| Endpoint | http://hl7.org/fhir/structuredefinition/endpoint | ||||
| Endpoint.id | This MUST only be populated with an id generated by the Endpoint Catalogue in the synchronous HTTP response upon creation. Its necessity is applicable to all VERBS bar POST | MUST | 0.1 | 236bb75d-90ef-461f-b71e-fde7f899802c | Y |
| Endpoint.meta | https://www.hl7.org/fhir/resource.html#Meta | MUST | Y | ||
| Endpoint.meta.profile | This MUST be populated with the structure definition for the R4 Endpoint Resource | MUST | https://fhir.hl7.org.uk/StructureDefinition/UKCore-Endpoint | Y | |
| Endpoint.lastUpdated | This MUST be supplied by the client with the time the resource is requested to be created or updated. If it is before the timestamp on the resource on an update, the request will be rejected. This is not the case for a DELETE operation. | MUST | 2021-11-26T15:00:00.8185338+00:00 | Y | |
| Endpoint.identifier[0] | this MUST contain the identifier for Product ID | MUST | Y | ||
| Endpoint.identifier[0].system | this MUST be the Product ID system Identifier for http://fhir.nhs.uk/Id/product-id | MUST | http://fhir.nhs.uk/Id/product-id | Y | |
| Endpoint.identifier[0].value | The hexadecimal Product ID as a string. | MUST | AAA000 | Y | |
| Endpoint.status | Whether this Service is Active and ready to accept requests. This MUST be inline with the HealthcareService.active value | MUST | active | Y | |
| Endpoint.managingOrganization | The Provider or Supplier Organization that manages this Endpoint. This DOES NOT need to match HealthcareService.providedBy. | MUST | Y | ||
| Endpoint.managingOrganization.reference | A reference to the id of the Organization, this MUST exist. | MUST | Organization/51ab1d8b-72c3-4ca0-877c-b5f73faf36b5 | Y | |
| Endpoint.connectionType | MUST | Y | |||
| Endpoint.connectionType.valueCodeableConcept | Y | ||||
| Endpoint.connectionType.valueCodeableConcept.coding[0] | This MUST define the type of connection this endpoint supports. In this Instance describing a BaRS endpoint. | MUST | Y | ||
| Endpoint.connectionType.valueCodeableConcept.coding[0].system | MUST be https://fhir.nhs.uk/CodeSystem/ConnectionTypes | MUST | https://fhir.nhs.uk/CodeSystem/ConnectionTypes | Y | |
| Endpoint.connectionType.valueCodeableConcept.coding[0].code | MUST be "BARS" | MUST | BARS | Y | |
| Endpoint.connectionType.valueCodeableConcept.coding[0].display | MUST be "Booking And Referrals Standard" | MUST | Booking And Referrals Standard | Y | |
| Endpoint.connectionType.valueCodeableConcept.text | MUST be "Booking and Referrals" | MUST | Booking and Referrals | Y | |
| Endpoint.address | This MUST be the receiving systems base URL for BARS. | MUST | https://MyBaseServerAddress.nhs.uk/FHIR/R4 | Y | |
| Endpoint.name | The name of this Endpoint, defined by the service | MUST | Emergency Department B - BaRS Endpoint | Y | |
| Endpoint.header | Defines whether this endpoint is public or private. | COULD | public | N | |
| Endpoint.Period | Interval the endpoint is expected to be operational | MUST | Y | ||
| Endpoint.Period.Start | Date from which the endpoint is active. | MUST | 2024-11-26T15:00:00.8185338+00:00 | Y | |
| Endpoint.Period.End | Date from the endpoint is inactive. | COULD | 2028-11-26T15:00:00.8185338+00:00 | N | |
| Endpoint.contact | Follow UK Core guidance for populating this element. | COULD | N | ||
| Endpoint.payloadType | Follow UK Core guidance for populating this element. | COULD | N | ||
| Endpoint.payloadMimeType | Follow UK Core guidance for populating this element. | COULD | N |
Entity Relationship Diagram
Examples
Endpoint
{
"resourceType": "Organization",
"meta": {
"lastUpdated": "2021-10-11T15:23:30.8185338+00:00",
"profile": [
"https://fhir.hl7.org.uk/StructureDefinition/UKCore-Organization"
]
},
"identifier": [
{
"system": "https://fhir.nhs.uk/id/ods-organization-code",
"value": "RYE"
},
{
"system": "http://fhir.nhs.uk/Id/product-id",
"value": "AAA000"
}
],
"name": "NHS Trust A"
}
HealthcareService
{
"resourceType": "HealthcareService",
"meta": {
"lastUpdated": "2021-11-26T15:00:00.8185338+00:00",
"profile": [
"http://hl7.org/fhir/StructureDefinition/HealthcareService",
"https://fhir.hl7.org.uk/StructureDefinition/UKCore-HealthcareService"
]
},
"identifier": [
{
"system": "http://fhir.nhs.uk/Id/dos-service-id",
"value": "111111111"
},
{
"system": "http://fhir.nhs.uk/Id/product-id",
"value": "AAA000"
}
],
"active": true,
"providedBy": {
"reference": "Organization/d5ffd0cd-ec7e-48a1-84f1-91f4c0eb8fc5"
},
"name": "Emergency Department A",
"endpoint":{
"reference":"Endpoint/4e958d43-ad80-40c9-85ff-2be003d1ea86"
}
}
Endpoint
{
"resourceType": "Endpoint",
"id": "0cb21027-a246-43e6-9c7a-35b17163eab1",
"meta": {
"lastUpdated": "2021-10-11T15:23:30+00:00",
"profile": [
"http://hl7.org/fhir/StructureDefinition/Endpoint"
]
},
"identifier": [
{
"system": "http://fhir.nhs.uk/Id/product-id",
"value": "AAA000"
}
],
"status": "active",
"name": "Service Endpoint Name",
"connectionType": [
{
"valueCodeableConcept": {
"coding": [
{
"system": "https://fhir.nhs.uk/CodeSystem/ConnectionTypes",
"code": "BARS",
"display": "Booking And Referrals Standard"
}
],
"text": "Booking and Referrals"
}
}
],
"managingOrganization": [
{
"reference": "3e96763f-7969-404f-afac-c415f47dff42"
}
],
"address": "https://myService.nhs.uk/Base/Address",
"header": "public",
"Period": {
"Start": "2021-10-11T15:23:30+00:00",
"End": "2021-10-11T15:23:30+00:00"
}
}
Sequences
The sequences to create, update or read an endpoint via BaRS are detailed below. Though the interaction for a sender to route to a receiver has not changed, the sequence is included. The Sequence is the same for all resources, that being said, due to constraints on the data, there are limits to certain scenarios depending on if a resource would result in being orphaned, or a duplicate entry is being created.
Sender
Here a Sender is simply sending a request to a receiver using the NHSD-Target-Identifier header.
Create
Here a Receiving system is creating a resource related to an endpoint.
Update
Here a Receiving system is updating a resource related to an endpoint.