HL7 FHIR Profile: Occupational Data for Health (ODH), Release 1.0 (Standard for Trial Use)

This page is part of the Occupational Data for Health (ODH) FHIR IG (v1.0.0: STU 1) based on FHIR R4. The current version which supercedes this version is 1.2.0. For a full list of available versions, see the Directory of published versions

HealthcareService

 

The official URL for this profile is:

http://hl7.org/fhir/us/odh/StructureDefinition/obf-HealthcareService

The details of a healthcare service available at a location.

This profile builds on HealthcareService.

This profile was published on Sat Jan 04 00:00:00 UTC 2020 as a draft by HL7 International Public Health Work Group.

Summary

Structures

This structure refers to these other structures:

Mapping Source

This structure represents the following mapping definition:

obf.HealthcareService maps to HealthcareService:
  Identifier maps to identifier
  Active maps to active
  Organization maps to providedBy
  Category maps to category
  Type maps to type
  SpecialtiesHandled maps to specialty
  Location maps to location
  Name maps to name
  CommentOrDescription maps to comment
  ExtraDetails maps to extraDetails
  PhotographicImage maps to photo
  ContactPoint maps to telecom
  CoverageArea maps to coverageArea
  ServiceProvisionCode maps to serviceProvisionCode
  Eligibility maps to eligibility
  Program maps to program
  Characteristic maps to characteristic
  Language maps to communication
  ReferralMethod maps to referralMethod
  AppointmentRequired maps to appointmentRequired
  AvailableTime maps to availableTime
  NotAvailable maps to notAvailable
  AvailabilityExceptions maps to availabilityExceptions
  Endpoint maps to endpoint

NameFlagsCard.TypeDescription & Constraintsdoco
.. HealthcareService HealthcareServiceHealthcare Service
... category Binding: ServiceCategory (required)
... type Binding: ServiceType (required)
... specialty Binding: PracticeSettingCodeValueSet (required)
... serviceProvisionCode Binding: ServiceProvisionConditions (required)
... program Binding: Program (required)
... referralMethod Binding: ReferralMethod (required)
... endpoint Reference(Endpoint)

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. HealthcareService I0..*HealthcareServiceHealthcare Service
... id Σ0..1stringLogical id of this artifact
... meta ΣI0..1MetaMetadata about the resource
... implicitRules ?!ΣI0..1uriA set of rules under which this content was created
... language I0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred)
Max Binding: AllLanguages
... text I0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension I0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!I0..*ExtensionExtensions that cannot be ignored
... identifier ΣI0..*IdentifierExternal identifiers for this item
... active ?!ΣI0..1booleanWhether this HealthcareService record is in active use
... providedBy ΣI0..1Reference(Organization)Organization that provides this service
... category ΣI0..*CodeableConceptBroad category of service being performed or delivered
Binding: ServiceCategory (required)
... type ΣI0..*CodeableConceptType of service that may be delivered or performed
Binding: ServiceType (required)
... specialty ΣI0..*CodeableConceptSpecialties handled by the HealthcareService
Binding: PracticeSettingCodeValueSet (required)
... location ΣI0..*Reference(Location)Location(s) where service may be provided
... name ΣI0..1stringDescription of service as presented to a consumer while searching
... comment ΣI0..1stringAdditional description and/or any specific issues not covered elsewhere
... extraDetails I0..1markdownExtra details about the service that can't be placed in the other fields
... photo ΣI0..1AttachmentFacilitates quick identification of the service
... telecom I0..*ContactPointContacts related to the healthcare service
... coverageArea I0..*Reference(Location)Location(s) service is intended for/available to
... serviceProvisionCode I0..*CodeableConceptConditions under which service is available/offered
Binding: ServiceProvisionConditions (required)
... eligibility I0..*BackboneElementSpecific eligibility requirements required to use the service
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!ΣI0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... code I0..1CodeableConceptCoded value for the eligibility
Binding: (unbound) (example)
.... comment I0..1markdownDescribes the eligibility conditions for the service
... program I0..*CodeableConceptPrograms that this service is applicable to
Binding: Program (required)
... characteristic I0..*CodeableConceptCollection of characteristics (attributes)
Binding: (unbound) (example)
... communication I0..*CodeableConceptThe language that this service is offered in
Binding: CommonLanguages (preferred)
Max Binding: AllLanguages
... referralMethod I0..*CodeableConceptWays that the service accepts referrals
Binding: ReferralMethod (required)
... appointmentRequired I0..1booleanIf an appointment is required for access to this service
... availableTime I0..*BackboneElementTimes the Service Site is available
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!ΣI0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... daysOfWeek I0..*codemon | tue | wed | thu | fri | sat | sun
Binding: DaysOfWeek (required)
.... allDay I0..1booleanAlways available? e.g. 24 hour service
.... availableStartTime I0..1timeOpening time of day (ignored if allDay = true)
.... availableEndTime I0..1timeClosing time of day (ignored if allDay = true)
... notAvailable I0..*BackboneElementNot available during this time due to provided reason
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!ΣI0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... description I1..1stringReason presented to the user explaining why time not available
.... during I0..1PeriodService not available from this date
... availabilityExceptions I0..1stringDescription of availability exceptions
... endpoint I0..*Reference(Endpoint)Technical endpoints providing access to electronic services operated for the healthcare service

doco Documentation for this format

Summary

Structures

This structure refers to these other structures:

Mapping Source

This structure represents the following mapping definition:

obf.HealthcareService maps to HealthcareService:
  Identifier maps to identifier
  Active maps to active
  Organization maps to providedBy
  Category maps to category
  Type maps to type
  SpecialtiesHandled maps to specialty
  Location maps to location
  Name maps to name
  CommentOrDescription maps to comment
  ExtraDetails maps to extraDetails
  PhotographicImage maps to photo
  ContactPoint maps to telecom
  CoverageArea maps to coverageArea
  ServiceProvisionCode maps to serviceProvisionCode
  Eligibility maps to eligibility
  Program maps to program
  Characteristic maps to characteristic
  Language maps to communication
  ReferralMethod maps to referralMethod
  AppointmentRequired maps to appointmentRequired
  AvailableTime maps to availableTime
  NotAvailable maps to notAvailable
  AvailabilityExceptions maps to availabilityExceptions
  Endpoint maps to endpoint

Differential View

NameFlagsCard.TypeDescription & Constraintsdoco
.. HealthcareService HealthcareServiceHealthcare Service
... category Binding: ServiceCategory (required)
... type Binding: ServiceType (required)
... specialty Binding: PracticeSettingCodeValueSet (required)
... serviceProvisionCode Binding: ServiceProvisionConditions (required)
... program Binding: Program (required)
... referralMethod Binding: ReferralMethod (required)
... endpoint Reference(Endpoint)

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. HealthcareService I0..*HealthcareServiceHealthcare Service
... id Σ0..1stringLogical id of this artifact
... meta ΣI0..1MetaMetadata about the resource
... implicitRules ?!ΣI0..1uriA set of rules under which this content was created
... language I0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred)
Max Binding: AllLanguages
... text I0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension I0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!I0..*ExtensionExtensions that cannot be ignored
... identifier ΣI0..*IdentifierExternal identifiers for this item
... active ?!ΣI0..1booleanWhether this HealthcareService record is in active use
... providedBy ΣI0..1Reference(Organization)Organization that provides this service
... category ΣI0..*CodeableConceptBroad category of service being performed or delivered
Binding: ServiceCategory (required)
... type ΣI0..*CodeableConceptType of service that may be delivered or performed
Binding: ServiceType (required)
... specialty ΣI0..*CodeableConceptSpecialties handled by the HealthcareService
Binding: PracticeSettingCodeValueSet (required)
... location ΣI0..*Reference(Location)Location(s) where service may be provided
... name ΣI0..1stringDescription of service as presented to a consumer while searching
... comment ΣI0..1stringAdditional description and/or any specific issues not covered elsewhere
... extraDetails I0..1markdownExtra details about the service that can't be placed in the other fields
... photo ΣI0..1AttachmentFacilitates quick identification of the service
... telecom I0..*ContactPointContacts related to the healthcare service
... coverageArea I0..*Reference(Location)Location(s) service is intended for/available to
... serviceProvisionCode I0..*CodeableConceptConditions under which service is available/offered
Binding: ServiceProvisionConditions (required)
... eligibility I0..*BackboneElementSpecific eligibility requirements required to use the service
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!ΣI0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... code I0..1CodeableConceptCoded value for the eligibility
Binding: (unbound) (example)
.... comment I0..1markdownDescribes the eligibility conditions for the service
... program I0..*CodeableConceptPrograms that this service is applicable to
Binding: Program (required)
... characteristic I0..*CodeableConceptCollection of characteristics (attributes)
Binding: (unbound) (example)
... communication I0..*CodeableConceptThe language that this service is offered in
Binding: CommonLanguages (preferred)
Max Binding: AllLanguages
... referralMethod I0..*CodeableConceptWays that the service accepts referrals
Binding: ReferralMethod (required)
... appointmentRequired I0..1booleanIf an appointment is required for access to this service
... availableTime I0..*BackboneElementTimes the Service Site is available
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!ΣI0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... daysOfWeek I0..*codemon | tue | wed | thu | fri | sat | sun
Binding: DaysOfWeek (required)
.... allDay I0..1booleanAlways available? e.g. 24 hour service
.... availableStartTime I0..1timeOpening time of day (ignored if allDay = true)
.... availableEndTime I0..1timeClosing time of day (ignored if allDay = true)
... notAvailable I0..*BackboneElementNot available during this time due to provided reason
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!ΣI0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... description I1..1stringReason presented to the user explaining why time not available
.... during I0..1PeriodService not available from this date
... availabilityExceptions I0..1stringDescription of availability exceptions
... endpoint I0..*Reference(Endpoint)Technical endpoints providing access to electronic services operated for the healthcare service

doco Documentation for this format

Downloads: StructureDefinition: (XML, JSON, TTL), Schema: XML Schematron

 

Terminology Bindings

PathConformanceValueSet
HealthcareService.languagepreferredCommonLanguages
Max Binding: AllLanguages
HealthcareService.categoryrequiredServiceCategory
HealthcareService.typerequiredServiceType
HealthcareService.specialtyrequiredPracticeSettingCodeValueSet
HealthcareService.serviceProvisionCoderequiredServiceProvisionConditions
HealthcareService.eligibility.codeexample
HealthcareService.programrequiredProgram
HealthcareService.characteristicexample
HealthcareService.communicationpreferredCommonLanguages
Max Binding: AllLanguages
HealthcareService.referralMethodrequiredReferralMethod
HealthcareService.availableTime.daysOfWeekrequiredDaysOfWeek

 

Constraints

IdPathDetailsRequirements
dom-2HealthcareServiceIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3HealthcareServiceIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: 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()
dom-4HealthcareServiceIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5HealthcareServiceIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6HealthcareServiceA resource should have narrative for robust management
: text.`div`.exists()
ele-1HealthcareService.metaAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.implicitRulesAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.languageAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1HealthcareService.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1HealthcareService.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1HealthcareService.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1HealthcareService.identifierAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.activeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.providedByAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.categoryAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.typeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.specialtyAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.locationAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.nameAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.commentAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.extraDetailsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.photoAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.telecomAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.coverageAreaAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.serviceProvisionCodeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.eligibilityAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.eligibility.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1HealthcareService.eligibility.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1HealthcareService.eligibility.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1HealthcareService.eligibility.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1HealthcareService.eligibility.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.eligibility.commentAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.programAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.characteristicAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.communicationAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.referralMethodAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.appointmentRequiredAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.availableTimeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.availableTime.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1HealthcareService.availableTime.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1HealthcareService.availableTime.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1HealthcareService.availableTime.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1HealthcareService.availableTime.daysOfWeekAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.availableTime.allDayAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.availableTime.availableStartTimeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.availableTime.availableEndTimeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.notAvailableAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.notAvailable.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1HealthcareService.notAvailable.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1HealthcareService.notAvailable.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1HealthcareService.notAvailable.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1HealthcareService.notAvailable.descriptionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.notAvailable.duringAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.availabilityExceptionsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1HealthcareService.endpointAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())