<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="spark1929" />
  <meta>
    <versionId value="spark2634" />
    <lastUpdated value="2016-02-19T12:08:00.83+00:00" />
  </meta>
  <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm">
    <valueInteger value="0" />
  </extension>
  <url value="http://hl7.org/fhir/StructureDefinition/hncHealthcareService" />
  <name value="hncHealthcareService" />
  <status value="draft" />
  <publisher value="Helse Nord" />
  <date value="2015-09-22T13:47:23+10:00" />
  <description value="Constraint on HealthcareService Resource" />
  <fhirVersion value="1.0.1" />
  <mapping>
    <identity value="rim" />
    <uri value="http://hl7.org/v3" />
    <name value="RIM" />
  </mapping>
  <mapping>
    <identity value="w5" />
    <uri value="http://hl7.org/fhir/w5" />
    <name value="W5 Mapping" />
  </mapping>
  <kind value="resource" />
  <constrainedType value="HealthcareService" />
  <abstract value="true" />
  <base value="http://hl7.org/fhir/StructureDefinition/HealthcareService" />
  <differential>
    <element>
      <path value="HealthcareService" />
      <short value="The details of a healthcare service available at a location" />
      <definition value="The details of a healthcare service available at a location." />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="DomainResource" />
      </type>
      <mapping>
        <identity value="w5" />
        <map value="administrative.group" />
      </mapping>
    </element>
    <element>
      <path value="HealthcareService.identifier" />
      <short value="External identifiers for this item" />
      <definition value="External identifiers for this item." />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="Identifier" />
      </type>
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value=".id" />
      </mapping>
      <mapping>
        <identity value="w5" />
        <map value="id" />
      </mapping>
    </element>
    <element>
      <path value="HealthcareService.providedBy" />
      <short value="Organization that provides this service" />
      <definition value="The organization that provides this healthcare service." />
      <comments value="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." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Reference" />
        <profile value="http://hl7.org/fhir/StructureDefinition/Organization" />
      </type>
      <isSummary value="true" />
    </element>
    <element>
      <path value="HealthcareService.serviceCategory" />
      <short value="Broad category of service being performed or delivered" />
      <definition value="Identifies the broad category of service being performed or delivered." />
      <comments value="Selecting a Service Category then determines the list of relevant service types that can be selected in the primary service type." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="CodeableConcept" />
      </type>
      <isSummary value="true" />
      <binding>
        <strength value="example" />
        <description value="A category of the service(s) that could be provided." />
      </binding>
      <mapping>
        <identity value="w5" />
        <map value="class" />
      </mapping>
    </element>
    <element>
      <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-explicit-type-name">
        <valueString value="ServiceType" />
      </extension>
      <path value="HealthcareService.serviceType" />
      <short value="Specific service delivered or performed" />
      <definition value="A specific type of service that may be delivered or performed." />
      <min value="0" />
      <max value="*" />
      <isSummary value="true" />
    </element>
    <element>
      <path value="HealthcareService.serviceType.type" />
      <short value="Type of service delivered or performed" />
      <definition value="The specific type of service being delivered or performed." />
      <comments value="Change to serviceType?" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="CodeableConcept" />
      </type>
      <isSummary value="true" />
      <binding>
        <strength value="preferred" />
        <description value="Additional details about where the content was created (e.g. clinical specialty)." />
        <valueSetReference>
          <reference value="http://hl7.org/fhir/ValueSet/c80-practice-codes" />
        </valueSetReference>
      </binding>
    </element>
    <element>
      <path value="HealthcareService.serviceType.specialty" />
      <short value="Specialties handled by the Service Site" />
      <definition value="Collection of specialties handled by the service site. This is more of a medical term." />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="CodeableConcept" />
      </type>
      <isSummary value="true" />
      <binding>
        <strength value="example" />
        <description value="A specialty that a healthcare service may provide." />
      </binding>
    </element>
    <element>
      <path value="HealthcareService.location" />
      <short value="Location where service may be provided" />
      <definition value="The location where this healthcare service may be provided." />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="Reference" />
        <profile value="http://hl7.org/fhir/StructureDefinition/Location" />
      </type>
      <isSummary value="true" />
      <mapping>
        <identity value="w5" />
        <map value="where" />
      </mapping>
    </element>
    <element>
      <path value="HealthcareService.serviceName" />
      <short value="Description of service as presented to a consumer while searching" />
      <definition value="Further description of the service as it would be presented to a consumer while searching." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="string" />
      </type>
      <isSummary value="true" />
    </element>
    <element>
      <path value="HealthcareService.comment" />
      <short value="Additional description and/or any specific issues not covered elsewhere" />
      <definition value="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." />
      <comments value="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." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="string" />
      </type>
      <isSummary value="true" />
    </element>
    <element>
      <path value="HealthcareService.extraDetails" />
      <short value="Extra details about the service that can't be placed in the other fields" />
      <definition value="Extra details about the service that can't be placed in the other fields." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="string" />
      </type>
    </element>
    <element>
      <path value="HealthcareService.photo" />
      <short value="Facilitates quick identification of the service" />
      <definition value="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." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Attachment" />
      </type>
      <isSummary value="true" />
    </element>
    <element>
      <path value="HealthcareService.telecom" />
      <short value="Contacts related to the healthcare service" />
      <definition value="List of contacts related to this specific healthcare service." />
      <comments value="If this is empty, then refer to the location's contacts." />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="ContactPoint" />
      </type>
    </element>
    <element>
      <path value="HealthcareService.coverageArea" />
      <short value="Location(s) service is inteded for/available to" />
      <definition value="The location(s) that this service is available to (not where the service is provided)." />
      <comments value="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=." />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="Reference" />
        <profile value="http://hl7.org/fhir/StructureDefinition/Location" />
      </type>
    </element>
    <element>
      <path value="HealthcareService.serviceProvisionCode" />
      <short value="Conditions under which service is available/offered" />
      <definition value="The code(s) that detail the conditions under which the healthcare service is available/offered." />
      <comments value="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." />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="CodeableConcept" />
      </type>
      <binding>
        <strength value="example" />
        <description value="The code(s) that detail the conditions under which the healthcare service is available/offered." />
        <valueSetReference>
          <reference value="http://hl7.org/fhir/ValueSet/service-provision-conditions" />
        </valueSetReference>
      </binding>
    </element>
    <element>
      <path value="HealthcareService.eligibility" />
      <short value="Specific eligibility requirements required to use the service" />
      <definition value="Does this service have specific eligibility requirements that need to be met in order to use the service?" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="CodeableConcept" />
      </type>
      <binding>
        <strength value="example" />
        <description value="Coded values underwhich a specific service is made available." />
      </binding>
    </element>
    <element>
      <path value="HealthcareService.eligibilityNote" />
      <short value="Describes the eligibility conditions for the service" />
      <definition value="Describes the eligibility conditions for the service." />
      <comments value="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." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="string" />
      </type>
    </element>
    <element>
      <path value="HealthcareService.programName" />
      <short value="Program Names that categorize the service" />
      <definition value="Program Names that can be used to categorize the service." />
      <comments value="Programs are often defined externally to an Organization, commonly by governments; e.g. Home and Community Care Programs, Homeless Program, …." />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="string" />
      </type>
    </element>
    <element>
      <path value="HealthcareService.characteristic" />
      <short value="Collection of characteristics (attributes)" />
      <definition value="Collection of characteristics (attributes)." />
      <comments value="These could be such things as is wheelchair accessible." />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="CodeableConcept" />
      </type>
      <binding>
        <strength value="example" />
        <description value="A custom attribute that could be provided at a service (e.g. Wheelchair accessibiliy)." />
      </binding>
    </element>
    <element>
      <path value="HealthcareService.referralMethod" />
      <short value="Ways that the service accepts referrals" />
      <definition value="Ways that the service accepts referrals, if this is not provided then it is implied that no referral is required." />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="CodeableConcept" />
      </type>
      <binding>
        <strength value="example" />
        <description value="The methods of referral can be used when referring to a specific HealthCareService resource." />
        <valueSetReference>
          <reference value="http://hl7.org/fhir/ValueSet/service-referral-method" />
        </valueSetReference>
      </binding>
    </element>
    <element>
      <path value="HealthcareService.publicKey" />
      <short value="PKI Public keys to support secure communications" />
      <definition value="The public part of the 'keys' allocated to an Organization by an accredited body to support secure exchange of data over the internet. To be provided by the Organization, where available." />
      <comments value="Note: This is a base64 encoded digital certificate." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="string" />
      </type>
    </element>
    <element>
      <path value="HealthcareService.appointmentRequired" />
      <short value="If an appointment is required for access to this service" />
      <definition value="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." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="boolean" />
      </type>
    </element>
    <element>
      <path value="HealthcareService.availableTime" />
      <short value="Times the Service Site is available" />
      <definition value="A collection of times that the Service Site is available." />
      <comments value="More detailed availability information may be provided in associated Schedule/Slot resources." />
      <min value="0" />
      <max value="*" />
    </element>
    <element>
      <path value="HealthcareService.availableTime.daysOfWeek" />
      <short value="mon | tue | wed | thu | fri | sat | sun" />
      <definition value="Indicates which days of the week are available between the start and end Times." />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="code" />
      </type>
      <binding>
        <strength value="required" />
        <description value="The days of the week." />
        <valueSetReference>
          <reference value="http://hl7.org/fhir/ValueSet/days-of-week" />
        </valueSetReference>
      </binding>
    </element>
    <element>
      <path value="HealthcareService.availableTime.allDay" />
      <short value="Always available? e.g. 24 hour service" />
      <definition value="Is this always available? (hence times are irrelevant) e.g. 24 hour service." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="boolean" />
      </type>
    </element>
    <element>
      <path value="HealthcareService.availableTime.availableStartTime" />
      <short value="Opening time of day (ignored if allDay = true)" />
      <definition value="The opening time of day. Note: If the AllDay flag is set, then this time is ignored." />
      <comments value="The timezone is expected to be for where this HealthcareService is provided at." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="time" />
      </type>
    </element>
    <element>
      <path value="HealthcareService.availableTime.availableEndTime" />
      <short value="Closing time of day (ignored if allDay = true)" />
      <definition value="The closing time of day. Note: If the AllDay flag is set, then this time is ignored." />
      <comments value="The timezone is expected to be for where this HealthcareService is provided at." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="time" />
      </type>
    </element>
    <element>
      <path value="HealthcareService.notAvailable" />
      <short value="Not available during this time due to provided reason" />
      <definition value="The HealthcareService is not available during this period of time due to the provided reason." />
      <min value="0" />
      <max value="*" />
    </element>
    <element>
      <path value="HealthcareService.notAvailable.description" />
      <short value="Reason presented to the user explaining why time not available" />
      <definition value="The reason that can be presented to the user as to why this time is not available." />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="string" />
      </type>
    </element>
    <element>
      <path value="HealthcareService.notAvailable.during" />
      <short value="Service not availablefrom this date" />
      <definition value="Service is not available (seasonally or for a public holiday) from this date." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Period" />
      </type>
    </element>
    <element>
      <path value="HealthcareService.availabilityExceptions" />
      <short value="Description of availability exceptions" />
      <definition value="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." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="string" />
      </type>
    </element>
  </differential>
</StructureDefinition>