<StructureDefinition xmlns="http://hl7.org/fhir">
  <url value="https://fhir.synapxe.sg/StructureDefinition/profile-healthcareservice" />
  <name value="HealthcareService" />
  <status value="active" />
  <fhirVersion value="5.0.0" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="HealthcareService" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/HealthcareService" />
  <derivation value="constraint" />
  <differential>
    <element id="HealthcareService.identifier">
      <path value="HealthcareService.identifier" />
      <short value="An identifier intended for computation" />
      <definition value="An identifier - identifies some entity uniquely and unambiguously. Typically this is used for business identifiers." />
      <min value="1" />
      <type>
        <code value="Identifier" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-identifier" />
      </type>
    </element>
    <element id="HealthcareService.identifier.system">
      <path value="HealthcareService.identifier.system" />
      <fixedUri value="https://fhir.synapxe.sg/NamingSystem/hcsa-code" />
    </element>
    <element id="HealthcareService.providedBy">
      <path value="HealthcareService.providedBy" />
      <short value="A reference from one resource to another" />
      <definition value="A reference from one resource to another." />
      <comment value="References SHALL be a reference to an actual FHIR resource, and SHALL be resolvable (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." />
      <min value="1" />
      <type>
        <code value="Reference" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-reference-organization" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-organization" />
      </type>
    </element>
    <element id="HealthcareService.offeredIn">
      <path value="HealthcareService.offeredIn" />
      <max value="0" />
    </element>
    <element id="HealthcareService.category">
      <path value="HealthcareService.category" />
      <short value="Concept - reference to a terminology or just  text" />
      <definition value="A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text." />
      <comment value="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." />
      <type>
        <code value="CodeableConcept" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-codeableconcept" />
      </type>
    </element>
    <element id="HealthcareService.type">
      <path value="HealthcareService.type" />
      <short value="Concept - reference to a terminology or just  text" />
      <definition value="A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text." />
      <type>
        <code value="CodeableConcept" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-codeableconcept" />
      </type>
    </element>
    <element id="HealthcareService.specialty">
      <path value="HealthcareService.specialty" />
      <short value="Concept - reference to a terminology or just  text" />
      <definition value="A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text." />
      <type>
        <code value="CodeableConcept" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-codeableconcept" />
      </type>
    </element>
    <element id="HealthcareService.location">
      <path value="HealthcareService.location" />
      <max value="0" />
    </element>
    <element id="HealthcareService.name">
      <path value="HealthcareService.name" />
      <min value="1" />
    </element>
    <element id="HealthcareService.comment">
      <path value="HealthcareService.comment" />
      <max value="0" />
    </element>
    <element id="HealthcareService.extraDetails">
      <path value="HealthcareService.extraDetails" />
      <max value="0" />
    </element>
    <element id="HealthcareService.photo">
      <path value="HealthcareService.photo" />
      <max value="0" />
    </element>
    <element id="HealthcareService.contact">
      <path value="HealthcareService.contact" />
      <max value="0" />
    </element>
    <element id="HealthcareService.coverageArea">
      <path value="HealthcareService.coverageArea" />
      <max value="0" />
    </element>
    <element id="HealthcareService.serviceProvisionCode">
      <path value="HealthcareService.serviceProvisionCode" />
      <max value="0" />
    </element>
    <element id="HealthcareService.eligibility">
      <path value="HealthcareService.eligibility" />
      <max value="0" />
    </element>
    <element id="HealthcareService.program">
      <path value="HealthcareService.program" />
      <max value="0" />
    </element>
    <element id="HealthcareService.characteristic">
      <path value="HealthcareService.characteristic" />
      <max value="0" />
    </element>
    <element id="HealthcareService.communication">
      <path value="HealthcareService.communication" />
      <max value="0" />
    </element>
    <element id="HealthcareService.referralMethod">
      <path value="HealthcareService.referralMethod" />
      <max value="0" />
    </element>
    <element id="HealthcareService.appointmentRequired">
      <path value="HealthcareService.appointmentRequired" />
      <max value="0" />
    </element>
    <element id="HealthcareService.availability">
      <path value="HealthcareService.availability" />
      <max value="0" />
    </element>
  </differential>
</StructureDefinition>