Validated Healthcare Directory
1.0.0 - STU1 International flag

Validated Healthcare Directory, published by HL7 International / Patient Administration. This guide is not an authorized publication; it is the continuous build for version 1.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/VhDir/ and changes regularly. See the Directory of published versions

Resource Profile: VhDir Healthcare Service

Official URL: http://hl7.org/fhir/uv/vhdir/StructureDefinition/vhdir-healthcareservice Version: 1.0.0
Standards status: Trial-use Maturity Level: 2 Computable Name: VhdirHealthcareService

Copyright/Legal: HL7 International

Defines the basic constraints and extensions on the HealthcareService resource for use in a Validated Healthcare Directory

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), and healthcareService.telecom.value (1..1)

  • All references SHALL conform to the appropriate Validated Healthcare Directory Implementation Guide profile

  • Adds extensions:

  1. Identifier status (1..1) - indicates the status of a service's identifier
  2. Via intermediary (0..1) - a reference to an alternative point of contact for this service
  3. Available time (0..*) - indicates when a service is available for contact
  4. NewPatients (0..*) - indicates whether the service is accepting new patients
  5. Restriction (0..*) - indicates whether disclosure of any data associated with a service is restricted

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.

  1. A boolean value in healthcareService.active

Usage:

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

NameFlagsCard.TypeDescription & Constraintsdoco
.. HealthcareService 0..* HealthcareService The details of a healthcare service available at a location
dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
dom-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
dom-5: If a resource is contained in another resource, it SHALL NOT have a security label
dom-6: A resource should have narrative for robust management
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
ele-1: All FHIR elements must have a @value or children
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... restriction S 0..* Reference(VhDir Restriction) Restriction
URL: http://hl7.org/fhir/uv/vhdir/StructureDefinition/usage-restriction
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... newpatients S 0..* (Complex) Whether the services is accepting new patients
URL: http://hl7.org/fhir/uv/vhdir/StructureDefinition/newpatients
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
... identifier SΣ 0..* Identifier External identifiers for this item
ele-1: All FHIR elements must have a @value or children
.... Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... status S 1..1 code Status
URL: http://hl7.org/fhir/uv/vhdir/StructureDefinition/identifier-status
Binding: VhDir Identifier Status Value Set (required)
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... use ?!SΣ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .


ele-1: All FHIR elements must have a @value or children
.... type SΣ 0..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.


ele-1: All FHIR elements must have a @value or children
.... system SΣ 0..1 uri The namespace for the identifier value
ele-1: All FHIR elements must have a @value or children
Example General: http://www.acme.com/identifiers/patient
.... value SΣ 0..1 string The value that is unique
ele-1: All FHIR elements must have a @value or children
Example General: 123456
.... period SΣ 0..1 Period Time period when id is/was valid for use
ele-1: All FHIR elements must have a @value or children
.... assigner SΣ 0..1 Reference(VhDir Organization) Organization that issued id (may be just text)
ele-1: All FHIR elements must have a @value or children
... active ?!SΣ 1..1 boolean Whether this HealthcareService record is in active use
ele-1: All FHIR elements must have a @value or children
... providedBy SΣ 0..1 Reference(VhDir Organization) Organization that provides this service
ele-1: All FHIR elements must have a @value or children
... category SΣ 0..* CodeableConcept Broad category of service being performed or delivered
Binding: ServiceCategory (example): A category of the service(s) that could be provided.


ele-1: All FHIR elements must have a @value or children
... type SΣ 0..* CodeableConcept Type of service that may be delivered or performed
Binding: ServiceType (example): Additional details about where the content was created (e.g. clinical specialty).


ele-1: All FHIR elements must have a @value or children
... specialty SΣ 0..* CodeableConcept Specialties handled by the HealthcareService
Binding: PracticeSettingCodeValueSet (preferred): A specialty that a healthcare service may provide.


ele-1: All FHIR elements must have a @value or children
... location SΣ 0..* Reference(VhDir Location) Location(s) where service may be provided
ele-1: All FHIR elements must have a @value or children
... name SΣ 0..1 string Description of service as presented to a consumer while searching
ele-1: All FHIR elements must have a @value or children
... comment SΣ 0..1 string Additional description and/or any specific issues not covered elsewhere
ele-1: All FHIR elements must have a @value or children
... extraDetails S 0..1 markdown Extra details about the service that can't be placed in the other fields
ele-1: All FHIR elements must have a @value or children
... photo SΣ 0..1 Attachment Facilitates quick identification of the service
ele-1: All FHIR elements must have a @value or children
... telecom S 0..* ContactPoint Contacts related to the healthcare service
ele-1: All FHIR elements must have a @value or children
.... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... availabletime S 0..* (Complex) Available time
URL: http://hl7.org/fhir/uv/vhdir/StructureDefinition/contactpoint-availabletime
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... viaintermediary S 0..1 Reference(VhDir Practitioner Role | VhDir Organization | VhDir Organization Affiliation | VhDir Location) viaintermediary
URL: http://hl7.org/fhir/uv/vhdir/StructureDefinition/contactpoint-viaintermediary
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... system SΣC 1..1 code phone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.


ele-1: All FHIR elements must have a @value or children
.... value SΣ 1..1 string The actual contact point details
ele-1: All FHIR elements must have a @value or children
.... use ?!SΣ 0..1 code home | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required): Use of contact point.


ele-1: All FHIR elements must have a @value or children
.... rank SΣ 0..1 positiveInt Specify preferred order of use (1 = highest)
ele-1: All FHIR elements must have a @value or children
.... period SΣ 0..1 Period Time period when the contact point was/is in use
ele-1: All FHIR elements must have a @value or children
... coverageArea S 0..* Reference(VhDir Location) Location(s) service is intended for/available to
ele-1: All FHIR elements must have a @value or children
... serviceProvisionCode S 0..* CodeableConcept Conditions under which service is available/offered
Binding: ServiceProvisionConditions (example): The code(s) that detail the conditions under which the healthcare service is available/offered.


ele-1: All FHIR elements must have a @value or children
... eligibility S 0..* BackboneElement Specific eligibility requirements required to use the service
ele-1: All FHIR elements must have a @value or children
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... code S 0..1 CodeableConcept Coded value for the eligibility
Binding Description (No ValueSet): (example): Coded values underwhich a specific service is made available.


ele-1: All FHIR elements must have a @value or children
.... comment S 0..1 markdown Describes the eligibility conditions for the service
ele-1: All FHIR elements must have a @value or children
... program S 0..* CodeableConcept Programs that this service is applicable to
Binding: Program (example): Government or local programs that this service applies to.


ele-1: All FHIR elements must have a @value or children
... characteristic S 0..* CodeableConcept Collection of characteristics (attributes)
Binding: VhDir Healthcare Service Characteristic ValueSet (example)
ele-1: All FHIR elements must have a @value or children
... communication S 0..* CodeableConcept The language that this service is offered in
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguages Max Binding

ele-1: All FHIR elements must have a @value or children
... referralMethod S 0..* CodeableConcept Ways that the service accepts referrals
Binding: ReferralMethod (example): The methods of referral can be used when referring to a specific HealthCareService resource.


ele-1: All FHIR elements must have a @value or children
... appointmentRequired S 0..1 boolean If an appointment is required for access to this service
ele-1: All FHIR elements must have a @value or children
... availableTime S 0..* BackboneElement Times the Service Site is available
ele-1: All FHIR elements must have a @value or children
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... daysOfWeek S 0..* code mon | tue | wed | thu | fri | sat | sun
Binding: DaysOfWeek (required): The days of the week.


ele-1: All FHIR elements must have a @value or children
.... allDay S 0..1 boolean Always available? e.g. 24 hour service
ele-1: All FHIR elements must have a @value or children
.... availableStartTime S 0..1 time Opening time of day (ignored if allDay = true)
ele-1: All FHIR elements must have a @value or children
.... availableEndTime S 0..1 time Closing time of day (ignored if allDay = true)
ele-1: All FHIR elements must have a @value or children
... notAvailable S 0..* BackboneElement Not available during this time due to provided reason
ele-1: All FHIR elements must have a @value or children
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... description S 1..1 string Reason presented to the user explaining why time not available
ele-1: All FHIR elements must have a @value or children
.... during S 0..1 Period Service not available from this date
ele-1: All FHIR elements must have a @value or children
... availabilityExceptions S 0..1 string Description of availability exceptions
ele-1: All FHIR elements must have a @value or children
... endpoint S 0..* Reference(VhDir Endpoint) Technical endpoints providing access to electronic services operated for the healthcare service
ele-1: All FHIR elements must have a @value or children

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
HealthcareService.identifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
HealthcareService.identifier.typeextensibleIdentifier Type Codes
http://hl7.org/fhir/ValueSet/identifier-type
from the FHIR Standard
HealthcareService.categoryexampleServiceCategory
http://hl7.org/fhir/ValueSet/service-category
from the FHIR Standard
HealthcareService.typeexampleServiceType
http://hl7.org/fhir/ValueSet/service-type
from the FHIR Standard
HealthcareService.specialtypreferredPracticeSettingCodeValueSet
http://hl7.org/fhir/ValueSet/c80-practice-codes
from the FHIR Standard
HealthcareService.telecom.systemrequiredContactPointSystem
http://hl7.org/fhir/ValueSet/contact-point-system|4.0.1
from the FHIR Standard
HealthcareService.telecom.userequiredContactPointUse
http://hl7.org/fhir/ValueSet/contact-point-use|4.0.1
from the FHIR Standard
HealthcareService.serviceProvisionCodeexampleServiceProvisionConditions
http://hl7.org/fhir/ValueSet/service-provision-conditions
from the FHIR Standard
HealthcareService.eligibility.codeexample
HealthcareService.programexampleProgram
http://hl7.org/fhir/ValueSet/program
from the FHIR Standard
HealthcareService.characteristicexampleVhDirHealthcareServiceCharacteristic (a valid code from VhDir Healthcare Service Characteristic CodeSystem)
http://hl7.org/fhir/uv/vhdir/ValueSet/healthcareservice-characteristic
from this IG
HealthcareService.communicationpreferredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
Additional Bindings Purpose
AllLanguages Max Binding
HealthcareService.referralMethodexampleReferralMethod
http://hl7.org/fhir/ValueSet/service-referral-method
from the FHIR Standard
HealthcareService.availableTime.daysOfWeekrequiredDaysOfWeek
http://hl7.org/fhir/ValueSet/days-of-week|4.0.1
from the FHIR Standard

 

Other representations of profile: CSV, Excel, Schematron

Notes:

Supported Searches

  1. GET [base]/HealthcareService?active=[code]

    Support: SHALL support search by the active parameter: http://hl7.org/fhir/SearchParameter/HealthcareService-active


  1. GET [base]/HealthcareService?service-category=[code]

    Support: SHALL support search by the service-category parameter

    • including the modifiers: text

  1. GET [base]/HealthcareService?characteristic=[code]

    Support: MAY support search by the characteristic parameter

    • including the modifiers: text

  1. GET [base]/HealthcareService?coverage-area=[id]

    Support: SHOULD support search by the coverage-area parameter

    • with a target type: Location
    • including these search paramaters which may be chained: coverage-area.identifier, coverage-area.contains

  1. GET [base]/HealthcareService?eligibility=[code]

    Support: SHOULD support search by the eligibility parameter

    • including the modifiers: text

  1. GET [base]/HealthcareService?endpoint=[id]

    Support: SHOULD support search by the endpoint parameter

    • with a target type: Endpoint
    • including these search paramaters which may be chained: endpoint.identifier, endpoint.connection-type, endpoint.organization

  1. GET [base]/HealthcareService?identifier=[code]

    Support: SHALL support search by the identifier parameter

    • including the modifiers: text, ofType

  1. GET [base]/HealthcareService?identifier-assigner=[id]

    Support: MAY support search by the identifier-assigner parameter

    • with a target type: Organization
    • including the modifiers: below
    • including these search paramaters which may be chained: identifier-assigner.identifier, identifier-assigner.name

  1. GET [base]/HealthcareService?location=[id]

    Support: SHALL support search by the 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

  1. GET [base]/HealthcareService?name=[string]

    Support: SHOULD support search by the name parameter

    • including the modifiers: exact, contains

  1. GET [base]/HealthcareService?new-patient=[code]

    Support: SHOULD support search by the new-patient parameter


  1. GET [base]/HealthcareService?new-patient-network=[id]

    Support: SHOULD support search by the new-patient-network parameter

    • with a target type: Organization
    • including these search paramaters which may be chained: new-patient-network.identifier, new-patient-network.name, new-patient-network.partof

  1. GET [base]/HealthcareService?organization=[id]

    Support: SHALL support search by the 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

  1. GET [base]/HealthcareService?specialty=[code]

    Support: SHOULD support search by the specialty parameter

    • including the modifiers: text

  1. GET [base]/HealthcareService?service-type=[code]

    Support: SHOULD support search by the service-type parameter

    • including the modifiers: text

  1. GET [base]/HealthcareService?via-intermediary=[id]

    Support: MAY support search by the via-intermediary parameter

    • with a target type: PractitionerRole, Organization, OrganizationAffiliation, Location