This page is part of the Validated Healthcare Directory FHIR IG (v0.2.0: STU 1 Ballot 2) based on FHIR v3.5.0. . For a full list of available versions, see the Directory of published versions
StructureDefinition-vhdir-healthcareservice
This profile sets minimum expectations for searching for and fetching information associated with a healthcare service. It identifies which core elements, extensions, vocabularies and value sets SHALL be present in the HealthcareService resource when using this profile.
Background & Scope
The HealthcareService resource typically describes services offered by an organization/practitioner at a location. The resource may be used to encompass a variety of services covering the entire healthcare spectrum, including promotion, prevention, diagnstics, hospital and ambulatory care, home care, long-term care, and other health-related and community services.
This profile modifies the base HealthcareService resource in the following manner:
-
Constrains the cardinality of
healthcareService.active
(1..1),healthcareService.telecom.system
(1..1), andhealthcareService.telecom.value
(1..1) -
All references SHALL conform to the appropriate Validated Healthcare Directory Implementation Guide profile
-
Adds extensions:
- Identifier status (1..1) - indicates the status of a service’s identifier
- Via intermediary (0..1) - a reference to an alternative point of contact for this service
- Available time (0..*) - indicates when a service is available for contact
- NewPatients (0..*) - indicates whether the service is accepting new patients
- Restriction (0..*) - indicates whether disclosure of any data associated with a service is restricted
- Adds new value sets/updates value set bindings:
TBD
Examples:
The following are example uses for the vhdir-healthcareservice profile:
Mandatory Data Elements
The following data-elements are mandatory (i.e data MUST be present). These are presented below in a simple human-readable explanation. The Formal Profile Definition below provides the formal summary, definitions, and terminology requirements.
- A boolean value in
healthcareService.active
Profile specific implementation guidance:
- TBD
Formal Views of Profile Content
Description of Profiles, Differentials, and Snapshots.
The official URL for this profile is: http://hl7.org/fhir/uv/vhdir/StructureDefinition/vhdir-healthcareservice
Published on Wed Oct 18 00:21:21 AEST 2017 as a active by HL7 International.
This profile builds on HealthcareService
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
HealthcareService | I | 0..* | The details of a healthcare service available at a location | |
id | Σ | 0..1 | id | Logical id of this artifact |
meta | Σ | 0..1 | Meta | Metadata about the resource |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
language | 0..1 | code | Language of the resource content Binding: Common Languages (preferred) | |
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |
contained | 0..* | Resource | Contained, inline Resources | |
extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |
usage-restriction | 0..* | Reference(VhDir Restriction) | Restriction URL: http://hl7.org/fhir/uv/vhdir/StructureDefinition/usage-restriction | |
newpatients | 0..* | (Complex) | New patients URL: http://hl7.org/fhir/uv/vhdir/StructureDefinition/newpatients | |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
identifier | Σ | 0..* | Identifier | External identifiers for this item |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |
identifier-status | 1..1 | code | Status URL: http://hl7.org/fhir/uv/vhdir/StructureDefinition/identifier-status Binding: VhDir Identifier Status Value Set (example) | |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
url | 1..1 | "http://hl7.org/fhir/uv/vhdir/StructureDefinition/identifier-status" | ||
valueCode | 1..1 | code | active|inactive|issued in error|revoked|pending Binding: VhDir Identifier Status Value Set (example) | |
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required) |
type | Σ | 0..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible) |
system | Σ | 0..1 | uri | The namespace for the identifier value Example General': http://www.acme.com/identifiers/patient |
value | Σ | 0..1 | string | The value that is unique Example General': 123456 |
period | Σ | 0..1 | Period | Time period when id is/was valid for use |
assigner | Σ | 0..1 | Reference(VhDir Organization) | Organization that issued id (may be just text) |
active | ?!Σ | 1..1 | boolean | Whether this HealthcareService record is in active use |
providedBy | Σ | 0..1 | Reference(VhDir Organization) | Organization that provides this service |
category | Σ | 0..* | CodeableConcept | Broad category of service being performed or delivered Binding: ServiceCategory (example) |
type | Σ | 0..* | CodeableConcept | Type of service that may be delivered or performed Binding: ServiceType (example) |
specialty | Σ | 0..* | CodeableConcept | Specialties handled by the HealthcareService Binding: PracticeSettingCodeValueSet (preferred) |
location | Σ | 0..* | Reference(VhDir Location) | Location(s) where service may be provided |
name | Σ | 0..1 | string | Description of service as presented to a consumer while searching |
comment | Σ | 0..1 | string | Additional description and/or any specific issues not covered elsewhere |
extraDetails | 0..1 | string | Extra details about the service that can't be placed in the other fields | |
photo | Σ | 0..1 | Attachment | Facilitates quick identification of the service |
telecom | 0..* | ContactPoint | Contacts related to the healthcare service | |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |
contactpoint-availabletime | 0..* | (Complex) | Available time URL: http://hl7.org/fhir/uv/vhdir/StructureDefinition/contactpoint-availabletime | |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |
extension | 0..* | Extension | Days of week | |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
url | 1..1 | "daysOfWeek" | ||
valueCode | 1..1 | code | Days of the week - mon|tue|wed|thu|fri|sat|sun Binding: DaysOfWeek (required) | |
extension | 0..1 | Extension | All day | |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
url | 1..1 | "allDay" | ||
valueBoolean | 1..1 | boolean | All day | |
extension | 0..1 | Extension | Available start time | |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
url | 1..1 | "availableStartTime" | ||
valueTime | 1..1 | time | Available start time | |
extension | 0..1 | Extension | Available end time | |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
url | 1..1 | "availableEndTime" | ||
valueTime | 1..1 | time | Available end time | |
url | 1..1 | "http://hl7.org/fhir/uv/vhdir/StructureDefinition/contactpoint-availabletime" | ||
contactpoint-viaintermediary | 0..1 | Reference(VhDir Practitionerrole | VhDir Organization | VhDir OrganizationAffiliation | VhDir Location) | viaintermediary URL: http://hl7.org/fhir/uv/vhdir/StructureDefinition/contactpoint-viaintermediary | |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
url | 1..1 | "http://hl7.org/fhir/uv/vhdir/StructureDefinition/contactpoint-viaintermediary" | ||
valueReference | 1..1 | Reference(VhDir Practitionerrole | VhDir Organization | VhDir OrganizationAffiliation | VhDir Location) | Via intermediary | |
system | ΣI | 1..1 | code | phone | fax | email | pager | url | sms | other Binding: ContactPointSystem (required) |
value | Σ | 1..1 | string | The actual contact point details |
use | ?!Σ | 0..1 | code | home | work | temp | old | mobile - purpose of this contact point Binding: ContactPointUse (required) |
rank | Σ | 0..1 | positiveInt | Specify preferred order of use (1 = highest) |
period | Σ | 0..1 | Period | Time period when the contact point was/is in use |
coverageArea | 0..* | Reference(VhDir Location) | Location(s) service is intended for/available to | |
serviceProvisionCode | 0..* | CodeableConcept | Conditions under which service is available/offered Binding: ServiceProvisionConditions (example) | |
eligibility | 0..1 | CodeableConcept | Specific eligibility requirements required to use the service Binding: (unbound) (example) | |
eligibilityNote | 0..1 | string | Describes the eligibility conditions for the service | |
programName | 0..* | string | Program Names that categorize the service | |
characteristic | 0..* | CodeableConcept | Collection of characteristics (attributes) Binding: (unbound) (example) | |
referralMethod | 0..* | CodeableConcept | Ways that the service accepts referrals Binding: ReferralMethod (example) | |
appointmentRequired | 0..1 | boolean | If an appointment is required for access to this service | |
availableTime | I | 0..* | BackboneElement | Times the Service Site is available |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored if unrecognized |
daysOfWeek | 0..* | code | mon | tue | wed | thu | fri | sat | sun Binding: DaysOfWeek (required) | |
allDay | 0..1 | boolean | Always available? e.g. 24 hour service | |
availableStartTime | 0..1 | time | Opening time of day (ignored if allDay = true) | |
availableEndTime | 0..1 | time | Closing time of day (ignored if allDay = true) | |
notAvailable | I | 0..* | BackboneElement | Not available during this time due to provided reason |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored if unrecognized |
description | 1..1 | string | Reason presented to the user explaining why time not available | |
during | 0..1 | Period | Service not available from this date | |
availabilityExceptions | 0..1 | string | Description of availability exceptions | |
endpoint | 0..* | Reference(VhDir Endpoint) | Technical endpoints providing access to services operated for the location | |
Documentation for this format |
Summary
Mandatory: 1 element (3 nested mandatory elements)
Structures
This structure refers to these other structures:
- http://hl7.org/fhir/uv/vhdir/StructureDefinition/vhdir-organization
- http://hl7.org/fhir/uv/vhdir/StructureDefinition/vhdir-location
- http://hl7.org/fhir/uv/vhdir/StructureDefinition/vhdir-endpoint
Extensions
This structure refers to these extensions:
- http://hl7.org/fhir/uv/vhdir/StructureDefinition/usage-restriction
- http://hl7.org/fhir/uv/vhdir/StructureDefinition/newpatients
- http://hl7.org/fhir/uv/vhdir/StructureDefinition/identifier-status
- http://hl7.org/fhir/uv/vhdir/StructureDefinition/contactpoint-availabletime
- http://hl7.org/fhir/uv/vhdir/StructureDefinition/contactpoint-viaintermediary
Differential View
Snapshot View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
HealthcareService | I | 0..* | The details of a healthcare service available at a location | |
id | Σ | 0..1 | id | Logical id of this artifact |
meta | Σ | 0..1 | Meta | Metadata about the resource |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
language | 0..1 | code | Language of the resource content Binding: Common Languages (preferred) | |
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |
contained | 0..* | Resource | Contained, inline Resources | |
extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |
usage-restriction | 0..* | Reference(VhDir Restriction) | Restriction URL: http://hl7.org/fhir/uv/vhdir/StructureDefinition/usage-restriction | |
newpatients | 0..* | (Complex) | New patients URL: http://hl7.org/fhir/uv/vhdir/StructureDefinition/newpatients | |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
identifier | Σ | 0..* | Identifier | External identifiers for this item |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |
identifier-status | 1..1 | code | Status URL: http://hl7.org/fhir/uv/vhdir/StructureDefinition/identifier-status Binding: VhDir Identifier Status Value Set (example) | |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
url | 1..1 | "http://hl7.org/fhir/uv/vhdir/StructureDefinition/identifier-status" | ||
valueCode | 1..1 | code | active|inactive|issued in error|revoked|pending Binding: VhDir Identifier Status Value Set (example) | |
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required) |
type | Σ | 0..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible) |
system | Σ | 0..1 | uri | The namespace for the identifier value Example General': http://www.acme.com/identifiers/patient |
value | Σ | 0..1 | string | The value that is unique Example General': 123456 |
period | Σ | 0..1 | Period | Time period when id is/was valid for use |
assigner | Σ | 0..1 | Reference(VhDir Organization) | Organization that issued id (may be just text) |
active | ?!Σ | 1..1 | boolean | Whether this HealthcareService record is in active use |
providedBy | Σ | 0..1 | Reference(VhDir Organization) | Organization that provides this service |
category | Σ | 0..* | CodeableConcept | Broad category of service being performed or delivered Binding: ServiceCategory (example) |
type | Σ | 0..* | CodeableConcept | Type of service that may be delivered or performed Binding: ServiceType (example) |
specialty | Σ | 0..* | CodeableConcept | Specialties handled by the HealthcareService Binding: PracticeSettingCodeValueSet (preferred) |
location | Σ | 0..* | Reference(VhDir Location) | Location(s) where service may be provided |
name | Σ | 0..1 | string | Description of service as presented to a consumer while searching |
comment | Σ | 0..1 | string | Additional description and/or any specific issues not covered elsewhere |
extraDetails | 0..1 | string | Extra details about the service that can't be placed in the other fields | |
photo | Σ | 0..1 | Attachment | Facilitates quick identification of the service |
telecom | 0..* | ContactPoint | Contacts related to the healthcare service | |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |
contactpoint-availabletime | 0..* | (Complex) | Available time URL: http://hl7.org/fhir/uv/vhdir/StructureDefinition/contactpoint-availabletime | |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |
extension | 0..* | Extension | Days of week | |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
url | 1..1 | "daysOfWeek" | ||
valueCode | 1..1 | code | Days of the week - mon|tue|wed|thu|fri|sat|sun Binding: DaysOfWeek (required) | |
extension | 0..1 | Extension | All day | |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
url | 1..1 | "allDay" | ||
valueBoolean | 1..1 | boolean | All day | |
extension | 0..1 | Extension | Available start time | |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
url | 1..1 | "availableStartTime" | ||
valueTime | 1..1 | time | Available start time | |
extension | 0..1 | Extension | Available end time | |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
url | 1..1 | "availableEndTime" | ||
valueTime | 1..1 | time | Available end time | |
url | 1..1 | "http://hl7.org/fhir/uv/vhdir/StructureDefinition/contactpoint-availabletime" | ||
contactpoint-viaintermediary | 0..1 | Reference(VhDir Practitionerrole | VhDir Organization | VhDir OrganizationAffiliation | VhDir Location) | viaintermediary URL: http://hl7.org/fhir/uv/vhdir/StructureDefinition/contactpoint-viaintermediary | |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
url | 1..1 | "http://hl7.org/fhir/uv/vhdir/StructureDefinition/contactpoint-viaintermediary" | ||
valueReference | 1..1 | Reference(VhDir Practitionerrole | VhDir Organization | VhDir OrganizationAffiliation | VhDir Location) | Via intermediary | |
system | ΣI | 1..1 | code | phone | fax | email | pager | url | sms | other Binding: ContactPointSystem (required) |
value | Σ | 1..1 | string | The actual contact point details |
use | ?!Σ | 0..1 | code | home | work | temp | old | mobile - purpose of this contact point Binding: ContactPointUse (required) |
rank | Σ | 0..1 | positiveInt | Specify preferred order of use (1 = highest) |
period | Σ | 0..1 | Period | Time period when the contact point was/is in use |
coverageArea | 0..* | Reference(VhDir Location) | Location(s) service is intended for/available to | |
serviceProvisionCode | 0..* | CodeableConcept | Conditions under which service is available/offered Binding: ServiceProvisionConditions (example) | |
eligibility | 0..1 | CodeableConcept | Specific eligibility requirements required to use the service Binding: (unbound) (example) | |
eligibilityNote | 0..1 | string | Describes the eligibility conditions for the service | |
programName | 0..* | string | Program Names that categorize the service | |
characteristic | 0..* | CodeableConcept | Collection of characteristics (attributes) Binding: (unbound) (example) | |
referralMethod | 0..* | CodeableConcept | Ways that the service accepts referrals Binding: ReferralMethod (example) | |
appointmentRequired | 0..1 | boolean | If an appointment is required for access to this service | |
availableTime | I | 0..* | BackboneElement | Times the Service Site is available |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored if unrecognized |
daysOfWeek | 0..* | code | mon | tue | wed | thu | fri | sat | sun Binding: DaysOfWeek (required) | |
allDay | 0..1 | boolean | Always available? e.g. 24 hour service | |
availableStartTime | 0..1 | time | Opening time of day (ignored if allDay = true) | |
availableEndTime | 0..1 | time | Closing time of day (ignored if allDay = true) | |
notAvailable | I | 0..* | BackboneElement | Not available during this time due to provided reason |
id | 0..1 | string | xml:id (or equivalent in JSON) | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored if unrecognized |
description | 1..1 | string | Reason presented to the user explaining why time not available | |
during | 0..1 | Period | Service not available from this date | |
availabilityExceptions | 0..1 | string | Description of availability exceptions | |
endpoint | 0..* | Reference(VhDir Endpoint) | Technical endpoints providing access to services operated for the location | |
Documentation for this format |
Downloads: StructureDefinition: (XML, JSON), Schema: XML Schematron
Quick Start
Below is an overview of the required set of RESTful FHIR interactions - for example, search and read operations - for this profile. See the Conformance requirements for a complete list of supported RESTful interactions for this IG.
Supported Searches
-
GET [base]/HealthcareService?active=[code]
Support: SHALL support search by the
active
parameter:http://hl7.org/fhir/SearchParameter/HealthcareService-active
-
GET [base]/HealthcareService?healthcareservice-category=[code]
Support: SHALL support search by the
healthcareservice-category
parameter- including the modifiers:
text
- including the modifiers:
-
GET [base]/HealthcareService?healthcareservice-characteristic=[code]
Support: MAY support search by the
healthcareservice-characteristic
parameter- including the modifiers:
text
- including the modifiers:
-
GET [base]/HealthcareService?healthcareservice-coverage-area=[id]
Support: SHOULD support search by the
healthcareservice-coverage-area
parameter- with a target type:
Location
- including these search paramaters which may be chained:
location-identifier
,location-contains
- with a target type:
-
GET [base]/HealthcareService?healthcareservice-eligibility=[code]
Support: SHOULD support search by the
healthcareservice-eligibility
parameter- including the modifiers:
text
- including the modifiers:
-
GET [base]/HealthcareService?healthcareservice-endpoint=[id]
Support: SHOULD support search by the
healthcareservice-endpoint
parameter- with a target type:
Endpoint
- including these search paramaters which may be chained:
endpoint-identifier
,endpoint-connection-type
,endpoint-organization
- with a target type:
-
GET [base]/HealthcareService?healthcareservice-identifier=[code]
Support: SHALL support search by the
healthcareservice-identifier
parameter- including the modifiers:
text
,ofType
- including the modifiers:
-
GET [base]/HealthcareService?healthcareservice-identifier-assigner=[id]
Support: MAY support search by the
healthcareservice-identifier-assigner
parameter- with a target type:
Organization
- including the modifiers:
below
- including these search paramaters which may be chained:
organization-identifier
,organization-name
- with a target type:
-
GET [base]/HealthcareService?healthcareservice-location=[id]
Support: SHALL support search by the
healthcareservice-location
parameter- with a target type:
Location
- including the modifiers:
above
,below
- including these search paramaters which may be chained:
location-identifier
,location-type
,location-address
,location-organization
- with a target type:
-
GET [base]/HealthcareService?healthcareservice-name=[string]
Support: SHOULD support search by the
healthcareservice-name
parameter- including the modifiers:
exact
,contains
- including the modifiers:
-
GET [base]/HealthcareService?healthcareservice-new-patient=[code]
Support: SHOULD support search by the
healthcareservice-new-patient
parameter
-
GET [base]/HealthcareService?healthcareservice-new-patient-network=[id]
Support: SHOULD support search by the
healthcareservice-new-patient-network
parameter- with a target type:
Organization
- including these search paramaters which may be chained:
organization-identifier
,organization-name
,organization-partof
- with a target type:
-
GET [base]/HealthcareService?healthcareservice-organization=[id]
Support: SHALL support search by the
healthcareservice-organization
parameter- with a target type:
Organization
- including the modifiers:
above
,below
- including these search paramaters which may be chained:
organization-identifier
,organization-name
,organization-address
,organization-partof
,organization-type
- with a target type:
-
GET [base]/HealthcareService?healthcareservice-specialty=[code]
Support: SHOULD support search by the
healthcareservice-specialty
parameter- including the modifiers:
text
- including the modifiers:
-
GET [base]/HealthcareService?healthcareservice-type=[code]
Support: SHOULD support search by the
healthcareservice-type
parameter- including the modifiers:
text
- including the modifiers:
-
GET [base]/HealthcareService?healthcareservice-via-intermediary=[id]
Support: MAY support search by the
healthcareservice-via-intermediary
parameter- with a target type:
PractitionerRole
,Organization
,OrganizationAffiliation
,Location
- with a target type: