<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="spark1930" />
  <meta>
    <versionId value="spark2636" />
    <lastUpdated value="2016-02-22T12:04:41.95+00:00" />
  </meta>
  <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm">
    <valueInteger value="3" />
  </extension>
  <url value="http://hl7.no/fhir/StructureDefinition/PractitionerNorway" />
  <name value="hncPractitionerNorway" />
  <status value="draft" />
  <date value="2015-09-22T20:02:49+10:00" />
  <description value="Base StructureDefinition for Practitioner Resource" />
  <requirements value="Need to track doctors, staff, locums etc. for both healthcare practitioners, funders, etc." />
  <fhirVersion value="1.0.1" />
  <mapping>
    <identity value="v2" />
    <uri value="http://hl7.org/v2" />
    <name value="HL7 v2" />
  </mapping>
  <mapping>
    <identity value="rim" />
    <uri value="http://hl7.org/v3" />
    <name value="RIM" />
  </mapping>
  <mapping>
    <identity value="servd" />
    <uri value="http://www.omg.org/spec/ServD/1.0/" />
    <name value="ServD" />
  </mapping>
  <mapping>
    <identity value="w5" />
    <uri value="http://hl7.org/fhir/w5" />
    <name value="W5 Mapping" />
  </mapping>
  <kind value="resource" />
  <constrainedType value="Practitioner" />
  <abstract value="false" />
  <base value="http://hl7.org/fhir/StructureDefinition/Practitioner" />
  <differential>
    <element>
      <path value="Practitioner" />
      <short value="A person with a  formal responsibility in the provisioning of healthcare or related services" />
      <definition value="A person who is directly or indirectly involved in the provisioning of healthcare." />
      <comments value="Note that a cab driver no longer fits the bill. You probably would be interested in the organization rather than the individual?" />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="Practitioner" />
      </type>
      <mapping>
        <identity value="v2" />
        <map value="PRD (as one example)" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="Role" />
      </mapping>
      <mapping>
        <identity value="servd" />
        <map value="Provider" />
      </mapping>
      <mapping>
        <identity value="w5" />
        <map value="administrative.individual" />
      </mapping>
    </element>
    <element>
      <path value="Practitioner.identifier" />
      <slicing>
        <rules value="openAtEnd" />
      </slicing>
      <short value="A identifier for the person as this agent" />
      <definition value="An identifier that applies to this person in this role." />
      <requirements value="Often, specific identities are assigned for the agent." />
      <min value="0" />
      <max value="*" />
      <isSummary value="true" />
    </element>
    <element>
      <path value="Practitioner.identifier" />
      <name value="HPR Number" />
      <short value="National healthcare provider register number" />
      <definition value="An identifier that applies to this person in this role." />
      <requirements value="Often, specific identities are assigned for the agent." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Identifier" />
      </type>
      <isSummary value="true" />
      <mapping>
        <identity value="v2" />
        <map value="PRD-7 (or XCN.1)" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="./id" />
      </mapping>
      <mapping>
        <identity value="servd" />
        <map value="./Identifiers" />
      </mapping>
      <mapping>
        <identity value="w5" />
        <map value="id" />
      </mapping>
    </element>
    <element>
      <path value="Practitioner.identifier.system" />
      <short value="The namespace for the identifier" />
      <definition value="Establishes the namespace in which set of possible id values is unique." />
      <requirements value="There are many sequences of identifiers.  To perform matching, we need to know what sequence we're dealing with. The system identifies a particular sequence or set of unique identifiers." />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="uri" />
      </type>
      <fixedUri value="urn:oid:2.16.578.1.12.4.1.4.4" />
      <exampleUri value="http://www.acme.com/identifiers/patient or urn:ietf:rfc:3986 if the Identifier.value itself is a full uri" />
      <isSummary value="true" />
      <mapping>
        <identity value="v2" />
        <map value="CX.4 / EI-2-4" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="II.root or Role.id.root" />
      </mapping>
      <mapping>
        <identity value="servd" />
        <map value="./IdentifierType" />
      </mapping>
    </element>
    <element>
      <path value="Practitioner.identifier.value" />
      <short value="The value that is unique" />
      <definition value="The portion of the identifier typically displayed to the user and which is unique within the context of the system." />
      <comments value="If the value is a full URI, then the system SHALL be urn:ietf:rfc:3986." />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="string" />
      </type>
      <exampleString value="123456" />
      <isSummary value="true" />
      <mapping>
        <identity value="v2" />
        <map value="CX.1 / EI.1" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)" />
      </mapping>
      <mapping>
        <identity value="servd" />
        <map value="./Value" />
      </mapping>
    </element>
    <element>
      <path value="Practitioner.identifier" />
      <name value="Rekvirent code" />
      <short value="Local identification number" />
      <definition value="An identifier that applies to this person in this role." />
      <requirements value="Often, specific identities are assigned for the agent." />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="Identifier" />
      </type>
      <isSummary value="true" />
      <mapping>
        <identity value="v2" />
        <map value="PRD-7 (or XCN.1)" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="./id" />
      </mapping>
      <mapping>
        <identity value="servd" />
        <map value="./Identifiers" />
      </mapping>
      <mapping>
        <identity value="w5" />
        <map value="id" />
      </mapping>
    </element>
    <element>
      <path value="Practitioner.identifier.system" />
      <short value="The namespace for the identifier" />
      <definition value="Establishes the namespace in which set of possible id values is unique." />
      <requirements value="There are many sequences of identifiers.  To perform matching, we need to know what sequence we're dealing with. The system identifies a particular sequence or set of unique identifiers." />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="uri" />
      </type>
      <exampleUri value="http://www.acme.com/identifiers/patient or urn:ietf:rfc:3986 if the Identifier.value itself is a full uri" />
      <isSummary value="true" />
      <mapping>
        <identity value="v2" />
        <map value="CX.4 / EI-2-4" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="II.root or Role.id.root" />
      </mapping>
      <mapping>
        <identity value="servd" />
        <map value="./IdentifierType" />
      </mapping>
    </element>
    <element>
      <path value="Practitioner.identifier.value" />
      <short value="The value that is unique" />
      <definition value="The portion of the identifier typically displayed to the user and which is unique within the context of the system." />
      <comments value="If the value is a full URI, then the system SHALL be urn:ietf:rfc:3986." />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="string" />
      </type>
      <exampleString value="123456" />
      <isSummary value="true" />
      <mapping>
        <identity value="v2" />
        <map value="CX.1 / EI.1" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)" />
      </mapping>
      <mapping>
        <identity value="servd" />
        <map value="./Value" />
      </mapping>
    </element>
    <element>
      <path value="Practitioner.identifier" />
      <name value="User ID" />
      <short value="A identifier for the person used for userid in systems. Might be same ID as rekvirentkode, but the use is different.  " />
      <definition value="An identifier that applies to this person in this role." />
      <requirements value="Often, specific identities are assigned for the agent." />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="Identifier" />
      </type>
      <isSummary value="true" />
      <mapping>
        <identity value="v2" />
        <map value="PRD-7 (or XCN.1)" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="./id" />
      </mapping>
      <mapping>
        <identity value="servd" />
        <map value="./Identifiers" />
      </mapping>
      <mapping>
        <identity value="w5" />
        <map value="id" />
      </mapping>
    </element>
    <element>
      <path value="Practitioner.identifier.system" />
      <short value="The namespace for the identifier, the system or group of systems the userid is valid for" />
      <definition value="Establishes the namespace in which set of possible id values is unique." />
      <requirements value="There are many sequences of identifiers.  To perform matching, we need to know what sequence we're dealing with. The system identifies a particular sequence or set of unique identifiers." />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="uri" />
      </type>
      <exampleUri value="http://www.acme.com/identifiers/patient or urn:ietf:rfc:3986 if the Identifier.value itself is a full uri" />
      <isSummary value="true" />
      <mapping>
        <identity value="v2" />
        <map value="CX.4 / EI-2-4" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="II.root or Role.id.root" />
      </mapping>
      <mapping>
        <identity value="servd" />
        <map value="./IdentifierType" />
      </mapping>
    </element>
    <element>
      <path value="Practitioner.active" />
      <short value="Whether this practitioner's record is in active use. False means no active practitioner roles." />
      <definition value="Whether this practitioner's record is in active use." />
      <comments value="Default is true.   If the practitioner is not in use by one organization, then it should mark the period on the PractitonerRole with an end date (even if they are active) as they may be active in another role." />
      <requirements value="Need to be able to mark a practitioner record as not to be used because it was created in error." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="boolean" />
      </type>
      <defaultValueBoolean value="true" />
      <meaningWhenMissing value="When missing the practitioner is active" />
      <isSummary value="true" />
      <mapping>
        <identity value="rim" />
        <map value="./StatusCode" />
      </mapping>
      <mapping>
        <identity value="w5" />
        <map value="status" />
      </mapping>
    </element>
    <element>
      <path value="Practitioner.telecom" />
      <short value="A contact detail for the practitioner" />
      <definition value="A contact detail for the practitioner, e.g. a telephone number or an email address." />
      <comments value="Person may have multiple ways to be contacted with different uses or applicable periods.  May need to have options for contacting the person urgently, and also to help with identification." />
      <requirements value="Need to know how to reach a practitioner." />
      <min value="0" />
      <max value="0" />
      <type>
        <code value="ContactPoint" />
      </type>
      <isSummary value="true" />
      <mapping>
        <identity value="v2" />
        <map value="PRT-15, STF-10, ROL-12" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="./telecom" />
      </mapping>
      <mapping>
        <identity value="servd" />
        <map value="./ContactPoints" />
      </mapping>
    </element>
    <element>
      <path value="Practitioner.address" />
      <short value="Where practitioner can be found/visited" />
      <definition value="The postal address where the practitioner can be found or visited or to which mail can be delivered." />
      <requirements value="Need to keep track where the practitioner can found during work or for directing mail." />
      <min value="0" />
      <max value="0" />
      <type>
        <code value="Address" />
      </type>
      <isSummary value="true" />
      <mapping>
        <identity value="v2" />
        <map value="ORC-24, STF-11, ROL-11, PRT-14" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="./addr" />
      </mapping>
      <mapping>
        <identity value="servd" />
        <map value="./Addresses" />
      </mapping>
    </element>
    <element>
      <path value="Practitioner.gender" />
      <short value="male | female | other | unknown" />
      <definition value="Administrative Gender - the gender that the person is considered to have for administration and record keeping purposes." />
      <requirements value="Needed to address the person correctly." />
      <min value="0" />
      <max value="0" />
      <type>
        <code value="code" />
      </type>
      <isSummary value="true" />
      <binding>
        <strength value="required" />
        <description value="The gender of a person used for administrative purposes." />
        <valueSetReference>
          <reference value="http://hl7.org/fhir/ValueSet/administrative-gender" />
        </valueSetReference>
      </binding>
      <mapping>
        <identity value="v2" />
        <map value="STF-5" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="./administrativeGender" />
      </mapping>
      <mapping>
        <identity value="servd" />
        <map value="./GenderCode" />
      </mapping>
    </element>
    <element>
      <path value="Practitioner.birthDate" />
      <short value="The date  on which the practitioner was born" />
      <definition value="The date of birth for the practitioner." />
      <requirements value="Needed for identification." />
      <min value="0" />
      <max value="0" />
      <type>
        <code value="date" />
      </type>
      <isSummary value="true" />
      <mapping>
        <identity value="v2" />
        <map value="STF-6" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="./birthTime" />
      </mapping>
      <mapping>
        <identity value="servd" />
        <map value="(not represented in ServD)" />
      </mapping>
    </element>
    <element>
      <path value="Practitioner.photo" />
      <short value="Image of the person" />
      <definition value="Image of the person." />
      <requirements value="Many EHR systems have the capability to capture an image of patients and personnel. Fits with newer social media usage too." />
      <min value="0" />
      <max value="0" />
      <type>
        <code value="Attachment" />
      </type>
      <mapping>
        <identity value="rim" />
        <map value="./subjectOf/ObservationEvent[code=&quot;photo&quot;]/value" />
      </mapping>
      <mapping>
        <identity value="servd" />
        <map value="./ImageURI (only supports the URI reference)" />
      </mapping>
    </element>
    <element>
      <path value="Practitioner.practitionerRole" />
      <short value="Roles/organizations the practitioner is associated with" />
      <definition value="The list of roles/organizations that the practitioner is associated with." />
      <min value="1" />
      <max value="*" />
      <type>
        <code value="BackboneElement" />
      </type>
      <mapping>
        <identity value="rim" />
        <map value=".(Role)" />
      </mapping>
    </element>
    <element>
      <path value="Practitioner.practitionerRole.extension" />
      <slicing>
        <discriminator value="url" />
        <rules value="openAtEnd" />
      </slicing>
    </element>
    <element>
      <path value="Practitioner.practitionerRole.extension" />
      <name value="PractitionerRoleIdentifier" />
      <short value="HER ID for externaly exposed practitioner roles,  REKVIRENT Code attached to teh Role for the internal" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Extension" />
      </type>
    </element>
    <element>
      <path value="Practitioner.practitionerRole.extension" />
      <name value="practitionerRoleDisplayName" />
      <short value="A concatination of practitioner name, role, and managingOrganization and userid (brukerrollebetegnelse)" />
      <type>
        <code value="Extension" />
      </type>
    </element>
    <element>
      <path value="Practitioner.practitionerRole.extension" />
      <name value="accessToOrganization" />
      <short value="Organizatitional unit patient lists the user have access  to. Might be same as managingOrganisation, but in many cases it might b more than one, and also different.   (Example personell pools and operation unit)." />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="Extension" />
        <profile value="Reference(Organization)" />
      </type>
    </element>
    <element>
      <path value="Practitioner.practitionerRole.managingOrganization" />
      <short value="Organization where the roles are formaly linked.  The organization unit where the practitioner is employed for thes role." />
      <definition value="The organization where the Practitioner performs the roles associated." />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="Reference" />
        <profile value="http://hl7.no/fhir/StructureDefinition/noOrganization" />
        <aggregation value="referenced" />
        <aggregation value="bundled" />
      </type>
      <mapping>
        <identity value="rim" />
        <map value="scopingOrganization" />
      </mapping>
    </element>
    <element>
      <path value="Practitioner.practitionerRole.role" />
      <short value="Role in the organization.  MEksample Lege, Sykepleier, rekvirent. " />
      <definition value="Roles which this practitioner is authorized to perform for the organization." />
      <comments value="A person may have more than one role. At least one role is required." />
      <requirements value="Need to know what authority the practitioner has - what can they do?" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="CodeableConcept" />
      </type>
      <isSummary value="true" />
      <binding>
        <strength value="example" />
        <description value="The role a person plays representing an organization" />
        <valueSetReference>
          <reference value="http://hl7.org/fhir/ValueSet/practitioner-role" />
        </valueSetReference>
      </binding>
      <mapping>
        <identity value="v2" />
        <map value="PRD-1 / STF-18  / PRA-3  / PRT-4  / ROL-3 / ORC-12 / OBR-16 / PV1-7 / PV1-8 / PV1-9 / PV1-17" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="./code" />
      </mapping>
      <mapping>
        <identity value="servd" />
        <map value="(ServD maps Practitioners and Organizations via another entity, so this concept is not available)" />
      </mapping>
    </element>
    <element>
      <path value="Practitioner.practitionerRole.role.coding" />
      <short value="Code defined by a terminology system" />
      <definition value="A reference to a code defined by a terminology system." />
      <comments value="Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information.  Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labelled as UserSelected = true." />
      <requirements value="Allows for translations and alternate encodings within a code system.  Also supports communication of the same instance to systems requiring different encodings." />
      <min value="0" />
      <max value="0" />
      <type>
        <code value="Coding" />
      </type>
      <isSummary value="true" />
      <mapping>
        <identity value="v2" />
        <map value="C*E.1-8, C*E.10-22" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="union(., ./translation)" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:CodeableConcept.coding rdfs:subPropertyOf dt:CD.coding" />
      </mapping>
    </element>
    <element>
      <path value="Practitioner.practitionerRole.role.text" />
      <short value="Plain text representation of the role.  The goal is to code this element, but as of now the PAS system does not have thes coded." />
      <definition value="A human language representation of the concept as seen/selected/uttered by the user who entered the data and/or which represents the intended meaning of the user." />
      <comments value="Very often the text is the same as a displayName of one of the codings." />
      <requirements value="The codes from the terminologies do not always capture the correct meaning with all the nuances of the human using them, or sometimes there is no appropriate code at all. In these cases, the text is used to capture the full meaning of the source." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="string" />
      </type>
      <isSummary value="true" />
      <mapping>
        <identity value="v2" />
        <map value="C*E.9. But note many systems use C*E.2 for this" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="./originalText[mediaType/code=&quot;text/plain&quot;]/data" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:CodeableConcept.text rdfs:subPropertyOf dt:CD.originalText" />
      </mapping>
    </element>
    <element>
      <path value="Practitioner.practitionerRole.specialty" />
      <short value="zero or more subspesialities of the role, might be prescriber type for the prescriber role, medical spesialities for doctors and so on." />
      <definition value="Specific specialty of the practitioner." />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="CodeableConcept" />
      </type>
      <isSummary value="true" />
      <binding>
        <strength value="example" />
        <description value="Specific specialty associated with the agency" />
        <valueSetReference>
          <reference value="http://hl7.org/fhir/ValueSet/practitioner-specialty" />
        </valueSetReference>
      </binding>
      <mapping>
        <identity value="v2" />
        <map value="PRA-5" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="indirectAuthority/QualifiedEntity[code &lt; Speciality]/code" />
      </mapping>
      <mapping>
        <identity value="servd" />
        <map value="./Specialty" />
      </mapping>
    </element>
    <element>
      <path value="Practitioner.practitionerRole.specialty.text" />
      <short value="Plain text representation of the speciality" />
      <definition value="A human language representation of the concept as seen/selected/uttered by the user who entered the data and/or which represents the intended meaning of the user." />
      <comments value="Very often the text is the same as a displayName of one of the codings." />
      <requirements value="The codes from the terminologies do not always capture the correct meaning with all the nuances of the human using them, or sometimes there is no appropriate code at all. In these cases, the text is used to capture the full meaning of the source." />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="string" />
      </type>
      <isSummary value="true" />
      <mapping>
        <identity value="v2" />
        <map value="C*E.9. But note many systems use C*E.2 for this" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="./originalText[mediaType/code=&quot;text/plain&quot;]/data" />
      </mapping>
      <mapping>
        <identity value="orim" />
        <map value="fhir:CodeableConcept.text rdfs:subPropertyOf dt:CD.originalText" />
      </mapping>
    </element>
    <element>
      <path value="Practitioner.practitionerRole.location" />
      <short value="The location(s) or rg at which this practitioner provides care" />
      <definition value="The location(s) at which this practitioner provides care." />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="Reference" />
        <profile value="http://hl7.org/fhir/StructureDefinition/Location" />
      </type>
      <mapping>
        <identity value="rim" />
        <map value="./target[classCode=&quot;indirectAuthority].source[classCode=SDLOC]" />
      </mapping>
      <mapping>
        <identity value="servd" />
        <map value="(ServD maps Practitioners and Organizations via another entity, so this concept is not available)&lt;br/&gt; However these are accessed via the Site.ServiceSite.ServiceSiteProvider record. (The Site has the location)" />
      </mapping>
      <mapping>
        <identity value="w5" />
        <map value="where" />
      </mapping>
    </element>
    <element>
      <path value="Practitioner.practitionerRole.healthcareService" />
      <short value="The list of healthcare services that this worker provides for this role's Organization/Location(s).  Often it is the same as the managing organization.  " />
      <definition value="The list of healthcare services that this worker provides for this role's Organization/Location(s)." />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="Reference" />
        <profile value="http://hl7.org/fhir/StructureDefinition/HealthcareService" />
      </type>
      <mapping>
        <identity value="rim" />
        <map value="./target[classCode=&quot;indirectAuthority].id?" />
      </mapping>
    </element>
    <element>
      <path value="Practitioner.qualification" />
      <short value="Qualifications obtained by training and certification" />
      <definition value="Qualifications obtained by training and certification." />
      <min value="0" />
      <max value="0" />
      <type>
        <code value="BackboneElement" />
      </type>
      <mapping>
        <identity value="v2" />
        <map value="CER?" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="./indirectAuthority/QualifiedEntity[code &lt; qualifiedEntity]" />
      </mapping>
      <mapping>
        <identity value="servd" />
        <map value="./Qualifications" />
      </mapping>
    </element>
    <element>
      <path value="Practitioner.communication" />
      <short value="A language the practitioner is able to use in patient communication" />
      <definition value="A language the practitioner is able to use in patient communication." />
      <comments value="The structure aa-BB with this exact casing is one the most widely used notations for locale. However not all systems actually code this but instead have it as free text. Hence CodeableConcept instead of code as the data type." />
      <requirements value="Knowing which language a practitioner speaks can help in facilitating communication with patients." />
      <min value="0" />
      <max value="0" />
      <type>
        <code value="CodeableConcept" />
      </type>
      <binding>
        <strength value="required" />
        <description value="A human language." />
        <valueSetUri value="http://tools.ietf.org/html/bcp47" />
      </binding>
      <mapping>
        <identity value="v2" />
        <map value="PID-15, NK1-20, LAN-2" />
      </mapping>
      <mapping>
        <identity value="rim" />
        <map value="./languageCode" />
      </mapping>
      <mapping>
        <identity value="servd" />
        <map value="./Languages.LanguageSpokenCode" />
      </mapping>
    </element>
  </differential>
</StructureDefinition>