<?xml version="1.0" encoding="UTF-8"?>
<!--
*******************************************************************************
Vocabulary for IHE Pharmacy extension of HL7 Clinical Document Architecture (CDA) R2 (2005)
Currently included by POCD_MT000040_extPHARM.xsd, COCT_MT230100UV_extPHARM.xsd and COCT_MT440001UV09_extPHARM.xsd

History:
2013.05.18 Tony Schaller, medshare GmbH, Switzerland (created for IHE Pharmacy extension, based on HL7 V3 Normative Edition 2010)
2018.06.16 Tony Schaller, medshare GmbH, Switzerland (Namespace update to urn:ihe:pharm and other updates according to http://www.ihe.net/uploadedFiles/Documents/Pharmacy/IHE_Pharmacy_Suppl_PRE.pdf, Appendix B1)

*******************************************************************************
-->
<xs:schema
        xmlns:hl7v3="urn:hl7-org:v3"
        xmlns:xs="http://www.w3.org/2001/XMLSchema"
        targetNamespace="urn:hl7-org:v3"
        elementFormDefault="qualified">

    <xs:include schemaLocation="../coreschemas_extPHARM/datatypes.xsd"/>
    <xs:include schemaLocation="../coreschemas_extPHARM/datatypes-base.xsd"/>

    <!-- this comes originally from infrastructureRoot.xsd of HL7 V3 Normative Edition 2010 -->
    <xs:group name="InfrastructureRootElements">
        <xs:sequence>
            <xs:element name="realmCode" type="hl7v3:CS" minOccurs="0" maxOccurs="unbounded"/>
            <xs:element name="typeId" type="hl7v3:all.InfrastructureRoot.typeId" minOccurs="0" maxOccurs="1"/>
            <xs:element name="templateId" type="hl7v3:all.InfrastructureRoot.templateId" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
    </xs:group>
    <xs:attributeGroup name="InfrastructureRootAttributes">
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
    </xs:attributeGroup>
    <xs:complexType name="all.InfrastructureRoot.typeId">
        <xs:complexContent>
            <xs:restriction base="hl7v3:II">
                <xs:attribute name="root" type="hl7v3:uid" use="required" fixed="2.16.840.1.113883.1.3"/>
                <xs:attribute name="extension" type="hl7v3:st" use="required"/>
            </xs:restriction>
        </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="all.InfrastructureRoot.templateId">
        <xs:complexContent>
            <xs:extension base="hl7v3:II">
                <xs:attribute name="unsorted" type="xs:boolean" default="false"/>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

    <!-- this comes originally from voc.xsd of HL7 V3 Normative Edition 2010 -->
    <xs:simpleType name="EntityClassPublicInstitution">
        <xs:restriction base="hl7v3:cs">
            <xs:enumeration value="PUB"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="EntityDeterminerSpecific">
        <xs:restriction base="hl7v3:cs">
            <xs:enumeration value="INSTANCE"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="ActMoodEventOccurrence">
        <xs:restriction base="hl7v3:cs">
            <xs:enumeration value="EVN"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="ParticipationAuthorOriginator">
        <xs:restriction base="hl7v3:cs">
            <xs:enumeration value="AUT"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="RoleClassContent">
        <xs:restriction base="hl7v3:cs">
            <xs:enumeration value="CONT"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="EntityClassState">
        <xs:restriction base="hl7v3:cs">
            <xs:enumeration value="STATE"/>
            <xs:enumeration value="NAT"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="ParticipationHolder">
        <xs:restriction base="hl7v3:cs">
            <xs:enumeration value="HLD"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="RoleClassAdministerableMaterial">
        <xs:restriction base="hl7v3:cs">
            <xs:enumeration value="ADMM"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="ActMoodGoal">
        <xs:restriction base="hl7v3:cs">
            <xs:enumeration value="GOL"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="RoleClassPart">
        <xs:restriction base="hl7v3:cs">
            <xs:enumeration value="PART"/>
            <xs:enumeration value="ACTM"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="ActMoodDefinition">
        <xs:restriction base="hl7v3:cs">
            <xs:enumeration value="DEF"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="RoleClassTerritoryOfAuthority">
        <xs:restriction base="hl7v3:cs">
            <xs:enumeration value="TERR"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="ActClassInvoiceElement">
        <xs:restriction base="hl7v3:cs">
            <xs:enumeration value="INVE"/>
        </xs:restriction>
    </xs:simpleType>
</xs:schema>