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

History:
2012.06.00 Juergen Brandstaetter, CodeWerk Software Services and Development GmbH, Austria (COCT_MT230100UV.xsd extension based on HL7 V3 Normative Edition 2010)
2013.05.18 Tony Schaller, medshare GmbH, Switzerland (integration to CDA R2 2005 schemas)
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)
2020.07.09 Tony Schaller, medshare GmbH, Switzerland (fixed namespaces and datatypes for pharm:quantity according to https://www.ihe.net/uploadedFiles/Documents/Pharmacy/IHE_Pharmacy_Suppl_PRE.pdf)

*******************************************************************************
-->
<xs:schema
        xmlns:hl7v3="urn:hl7-org:v3"
        xmlns:pharm="urn:ihe:pharm"
        xmlns:xs="http://www.w3.org/2001/XMLSchema"
        targetNamespace="urn:ihe:pharm"
        elementFormDefault="qualified">
    <!--
    *****************************************************************************************************************
    * XML schema for message type COCT_MT230100UV.
    * Source information:
    *     Rendered by: Visio to MIF transform
    *     Rendered on:
    * Saved in XML file by RMIM Designer in Visio at 2008-05-27T23:59:18
    Flat to Serialization Transform: $Id: MIFStaticModelFlatToSerialization.xsl 8355 2009-10-07 03:16:34Z lloyd_mckenzie $
    Fix Names Transform: $Id: FixMifNames.xsl 8355 2009-10-07 03:16:34Z lloyd_mckenzie $
    Base transform: $Id: ConvertBase.xsl 8360 2009-10-26 06:00:22Z woody_beeler $
    Package Id Conversion: $Id: TransformPackageIds.xsl 8355 2009-10-07 03:16:34Z lloyd_mckenzie $
    Flat to Serialization Transform: $Id: MIFStaticModelFlatToSerialization.xsl 7375 2009-01-26 19:26:53Z wbeeler $
    *
    * Generated by XMLITS version 3.3.3
    *   MIF to XSD Transform $Id: StaticMifToXsd.xsl 8360 2009-10-26 06:00:22Z woody_beeler $
    *     Package Id Conversion: $Id: TransformPackageIds.xsl 8355 2009-10-07 03:16:34Z lloyd_mckenzie $
    *
    * Copyright (c) 2002, 2003, 2004, 2005, 2006, 2007 Health Level Seven. All rights reserved.
    *  Redistribution and use in source and binary forms, with or without
    *  modification, are permitted provided that the following conditions
    *  are met:
    *  1. Redistributions of source code must retain the above copyright
    *     notice, this list of conditions and the following disclaimer.
    *  2. Redistributions in binary form must reproduce the above copyright
    *     notice, this list of conditions and the following disclaimer in the
    *     documentation and/or other materials provided with the distribution.
    *  3. All advertising materials mentioning features or use of this software
    *     must display the following acknowledgement:
    *       This product includes software developed by Health Level Seven.
    *  THIS SOFTWARE IS PROVIDED BY HEALTH LEVEL SEVEN, INC. AND CONTRIBUTORS "AS IS" AND
    *  ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    *  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    *  ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
    *  FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    *  DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
    *  OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    *  HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    *  LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
    *  OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    *  SUCH DAMAGE.
    *
    ********************************************************************************************************************
    -->
    <xs:annotation>
        <xs:documentation>Generated using schema builder version 3.3.3. Stylesheets:
            Saved in XML file by RMIM Designer in Visio at 2008-05-27T23:59:18
            Flat to Serialization Transform: $Id: MIFStaticModelFlatToSerialization.xsl 8355 2009-10-07 03:16:34Z lloyd_mckenzie $
            Fix Names Transform: $Id: FixMifNames.xsl 8355 2009-10-07 03:16:34Z lloyd_mckenzie $
            Base transform: $Id: ConvertBase.xsl 8360 2009-10-26 06:00:22Z woody_beeler $
            Package Id Conversion: $Id: TransformPackageIds.xsl 8355 2009-10-07 03:16:34Z lloyd_mckenzie $
            Flat to Serialization Transform: $Id: MIFStaticModelFlatToSerialization.xsl 7375 2009-01-26 19:26:53Z wbeeler $
            StaticMifToXsd.xsl version 2.0</xs:documentation>
    </xs:annotation>

    <xs:import namespace="urn:hl7-org:v3" schemaLocation="../extPHARM/hl7v3_extPHARM.xsd"/>
    <xs:import namespace="urn:hl7-org:v3" schemaLocation="../coreschemas_extPHARM/datatypes-base.xsd"/>
    <xs:include schemaLocation="../extPHARM/COCT_MT440001UV09_extPHARM.xsd"/>

    <xs:element name="subjectOf1" type="pharm:COCT_MT230100UV.Subject2" nillable="true"/>
    <xs:element name="subjectOf2" type="pharm:COCT_MT230100UV.Subject1" nillable="true"/>
    <xs:element name="subjectOf3" type="pharm:COCT_MT230100UV.Subject22" nillable="true"/>
    <xs:element name="subjectOf4" type="pharm:COCT_MT230100UV.Subject3" nillable="true"/>
    <xs:element name="subjectOf5" type="pharm:COCT_MT230100UV.Subject7" nillable="true"/>
    <xs:element name="id" type="hl7v3:II"/>
    <xs:element name="desc" type="hl7v3:ED"/>
    <xs:element name="riskCode" type="hl7v3:CE"/>
    <xs:element name="handlingCode" type="hl7v3:CE"/>
    <xs:element name="formCode" type="hl7v3:CE"/>
    <xs:element name="expirationTime" type="hl7v3:IVL_TS"/>
    <xs:element name="stabilityTime" type="hl7v3:IVL_TS"/>
    <xs:element name="asDistributedProduct" type="pharm:COCT_MT230100UV.DistributedProduct" nillable="true"/>
    <xs:element name="asMedicineManufacturer" type="pharm:COCT_MT230100UV.MedicineManufacturer" nillable="true"/>
    <xs:element name="asContent" type="pharm:COCT_MT230100UV.Content" nillable="true"/>
    <xs:element name="asSpecializedKind" type="pharm:COCT_MT230100UV.SpecializedKind" nillable="true"/>
    <xs:element name="part" type="pharm:COCT_MT230100UV.Part" nillable="true"/>
    <xs:element name="ingredient" type="pharm:COCT_MT230100UV.Ingredient" nillable="true"/>
    <xs:element name="medication" type="pharm:COCT_MT230100UV.Medication"/>
    <xs:complexType name="COCT_MT230100UV.Agency">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="id" type="hl7v3:II" minOccurs="0" maxOccurs="1"/>
            <xs:element name="name" type="hl7v3:ON" minOccurs="0" maxOccurs="1"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="classCode" type="hl7v3:EntityClassPublicInstitution" use="required"/>
        <xs:attribute name="determinerCode" type="hl7v3:EntityDeterminerSpecific" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.Approval">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="id" type="hl7v3:II" minOccurs="1" maxOccurs="1"/>
            <xs:element name="code" type="hl7v3:CD" minOccurs="0" maxOccurs="1"/>
            <xs:element name="statusCode" type="hl7v3:CS" minOccurs="0" maxOccurs="1"/>
            <xs:element name="holder" type="pharm:COCT_MT230100UV.Holder" nillable="true" minOccurs="0"
                        maxOccurs="1"/>
            <xs:element name="author" type="pharm:COCT_MT230100UV.Author" minOccurs="1" maxOccurs="1"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="classCode" type="hl7v3:ActClassContract" use="required"/>
        <xs:attribute name="moodCode" type="hl7v3:ActMoodEventOccurrence" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.Author">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="time" type="hl7v3:TS" minOccurs="0" maxOccurs="1"/>
            <xs:element name="territorialAuthority" type="pharm:COCT_MT230100UV.TerritorialAuthority"
                        minOccurs="1"
                        maxOccurs="1"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="typeCode" type="hl7v3:ParticipationAuthorOriginator" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.Characteristic">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="code" type="hl7v3:CE" minOccurs="1" maxOccurs="1"/>
            <xs:element name="text" type="hl7v3:ED" minOccurs="0" maxOccurs="1"/>
            <xs:element name="value" type="hl7v3:ANY" minOccurs="0" maxOccurs="1"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="classCode" type="hl7v3:ActClassObservation" use="required"/>
        <xs:attribute name="moodCode" type="hl7v3:ActMoodEventOccurrence" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.Content">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="quantity" type="hl7v3:RTO_PQ_PQ" minOccurs="0" maxOccurs="1"/>
            <xs:element name="containerPackagedMedicine" type="pharm:COCT_MT230100UV.PackagedMedicine"
                        minOccurs="1"
                        maxOccurs="1"/>
            <xs:element name="subjectOf1" type="pharm:COCT_MT230100UV.Subject14" nillable="true"
                        minOccurs="0"
                        maxOccurs="unbounded"/>
            <xs:element name="subjectOf2" type="pharm:COCT_MT230100UV.Subject11" nillable="true"
                        minOccurs="0"
                        maxOccurs="unbounded"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="classCode" type="hl7v3:RoleClassContent" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.Country">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="code" type="hl7v3:CD" minOccurs="1" maxOccurs="1"/>
            <xs:element name="name" type="hl7v3:TN" minOccurs="0" maxOccurs="1"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="classCode" type="hl7v3:EntityClassState" use="required"/>
        <xs:attribute name="determinerCode" type="hl7v3:EntityDeterminerSpecific" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.DistributedProduct">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="distributingManufacturer" type="pharm:COCT_MT230100UV.Manufacturer"
                        minOccurs="1"
                        maxOccurs="1"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="classCode" type="hl7v3:RoleClassDistributedMaterial" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.Holder">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="role" type="pharm:COCT_MT230100UV.Role" nillable="true" minOccurs="1"
                        maxOccurs="1"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="typeCode" type="hl7v3:ParticipationHolder" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.Ingredient">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="quantity" type="hl7v3:RTO_PQ_PQ" minOccurs="0" maxOccurs="1"/>
            <xs:element name="ingredient" type="pharm:COCT_MT230100UV.Substance" nillable="true"
                        minOccurs="0"
                        maxOccurs="1"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="classCode" type="hl7v3:RoleClassIngredientEntity" use="required"/>
        <xs:attribute name="negationInd" type="hl7v3:bl" use="optional" default="false"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.ManufacturedProduct">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="manufacturer" type="pharm:COCT_MT230100UV.Manufacturer" minOccurs="1"
                        maxOccurs="1"/>
            <xs:element name="subjectOf1" type="pharm:COCT_MT230100UV.Subject25" nillable="true"
                        minOccurs="0"
                        maxOccurs="unbounded"/>
            <xs:element name="subjectOf2" type="pharm:COCT_MT230100UV.Subject15" nillable="true"
                        minOccurs="0"
                        maxOccurs="unbounded"/>
            <xs:element name="subjectOf3" type="pharm:COCT_MT230100UV.Subject16" nillable="true"
                        minOccurs="0"
                        maxOccurs="unbounded"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="classCode" type="hl7v3:RoleClassManufacturedProduct" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.Manufacturer">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="id" type="hl7v3:II" minOccurs="0" maxOccurs="1"/>
            <xs:element name="name" type="hl7v3:EN" minOccurs="0" maxOccurs="1"/>
            <xs:element name="telecom" type="hl7v3:TEL" minOccurs="0" maxOccurs="1"/>
            <xs:element name="addr" type="hl7v3:AD" minOccurs="0" maxOccurs="1"/>
            <xs:element name="asRelatedManufacturer" type="pharm:COCT_MT230100UV.RelatedManufacturer"
                        nillable="true"
                        minOccurs="0"
                        maxOccurs="unbounded"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="classCode" type="hl7v3:EntityClassOrganization" use="required"/>
        <xs:attribute name="determinerCode" type="hl7v3:EntityDeterminerSpecific" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.Medication">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="administerableMedicine" type="pharm:COCT_MT230100UV.Medicine" minOccurs="1"
                        maxOccurs="1"/>
            <xs:element name="subjectOf1" type="pharm:COCT_MT230100UV.Subject2" nillable="true" minOccurs="0"
                        maxOccurs="unbounded"/>
            <xs:element name="subjectOf2" type="pharm:COCT_MT230100UV.Subject1" nillable="true" minOccurs="0"
                        maxOccurs="unbounded"/>
            <xs:element name="subjectOf3" type="pharm:COCT_MT230100UV.Subject22" nillable="true"
                        minOccurs="0"
                        maxOccurs="unbounded"/>
            <xs:element name="subjectOf4" type="pharm:COCT_MT230100UV.Subject3" nillable="true" minOccurs="0"
                        maxOccurs="unbounded"/>
            <xs:element name="subjectOf5" type="pharm:COCT_MT230100UV.Subject7" nillable="true" minOccurs="0"
                        maxOccurs="1"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="classCode" type="hl7v3:RoleClassAdministerableMaterial" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.Medicine">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="id" type="hl7v3:II" minOccurs="0" maxOccurs="1"/>
            <xs:element name="code" type="hl7v3:CE" minOccurs="0" maxOccurs="1"/>
            <xs:element name="name" type="hl7v3:TN" minOccurs="0" maxOccurs="unbounded"/>
            <xs:element name="desc" type="hl7v3:ED" minOccurs="0" maxOccurs="1"/>
            <xs:element name="riskCode" type="hl7v3:CE" minOccurs="0" maxOccurs="1"/>
            <xs:element name="handlingCode" type="hl7v3:CE" minOccurs="0" maxOccurs="1"/>
            <xs:element name="formCode" type="hl7v3:CE" minOccurs="0" maxOccurs="1"/>
            <xs:element name="lotNumberText" type="hl7v3:ST" minOccurs="0" maxOccurs="1"/>
            <xs:element name="expirationTime" type="hl7v3:IVL_TS" minOccurs="0" maxOccurs="1"/>
            <xs:element name="stabilityTime" type="hl7v3:IVL_TS" minOccurs="0" maxOccurs="1"/>
            <xs:element name="asDistributedProduct" type="pharm:COCT_MT230100UV.DistributedProduct"
                        nillable="true"
                        minOccurs="0"
                        maxOccurs="unbounded"/>
            <xs:element name="asMedicineManufacturer" type="pharm:COCT_MT230100UV.MedicineManufacturer"
                        nillable="true"
                        minOccurs="0"
                        maxOccurs="unbounded"/>
            <xs:element name="asContent" type="pharm:COCT_MT230100UV.Content" nillable="true" minOccurs="0"
                        maxOccurs="1"/>
            <xs:element name="asSpecializedKind" type="pharm:COCT_MT230100UV.SpecializedKind" nillable="true"
                        minOccurs="0"
                        maxOccurs="unbounded"/>
            <xs:element name="part" type="pharm:COCT_MT230100UV.Part" nillable="true" minOccurs="0"
                        maxOccurs="unbounded"/>
            <xs:element name="ingredient" type="pharm:COCT_MT230100UV.Ingredient" nillable="true"
                        minOccurs="0"
                        maxOccurs="unbounded"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="classCode" type="hl7v3:EntityClassManufacturedMaterial" use="required"/>
        <xs:attribute name="determinerCode" type="hl7v3:EntityDeterminer" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.MedicineClass">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="code" type="hl7v3:CE" minOccurs="1" maxOccurs="1"/>
            <xs:element name="name" type="hl7v3:TN" minOccurs="0" maxOccurs="unbounded"/>
            <xs:element name="desc" type="hl7v3:ED" minOccurs="0" maxOccurs="1"/>
            <xs:element name="formCode" type="hl7v3:CE" minOccurs="0" maxOccurs="1"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="classCode" type="hl7v3:EntityClassManufacturedMaterial" use="required"/>
        <xs:attribute name="determinerCode" type="hl7v3:EntityDeterminer" use="optional" fixed="KIND"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.MedicineManufacturer">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="manufacturer" type="pharm:COCT_MT230100UV.Manufacturer" nillable="true"
                        minOccurs="1"
                        maxOccurs="1"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="classCode" type="hl7v3:RoleClassManufacturedProduct" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.ObservationGoal">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="code" type="hl7v3:CD" minOccurs="0" maxOccurs="1"/>
            <xs:element name="text" type="hl7v3:ED" minOccurs="0" maxOccurs="1"/>
            <xs:element name="value" type="hl7v3:ANY" minOccurs="0" maxOccurs="1"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="classCode" type="hl7v3:ActClassObservation" use="required"/>
        <xs:attribute name="moodCode" type="hl7v3:ActMoodGoal" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.PackagedMedicine">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="id" type="hl7v3:II" minOccurs="0" maxOccurs="1"/>
            <xs:element name="code" type="hl7v3:CE" minOccurs="0" maxOccurs="1"/>
            <xs:element name="name" type="hl7v3:TN" minOccurs="0" maxOccurs="unbounded"/>
            <xs:element name="formCode" type="hl7v3:CE" minOccurs="0" maxOccurs="1"/>
            <xs:element name="lotNumberText" type="hl7v3:ST" minOccurs="0" maxOccurs="1"/>
            <xs:element name="capacityQuantity" type="hl7v3:PQ" minOccurs="0" maxOccurs="1"/>
            <xs:element name="capTypeCode" type="hl7v3:CE" minOccurs="0" maxOccurs="1"/>
            <xs:element name="asManufacturedProduct" type="pharm:COCT_MT230100UV.ManufacturedProduct"
                        nillable="true"
                        minOccurs="0"
                        maxOccurs="unbounded"/>
            <xs:element name="asSuperContent" type="pharm:COCT_MT230100UV.SuperContent" nillable="true"
                        minOccurs="0"
                        maxOccurs="1"/>
            <xs:element name="subContent" type="pharm:COCT_MT230100UV.SubContent" nillable="true"
                        minOccurs="0"
                        maxOccurs="1"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="classCode" type="hl7v3:EntityClassContainer" use="required"/>
        <xs:attribute name="determinerCode" type="hl7v3:EntityDeterminer" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.Part">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="quantity" type="hl7v3:RTO_PQ_PQ" minOccurs="0" maxOccurs="1"/>
            <xs:element name="partMedicine" type="pharm:COCT_MT230100UV.Medicine" minOccurs="1" maxOccurs="1"/>
            <xs:element name="subjectOf" type="pharm:COCT_MT230100UV.Subject4" nillable="true" minOccurs="0"
                        maxOccurs="unbounded"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="classCode" type="hl7v3:RoleClassPart" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.Policy">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="code" type="hl7v3:CD" minOccurs="0" maxOccurs="1"/>
            <xs:element name="text" type="hl7v3:ED" minOccurs="0" maxOccurs="1"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="classCode" type="hl7v3:ActClassRoot" use="required"/>
        <xs:attribute name="moodCode" type="hl7v3:ActMoodDefinition" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.RelatedManufacturer">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="id" type="hl7v3:II" minOccurs="0" maxOccurs="unbounded"/>
            <xs:element name="representedManufacturer" type="pharm:COCT_MT230100UV.Manufacturer"
                        nillable="true"
                        minOccurs="0"
                        maxOccurs="1"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="classCode" type="hl7v3:RoleClassAssignedEntity" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.Role">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="playingManufacturer" type="pharm:COCT_MT230100UV.Manufacturer" minOccurs="1"
                        maxOccurs="1"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="classCode" type="hl7v3:RoleClassRoot" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.SpecializedKind">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="code" type="hl7v3:CE" minOccurs="0" maxOccurs="1"/>
            <xs:element name="generalizedMedicineClass" type="pharm:COCT_MT230100UV.MedicineClass"
                        nillable="true"
                        minOccurs="0"
                        maxOccurs="1"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="classCode" type="hl7v3:RoleClassIsSpeciesEntity" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.SubContent">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="quantity" type="hl7v3:RTO_PQ_PQ" minOccurs="0" maxOccurs="1"/>
            <xs:element name="containedPackagedMedicine" type="pharm:COCT_MT230100UV.PackagedMedicine"
                        nillable="true"
                        minOccurs="0"
                        maxOccurs="1"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="classCode" type="hl7v3:RoleClassContent" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.SubIngredient">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="quantity" type="hl7v3:RTO_PQ_PQ" minOccurs="0" maxOccurs="1"/>
            <xs:element name="ingredient" type="pharm:COCT_MT230100UV.Substance" nillable="true"
                        minOccurs="0"
                        maxOccurs="1"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="classCode" type="hl7v3:RoleClassIngredientEntity" use="required"/>
        <xs:attribute name="negationInd" type="hl7v3:bl" use="optional" default="false"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.Subject1">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="approval" type="pharm:COCT_MT230100UV.Approval" nillable="true" minOccurs="1"
                        maxOccurs="1"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="typeCode" type="hl7v3:ParticipationTargetSubject" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.Subject11">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="approval" type="pharm:COCT_MT230100UV.Approval" nillable="true" minOccurs="1"
                        maxOccurs="1"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="typeCode" type="hl7v3:ParticipationTargetSubject" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.Subject14">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="policy" type="pharm:COCT_MT230100UV.Policy" nillable="true" minOccurs="1"
                        maxOccurs="1"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="typeCode" type="hl7v3:ParticipationTargetSubject" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.Subject15">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="policy" type="pharm:COCT_MT230100UV.Policy" nillable="true" minOccurs="1"
                        maxOccurs="1"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="typeCode" type="hl7v3:ParticipationTargetSubject" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.Subject16">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="approval" type="pharm:COCT_MT230100UV.Approval" nillable="true" minOccurs="1"
                        maxOccurs="1"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="typeCode" type="hl7v3:ParticipationTargetSubject" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.Subject2">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="policy" type="pharm:COCT_MT230100UV.Policy" nillable="true" minOccurs="1"
                        maxOccurs="1"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="typeCode" type="hl7v3:ParticipationTargetSubject" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.Subject22">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="characteristic" type="pharm:COCT_MT230100UV.Characteristic" nillable="true"
                        minOccurs="1"
                        maxOccurs="1"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="typeCode" type="hl7v3:ParticipationTargetSubject" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.Subject25">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="characteristic" type="pharm:COCT_MT230100UV.Characteristic" nillable="true"
                        minOccurs="1"
                        maxOccurs="1"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="typeCode" type="hl7v3:ParticipationTargetSubject" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.Subject3">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="observationGoal" type="pharm:COCT_MT230100UV.ObservationGoal" nillable="true"
                        minOccurs="1"
                        maxOccurs="1"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="typeCode" type="hl7v3:ParticipationTargetSubject" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.Subject4">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="characteristic" type="pharm:COCT_MT230100UV.Characteristic" nillable="true"
                        minOccurs="1"
                        maxOccurs="1"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="typeCode" type="hl7v3:ParticipationTargetSubject" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.Subject7">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="valuedItem" type="pharm:COCT_MT440001UV09.ValuedItem" nillable="true"
                        minOccurs="1"
                        maxOccurs="1"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="typeCode" type="hl7v3:ParticipationType" use="optional" fixed="SBJ"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.Substance">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="code" type="hl7v3:CE" minOccurs="0" maxOccurs="1"/>
            <xs:element name="name" type="hl7v3:TN" minOccurs="0" maxOccurs="unbounded"/>
            <xs:element name="desc" type="hl7v3:ED" minOccurs="0" maxOccurs="1"/>
            <xs:element name="lotNumberText" type="hl7v3:ST" minOccurs="0" maxOccurs="1"/>
            <xs:element name="asSubstanceManufacturer" type="pharm:COCT_MT230100UV.SubstanceManufacturer"
                        nillable="true"
                        minOccurs="0"
                        maxOccurs="unbounded"/>
            <xs:element name="subIngredient" type="pharm:COCT_MT230100UV.SubIngredient" nillable="true"
                        minOccurs="0"
                        maxOccurs="unbounded"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="classCode" type="hl7v3:EntityClassManufacturedMaterial" use="required"/>
        <xs:attribute name="determinerCode" type="hl7v3:EntityDeterminer" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.SubstanceManufacturer">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="manufacturer" type="pharm:COCT_MT230100UV.Manufacturer" nillable="true"
                        minOccurs="1"
                        maxOccurs="1"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="classCode" type="hl7v3:RoleClassManufacturedProduct" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.SuperContent">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="quantity" type="hl7v3:RTO_PQ_PQ" minOccurs="0" maxOccurs="1"/>
            <xs:element name="containerPackagedMedicine" type="pharm:COCT_MT230100UV.PackagedMedicine"
                        minOccurs="1"
                        maxOccurs="1"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="nullFlavor" type="hl7v3:NullFlavor" use="optional"/>
        <xs:attribute name="classCode" type="hl7v3:RoleClassContent" use="required"/>
    </xs:complexType>
    <xs:complexType name="COCT_MT230100UV.TerritorialAuthority">
        <xs:sequence>
            <xs:group ref="hl7v3:InfrastructureRootElements"/>
            <xs:element name="territory" type="pharm:COCT_MT230100UV.Agency" nillable="true" minOccurs="0"
                        maxOccurs="1"/>
            <xs:element name="governingCountry" type="pharm:COCT_MT230100UV.Country" nillable="true"
                        minOccurs="0"
                        maxOccurs="1"/>
        </xs:sequence>
        <!-- <xs:attributeGroup ref="hl7v3:InfrastructureRootAttributes"/> -->
        <xs:attribute name="classCode" type="hl7v3:RoleClassTerritoryOfAuthority" use="required"/>
    </xs:complexType>
</xs:schema>