<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="pr-practitioner" />
  <meta>
    <source value="https://www.icanbwell.com/fhir_profile_definitions" />
    <security>
      <system value="https://www.icanbwell.com/owner" />
      <code value="bwell" />
    </security>
    <security>
      <system value="https://www.icanbwell.com/access" />
      <code value="bwell" />
    </security>
  </meta>
  <url value="https://fhir.icanbwell.com/4_0_0/StructureDefinition/pr-practitioner" />
  <version value="1.1" />
  <name value="Practitioner" />
  <title value="Profile: Practitioner" />
  <status value="active" />
  <experimental value="false" />
  <date value="2023-10-19" />
  <publisher value="b.Well Connected Health" />
  <description value="A practitioner with an NPI" />
  <jurisdiction>
    <coding>
      <system value="urn:iso:std:iso:3166" />
      <code value="US" />
      <display value="United States of America" />
    </coding>
    <text value="United States of America" />
  </jurisdiction>
  <fhirVersion value="4.0.1" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="Practitioner" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Practitioner" />
  <derivation value="constraint" />
  <differential>
    <element id="Practitioner.id">
      <path value="Practitioner.id" />
      <short value="Logical id of this artifact. Usually the NPI." />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Practitioner.meta">
      <path value="Practitioner.meta" />
      <label value="meta" />
      <min value="1" />
      <type>
        <code value="Meta" />
        <profile value="https://fhir.icanbwell.com/4_0_0/StructureDefinition/de-meta" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Practitioner.meta.security">
      <path value="Practitioner.meta.security" />
    </element>
    <element id="Practitioner.meta.security:data-owner">
      <path value="Practitioner.meta.security" />
      <sliceName value="data-owner" />
      <definition value="Security labels applied to this resource. These tags connect specific resources to the overall security policy and infrastructure.&#xD;&#xA;If the Practitioner.id is an NPI, the data owner is &quot;nppes&quot;" />
    </element>
    <element id="Practitioner.identifier">
      <path value="Practitioner.identifier" />
      <label value="identifier" />
      <slicing>
        <description value="slice by types" />
        <rules value="open" />
      </slicing>
      <short value="a value to identify the resource by" />
      <min value="1" />
      <type>
        <code value="Identifier" />
        <profile value="https://fhir.icanbwell.com/4_0_0/StructureDefinition/de-identifier" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Practitioner.identifier:NPI">
      <path value="Practitioner.identifier" />
      <sliceName value="NPI" />
      <label value="NPI" />
      <short value="National Provider Identifier" />
      <definition value="National Provider Identifier as defined by NPPES" />
      <alias value="npi" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="Identifier" />
        <profile value="https://fhir.icanbwell.com/4_0_0/StructureDefinition/de-identifier" />
      </type>
      <patternIdentifier>
        <use value="official" />
        <type>
          <coding>
            <system value="http://terminology.hl7.org/CodeSystem/v2-0203" />
            <code value="NPI" />
          </coding>
        </type>
        <system value="http://hl7.org/fhir/sid/us-npi" />
      </patternIdentifier>
    </element>
    <element id="Practitioner.identifier:DEA-number">
      <path value="Practitioner.identifier" />
      <sliceName value="DEA-number" />
      <short value="DEA number" />
      <definition value="Provider's Drug Enforcement Administration license number" />
      <type>
        <code value="Identifier" />
        <profile value="https://fhir.icanbwell.com/4_0_0/StructureDefinition/de-identifier" />
      </type>
      <patternIdentifier>
        <use value="official" />
        <type>
          <coding>
            <system value="http://terminology.hl7.org/CodeSystem/v2-0203" />
            <code value="DEA" />
          </coding>
        </type>
      </patternIdentifier>
    </element>
    <element id="Practitioner.identifier:provider-id">
      <path value="Practitioner.identifier" />
      <sliceName value="provider-id" />
      <short value="An id from another source system" />
      <alias value="prn" />
      <type>
        <code value="Identifier" />
        <profile value="https://fhir.icanbwell.com/4_0_0/StructureDefinition/de-identifier" />
      </type>
      <patternIdentifier>
        <type>
          <coding>
            <system value="http://terminology.hl7.org/CodeSystem/v2-0203" />
            <code value="PRN" />
          </coding>
        </type>
      </patternIdentifier>
    </element>
    <element id="Practitioner.active">
      <path value="Practitioner.active" />
      <short value="Whether this practitioner's record is in active use, per NPPES" />
      <definition value="Whether this practitioner's record is in active use. This is only determined by NPPES." />
      <alias value="nppes-active" />
      <mustSupport value="true" />
    </element>
    <element id="Practitioner.name">
      <path value="Practitioner.name" />
      <short value="Name of the practitioner" />
      <type>
        <code value="HumanName" />
        <profile value="https://fhir.icanbwell.com/4_0_0/StructureDefinition/de-human-name" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Practitioner.name.id">
      <path value="Practitioner.name.id" />
      <comment value="Distinct per source" />
    </element>
    <element id="Practitioner.name.extension">
      <path value="Practitioner.name.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <min value="1" />
    </element>
    <element id="Practitioner.name.extension:client-tag">
      <path value="Practitioner.name.extension" />
      <sliceName value="client-tag" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://www.icanbwell.com/client" />
      </type>
      <isModifier value="false" />
    </element>
    <element id="Practitioner.name.suffix">
      <path value="Practitioner.name.suffix" />
      <alias value="credential" />
    </element>
    <element id="Practitioner.telecom">
      <path value="Practitioner.telecom" />
      <slicing>
        <description value="slice by system and use" />
        <rules value="open" />
      </slicing>
      <definition value="A contact detail for the practitioner, e.g. a telephone number or an email address. When a contact detail is specific to a practitioner's practicing location, it should be captured on the PractitionerRole." />
      <type>
        <code value="ContactPoint" />
        <profile value="https://fhir.icanbwell.com/4_0_0/StructureDefinition/de-contact-point" />
      </type>
    </element>
    <element id="Practitioner.telecom.id">
      <path value="Practitioner.telecom.id" />
      <comment value="Distinct per source" />
    </element>
    <element id="Practitioner.telecom.extension">
      <path value="Practitioner.telecom.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <min value="1" />
    </element>
    <element id="Practitioner.telecom.extension:client-tag">
      <path value="Practitioner.telecom.extension" />
      <sliceName value="client-tag" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://www.icanbwell.com/client" />
      </type>
      <isModifier value="false" />
    </element>
    <element id="Practitioner.telecom:email">
      <path value="Practitioner.telecom" />
      <sliceName value="email" />
      <requirements value="Need to know how to reach a practitioner independent to any roles the practitioner may have.&#xD;&#xA;Referenced in PSS indexes when the client tag matches: https://icanbwell.atlassian.net/wiki/spaces/HEL/pages/3490611216/Provider+Search+Service+Elastic+Search+Indexes" />
      <patternContactPoint>
        <system value="email" />
      </patternContactPoint>
    </element>
    <element id="Practitioner.telecom:email.system">
      <path value="Practitioner.telecom.system" />
      <short value="email" />
      <fixedCode value="email" />
    </element>
    <element id="Practitioner.address">
      <path value="Practitioner.address" />
      <comment value="address of the practitioner should be assocated to a Healthcare Location" />
      <max value="0" />
    </element>
    <element id="Practitioner.gender">
      <path value="Practitioner.gender" />
      <mustSupport value="true" />
    </element>
    <element id="Practitioner.birthDate">
      <path value="Practitioner.birthDate" />
      <label value="birth-date" />
      <short value="DOB of the provider" />
      <mustSupport value="true" />
    </element>
    <element id="Practitioner.photo">
      <path value="Practitioner.photo" />
      <short value="Provider headshot" />
      <alias value="headshot" />
      <type>
        <code value="Attachment" />
        <profile value="https://fhir.icanbwell.com/4_0_0/StructureDefinition/de-attachment-image" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Practitioner.photo.id">
      <path value="Practitioner.photo.id" />
      <comment value="Distinct per source" />
    </element>
    <element id="Practitioner.photo.extension">
      <path value="Practitioner.photo.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <min value="1" />
    </element>
    <element id="Practitioner.photo.extension:client-tag">
      <path value="Practitioner.photo.extension" />
      <sliceName value="client-tag" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://www.icanbwell.com/client" />
      </type>
      <isModifier value="false" />
    </element>
    <element id="Practitioner.qualification">
      <path value="Practitioner.qualification" />
      <alias value="provider title" />
      <alias value="credential" />
      <alias value="suffix" />
      <mustSupport value="true" />
    </element>
    <element id="Practitioner.qualification.id">
      <path value="Practitioner.qualification.id" />
      <definition value="set to qualification code" />
      <comment value="Distinct per source and qualification value" />
      <min value="1" />
      <type>
        <code value="string" />
      </type>
    </element>
    <element id="Practitioner.qualification.extension">
      <path value="Practitioner.qualification.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <min value="1" />
    </element>
    <element id="Practitioner.qualification.extension:client-tag">
      <path value="Practitioner.qualification.extension" />
      <sliceName value="client-tag" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://www.icanbwell.com/client" />
      </type>
      <isModifier value="false" />
    </element>
    <element id="Practitioner.qualification.code.coding">
      <path value="Practitioner.qualification.code.coding" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Practitioner.qualification.code.coding.id">
      <path value="Practitioner.qualification.code.coding.id" />
      <min value="1" />
    </element>
    <element id="Practitioner.qualification.code.coding.system">
      <path value="Practitioner.qualification.code.coding.system" />
      <min value="1" />
    </element>
    <element id="Practitioner.qualification.code.coding.code">
      <path value="Practitioner.qualification.code.coding.code" />
      <min value="1" />
    </element>
    <element id="Practitioner.qualification.period">
      <path value="Practitioner.qualification.period" />
      <comment value="period.start set to provider's medical school graduation date" />
    </element>
    <element id="Practitioner.qualification.period.start">
      <path value="Practitioner.qualification.period.start" />
      <label value="qualification" />
      <short value="Credential start date" />
      <alias value="medical school graduation date" />
      <min value="1" />
    </element>
    <element id="Practitioner.qualification.period.end">
      <path value="Practitioner.qualification.period.end" />
      <label value="qualification" />
      <short value="Termination date of the credential" />
      <min value="1" />
    </element>
    <element id="Practitioner.qualification.issuer">
      <path value="Practitioner.qualification.issuer" />
      <label value="qualification" />
      <alias value="medical school" />
    </element>
    <element id="Practitioner.communication">
      <path value="Practitioner.communication" />
      <alias value="spoken language" />
      <type>
        <code value="CodeableConcept" />
        <profile value="https://fhir.icanbwell.com/4_0_0/StructureDefinition/de-codeable-concept" />
      </type>
      <example>
        <label value="English common language code" />
        <valueCodeableConcept>
          <coding>
            <system value="urn:ietf:bcp:47" />
            <code value="en" />
          </coding>
        </valueCodeableConcept>
      </example>
      <mustSupport value="true" />
      <binding>
        <strength value="preferred" />
        <valueSet value="https://fhir.icanbwell.com/4_0_0/ValueSet/vs-languages" />
      </binding>
    </element>
    <element id="Practitioner.communication.id">
      <path value="Practitioner.communication.id" />
      <comment value="Distinct per language" />
    </element>
    <element id="Practitioner.communication.extension">
      <path value="Practitioner.communication.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <min value="0" />
    </element>
    <element id="Practitioner.communication.extension:client-tag">
      <path value="Practitioner.communication.extension" />
      <sliceName value="client-tag" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://www.icanbwell.com/client" />
      </type>
      <isModifier value="false" />
    </element>
    <element id="Practitioner.communication.coding.display">
      <path value="Practitioner.communication.coding.display" />
      <requirements value="Need to be able to carry a human-readable meaning of the code for readers that do not know  the system.&#xD;&#xA;Used by PSS indexes: https://icanbwell.atlassian.net/wiki/spaces/HEL/pages/3490611216/Provider+Search+Service+Elastic+Search+Indexes" />
    </element>
  </differential>
</StructureDefinition>