<?xml version="1.0" encoding="ASCII"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="urn:hl7-org:v3"
           xmlns:mif="urn:hl7-org:v3/mif"
           targetNamespace="urn:hl7-org:v3"
           elementFormDefault="qualified"><!--
*****************************************************************************************************************
* XML schema for message type PORP_MT050032UV.
* Source information:
*     Rendered by: RoseTree 3.0.23
*     Rendered on: 
* HMD was rendered into XML using software provided to HL7 by Beeler Consulting LLC.
 HMD to MIF Transform: $Id: RoseTreeHmdToMIFStaticModel.xsl,v 1.1 2006/05/23 23:05:37 wbeeler Exp $
  Base transform: $Id: ConvertBase.xsl,v 1.1 2006/05/23 23:05:37 wbeeler Exp $
  Package Id Conversion: $Id: TransformPackageIds.xsl,v 1.1 2006/05/23 23:05:37 wbeeler Exp $
  HTML To MIF markup: $Id: HtmlToMIFMarkup.xsl,v 1.1 2006/05/23 23:05:37 wbeeler Exp $
 Flat to Serialization Transform: $Id: MIFStaticModelFlatToSerialization.xsl,v 1.1 2006/05/23 23:05:37 wbeeler Exp $
 Fix Names Transform: $Id: FixMifNames.xsl,v 1.1 2006/05/23 23:05:37 wbeeler Exp $
  Base transform: $Id: ConvertBase.xsl,v 1.1 2006/05/23 23:05:37 wbeeler Exp $
  Package Id Conversion: $Id: TransformPackageIds.xsl,v 1.1 2006/05/23 23:05:37 wbeeler Exp $
*
* Generated by XMLITS version 2.0
*   MIF to XSD Transform $Id: StaticMifToXsd.xsl,v 1.1 2006/05/23 23:05:37 wbeeler Exp $
*     Package Id Conversion: $Id: TransformPackageIds.xsl,v 1.1 2006/05/23 23:05:37 wbeeler Exp $
*
* Copyright (c) 2002, 2003, 2004, 2005 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 2.0. Stylesheets:
HMD was rendered into XML using software provided to HL7 by Beeler Consulting LLC.
 HMD to MIF Transform: $Id: RoseTreeHmdToMIFStaticModel.xsl,v 1.1 2006/05/23 23:05:37 wbeeler Exp $
  Base transform: $Id: ConvertBase.xsl,v 1.1 2006/05/23 23:05:37 wbeeler Exp $
  Package Id Conversion: $Id: TransformPackageIds.xsl,v 1.1 2006/05/23 23:05:37 wbeeler Exp $
  HTML To MIF markup: $Id: HtmlToMIFMarkup.xsl,v 1.1 2006/05/23 23:05:37 wbeeler Exp $
 Flat to Serialization Transform: $Id: MIFStaticModelFlatToSerialization.xsl,v 1.1 2006/05/23 23:05:37 wbeeler Exp $
 Fix Names Transform: $Id: FixMifNames.xsl,v 1.1 2006/05/23 23:05:37 wbeeler Exp $
  Base transform: $Id: ConvertBase.xsl,v 1.1 2006/05/23 23:05:37 wbeeler Exp $
  Package Id Conversion: $Id: TransformPackageIds.xsl,v 1.1 2006/05/23 23:05:37 wbeeler Exp $
StaticMifToXsd.xsl version 2.0</xs:documentation>
      <xs:appinfo>
         <mif:serializedStaticModel representationKind="serialized" isSerializable="true" packageKind="id"
                                    name="050032">
            <mif:packageLocation root="DEFN" section="HM" subSection="PO" domain="RP" artifact="MT-deprecated"
                                 realm="UV"/>
            <mif:header>
               <mif:renderingInformation schemaVersion="1" application="RoseTree 3.0.23">
                  <mif:renderingNotes>HMD was rendered into XML using software provided to HL7 by Beeler Consulting LLC.
 HMD to MIF Transform: $Id: RoseTreeHmdToMIFStaticModel.xsl,v 1.1 2006/05/23 23:05:37 wbeeler Exp $
  Base transform: $Id: ConvertBase.xsl,v 1.1 2006/05/23 23:05:37 wbeeler Exp $
  Package Id Conversion: $Id: TransformPackageIds.xsl,v 1.1 2006/05/23 23:05:37 wbeeler Exp $
  HTML To MIF markup: $Id: HtmlToMIFMarkup.xsl,v 1.1 2006/05/23 23:05:37 wbeeler Exp $
 Flat to Serialization Transform: $Id: MIFStaticModelFlatToSerialization.xsl,v 1.1 2006/05/23 23:05:37 wbeeler Exp $
 Fix Names Transform: $Id: FixMifNames.xsl,v 1.1 2006/05/23 23:05:37 wbeeler Exp $
  Base transform: $Id: ConvertBase.xsl,v 1.1 2006/05/23 23:05:37 wbeeler Exp $
  Package Id Conversion: $Id: TransformPackageIds.xsl,v 1.1 2006/05/23 23:05:37 wbeeler Exp $</mif:renderingNotes>
               </mif:renderingInformation>
               <mif:legalese copyrightOwner="Health Level Seven, Inc." copyrightYears="2008">
                  <mif:notation>All rights reserved.</mif:notation>
               </mif:legalese>
            </mif:header>
            <mif:derivationSupplier staticModelDerivationId="1">
               <mif:targetStaticModel root="DEFN" artifact="RIM" version="00"/>
            </mif:derivationSupplier>
            <mif:derivationSupplier staticModelDerivationId="2">
               <mif:targetStaticModel root="DEFN" section="HM" subSection="PO" domain="RP" artifact="RM-deprecated"
                                      realm="UV"
                                      id="050032"/>
            </mif:derivationSupplier>
            <mif:derivationSupplier staticModelDerivationId="3">
               <mif:targetStaticModel root="DEFN" section="HM" subSection="PO" domain="RP" artifact="HD-deprecated"
                                      realm="UV"
                                      id="050032"/>
            </mif:derivationSupplier>
            <mif:ownedEntryPoint useKind="SemanticPayload">
               <mif:annotations>
                  <mif:description>
                     <mif:text>
                        <mif:p>Description: Used for documents of medication information, also called prescribing information, package inserts, drug label, etc.</mif:p>
                     </mif:text>
                  </mif:description>
               </mif:annotations>
               <mif:specializedClass>
                  <mif:reference name="Document"/>
               </mif:specializedClass>
            </mif:ownedEntryPoint>
         </mif:serializedStaticModel>
      </xs:appinfo>
   </xs:annotation>
   <xs:include schemaLocation="infrastructureRoot.xsd"/>
   <xs:include schemaLocation="NarrativeBlock.xsd"/>
   <xs:element name="document" type="PORP_MT050032UV.Document"/>
   <xs:simpleType name="ActClassPolicy">
      <xs:restriction base="cs">
         <xs:enumeration value="MPROT"/>
         <xs:enumeration value="DEADrugSchedule"/>
      </xs:restriction>
   </xs:simpleType>
   <xs:simpleType name="ActRelationshipReason_fixed">
      <xs:restriction base="cs">
         <xs:enumeration value="RSON"/>
         <xs:enumeration value="TREAT"/>
         <xs:enumeration value="PRYLX"/>
         <xs:enumeration value="DIAG"/>
      </xs:restriction>
   </xs:simpleType>
   <xs:simpleType name="RoleClassIngredientEntity_fixed">
      <xs:union memberTypes="RoleClassIngredientEntity">
         <xs:simpleType>
            <xs:restriction base="cs">
               <xs:enumeration value="ACTIM"/>
               <xs:enumeration value="ACTIB"/>
               <xs:enumeration value="ACTIR"/>
            </xs:restriction>
         </xs:simpleType>
      </xs:union>
   </xs:simpleType>
   <xs:simpleType name="RoleClassOntological_fixed">
      <xs:union memberTypes="RoleClassOntological">
         <xs:simpleType>
            <xs:restriction base="cs">
               <xs:enumeration value="EQUIV"/>
            </xs:restriction>
         </xs:simpleType>
      </xs:union>
   </xs:simpleType>
   <xs:simpleType name="y_ActRelationshipDocument">
      <xs:restriction base="cs">
         <xs:enumeration value="APND"/>
         <xs:enumeration value="RPLC"/>
         <xs:enumeration value="XFRM"/>
         <xs:enumeration value="XCRPT"/>
         <xs:enumeration value="DRIV"/>
      </xs:restriction>
   </xs:simpleType>
   <xs:complexType name="PORP_MT050032UV.ActCriterion">
      <xs:annotation>
         <xs:documentation>The ActCriterion is a general criterion to give a procedure code or a code of any other clinical service that would be used to limit either positively or negatively the indication of the drug.</xs:documentation>
         <xs:appinfo>
            <mif:class name="ActCriterion" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="ActCriterion"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="ActCriterion"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="id" type="II" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="id" sortKey="3" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ActCriterion" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ActCriterion" attributeName="id"/>
                     <mif:type name="II"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="code" type="CD" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="code" sortKey="4" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ActCriterion" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ActCriterion" attributeName="code"/>
                     <mif:type name="CD"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="ActCode"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="text" type="ST" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="text" sortKey="6" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="text"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ActCriterion" attributeName="text"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ActCriterion" attributeName="text"/>
                     <mif:type name="ST"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="ActClassRoot" use="optional" default="ACT"/>
      <xs:attribute name="moodCode" type="ActMood" use="optional" fixed="EVN.CRT"/>
      <xs:attribute name="negationInd" type="bl" use="optional" default="false"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.ActDefinition">
      <xs:annotation>
         <xs:appinfo>
            <mif:class name="ActDefinition" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="ActDefinition"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="ActDefinition"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="code" type="CD" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="code" sortKey="3" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ActDefinition" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ActDefinition" attributeName="code"/>
                     <mif:type name="CD"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="ManufacturerActivityCode"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="text" type="ED" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="text" sortKey="4" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="text"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ActDefinition" attributeName="text"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ActDefinition" attributeName="text"/>
                     <mif:type name="ED"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="effectiveTime" type="SXCM_TS" minOccurs="0" maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="effectiveTime" sortKey="5" minimumMultiplicity="0"
                                 maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="effectiveTime"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ActDefinition"
                                             attributeName="effectiveTime"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ActDefinition"
                                             attributeName="effectiveTime"/>
                     <mif:type name="GTS"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="product" type="PORP_MT050032UV.Product1" nillable="true" minOccurs="0"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="product" minimumMultiplicity="0" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="1">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" associationEndName="participation"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Act" associationEndName="product"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Act" associationEndName="product"/>
                     <mif:participantClass>
                        <mif:reference name="Product1"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="ActClassRoot" use="optional" default="ACT"/>
      <xs:attribute name="moodCode" type="ActMood" use="optional" fixed="DEF"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.ActiveIngredient">
      <xs:annotation>
         <xs:documentation>A therapeutically active ingredient (player) in a mixture (scoper), where the mixture is typically a manufactured pharmaceutical. This class is being deprecated since release 4 of this specification and replaced by the Ingredient class, with the classCode active ingredient (ACTI) and specializations. This class is deprecated since release 4 of this specification. Use the Ingredient class instead with classCode specified as active ingredient (ACTI).</xs:documentation>
         <xs:appinfo>
            <mif:class name="ActiveIngredient" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="RoleHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="ActiveIngredient"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="ActiveIngredient"/>
               <mif:annotations>
                  <mif:designComments>
                     <mif:text>
                        <mif:p>Special ingredient classesdeprecated since SPL R4. INGR classCode specilai- zations, IACT, ACTI and ACTIB, ACTIM, ACTIR) retain the distinction.</mif:p>
                     </mif:text>
                  </mif:designComments>
               </mif:annotations>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="id" type="II" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>See Ingredient.id.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="id" sortKey="2" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ActiveIngredient" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ActiveIngredient" attributeName="id"/>
                     <mif:type name="II"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="quantity" type="RTO_PQ_PQ" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>See Ingredient quantity. Note the precise basis of strength in ActiveIngredient (ACTI) is ambiguous. If the basis of strength is to be disambiguated, use the Ingredient class instead with the proper specialization of the classCode.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="quantity" sortKey="3" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>Strength</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" attributeName="quantity"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ActiveIngredient"
                                             attributeName="quantity"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ActiveIngredient"
                                             attributeName="quantity"/>
                     <mif:type name="RTO">
                        <mif:supplierBindingArgumentDatatype name="PQ"/>
                        <mif:supplierBindingArgumentDatatype name="PQ"/>
                     </mif:type>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="activeIngredientSubstance" type="PORP_MT050032UV.Substance" minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="activeIngredientSubstance" minimumMultiplicity="1"
                                        maximumMultiplicity="1"
                                        isMandatory="true"
                                        conformance="R"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="player"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                             associationEndName="activeIngredientSubstance"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                             associationEndName="activeIngredientSubstance"/>
                     <mif:participantClass>
                        <mif:reference name="Substance"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="RoleClass" use="optional" fixed="ACTI"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.ActiveMoiety">
      <xs:annotation>
         <xs:documentation>Links to the molecule or ion that is responsible for the intended pharmacological action of the drug substance. Note that if a molecule (e.g., salt) dissociates into moieties (ions) where each ions could be considered responsible for the (potentially different) pharmacological action of the drug, one should use multiple activeMoieties, one for each ion.</xs:documentation>
         <xs:appinfo>
            <mif:class name="ActiveMoiety" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="RoleHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="ActiveMoiety"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="ActiveMoiety"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="quantity" type="RTO_PQ_PQ" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>A ratio specifying how much of the active moiety (numerator) is in the precise ingredient compound (denominator). For example, 5.6 mg (=denominator) betaxolol hydrochloride (compound) contain 5 mg (=numerator) of betaxolol (moiety).</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="quantity" sortKey="2" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>amount of active moiety in ingredient</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" attributeName="quantity"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ActiveMoiety" attributeName="quantity"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ActiveMoiety" attributeName="quantity"/>
                     <mif:type name="RTO">
                        <mif:supplierBindingArgumentDatatype name="PQ"/>
                        <mif:supplierBindingArgumentDatatype name="PQ"/>
                     </mif:type>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="activeMoiety" type="PORP_MT050032UV.ActiveMoietyEntity" minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="activeMoiety" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="true"
                                        conformance="R"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="player"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Role" associationEndName="activeMoiety"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Role" associationEndName="activeMoiety"/>
                     <mif:participantClass>
                        <mif:reference name="ActiveMoietyEntity"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="RoleClass" use="optional" fixed="ACTM"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.ActiveMoietyEntity">
      <xs:annotation>
         <xs:documentation>
The molecule or ion that is responsible for the intended pharmacological action of the drug substance, excluding those appended or associated parts of the molecule that make the molecule an ester, salt (including a salt with hydrogen or coordination bonds), or other noncovalent derivative (such as a complex, chelate, or clathrate).
Examples: heparin-sodium and heparin-potassium have the same active moiety, heparin; the active moiety of morphine-hydrochloride is morphine.</xs:documentation>
         <xs:appinfo>
            <mif:class name="ActiveMoietyEntity" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ManufacturedMaterial"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="ActiveMoietyEntity"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="ActiveMoietyEntity"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="code" type="CE" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>A code from a controlled vocabulary.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="code" sortKey="3" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>Active moiety code</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ActiveMoietyEntity" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ActiveMoietyEntity" attributeName="code"/>
                     <mif:type name="CE"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="EntityCode"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="name" type="TN" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>The name of the active moiety of the active ingredient.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="name" sortKey="4" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" attributeName="name"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ActiveMoietyEntity" attributeName="name"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ActiveMoietyEntity" attributeName="name"/>
                     <mif:type name="TN"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="asSpecializedKind" type="PORP_MT050032UV.SpecializedKind" nillable="true"
                     minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="asSpecializedKind" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="playedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity"
                                             associationEndName="asSpecializedKind"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity"
                                             associationEndName="asSpecializedKind"/>
                     <mif:participantClass>
                        <mif:reference name="SpecializedKind"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="EntityClassManufacturedMaterial" use="optional"
                    default="MMAT"/>
      <xs:attribute name="determinerCode" type="EntityDeterminerDetermined" use="optional"
                    default="KIND"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.AdministrableMaterial">
      <xs:annotation>
         <xs:documentation>A role structure whose player is the material (medicine or food).</xs:documentation>
         <xs:appinfo>
            <mif:class name="AdministrableMaterial" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="RoleHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="AdministrableMaterial"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="AdministrableMaterial"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="administrableMaterialKind" type="PORP_MT050032UV.MaterialKind"
                     minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="administrableMaterialKind" minimumMultiplicity="1"
                                        maximumMultiplicity="1"
                                        isMandatory="true"
                                        conformance="R"
                                        sortKey="1">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="player"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                             associationEndName="administrableMaterialKind"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                             associationEndName="administrableMaterialKind"/>
                     <mif:participantClass>
                        <mif:reference name="MaterialKind"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="RoleClass" use="optional" fixed="ADMM"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Agency">
      <xs:annotation>
         <xs:documentation>The medicinal product oversight authority.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Agency" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Organization"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Agency"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Agency"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="id" type="II" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="id" sortKey="3" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Agency" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Agency" attributeName="id"/>
                     <mif:type name="II"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="name" type="ON" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>Name of the agency.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="name" sortKey="4" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>e.g., the FDA for the USA</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" attributeName="name"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Agency" attributeName="name"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Agency" attributeName="name"/>
                     <mif:type name="ON"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="EntityClass" use="optional" fixed="PUB"/>
      <xs:attribute name="determinerCode" type="EntityDeterminer" use="optional" fixed="INSTANCE"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Approval">
      <xs:annotation>
         <xs:documentation>A record of the approval of a Medicine (product) or Substance, signifying that a substance or product is approved for the use specified in the SPL data.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Approval" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Approval"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Approval"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="id" type="II" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>Approval number (which in the U.S. is the New Drug Application (NDA) number)</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="id" sortKey="3" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>e.g., NDA number</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Approval" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Approval" attributeName="id"/>
                     <mif:type name="II"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="code" type="CE" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="code" sortKey="4" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>Accepted at Harmonization 3/07</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Approval" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Approval" attributeName="code"/>
                     <mif:type name="CE"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="ActMedicineApproval"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="statusCode" type="CS" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>Tells whether approval was granted (complete) or whether the approval is presently in progress (active).  Thus, a substance or product that is not approved yet but about which an approval is in process and approval number is known can also have the Approval structure but must indicate a status of "active" in the Approval.statusCode.  Likewise, a substance or product whose approval has been withdrawn would have a statusCode of "obsolete".</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="statusCode" sortKey="5" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>active: not yet approved; complete: approved; obsolete: withdrawn</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="statusCode"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Approval" attributeName="statusCode"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Approval" attributeName="statusCode"/>
                     <mif:type name="CS"/>
                     <mif:supplierDomainSpecification codingStrength="CNE" domainName="ActStatus"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="holder" type="PORP_MT050032UV.Holder" nillable="true" minOccurs="0"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="holder" minimumMultiplicity="0" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" associationEndName="participation"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Act" associationEndName="holder"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Act" associationEndName="holder"/>
                     <mif:participantClass>
                        <mif:reference name="Holder"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="author" type="PORP_MT050032UV.Author2" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="author" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="true"
                                        conformance="R"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" associationEndName="participation"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Act" associationEndName="author"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Act" associationEndName="author"/>
                     <mif:participantClass>
                        <mif:reference name="Author2"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="ActClassContract" use="optional" default="CNTRCT"/>
      <xs:attribute name="moodCode" type="ActMood" use="optional" fixed="EVN"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.ARole">
      <xs:annotation>
         <xs:appinfo>
            <mif:class name="ARole" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="RoleHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="ARole"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="ARole"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="playingOrganization" type="PORP_MT050032UV.Organization" minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="playingOrganization" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="true"
                                        conformance="R"
                                        sortKey="1">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="player"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                             associationEndName="playingOrganization"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                             associationEndName="playingOrganization"/>
                     <mif:participantClass>
                        <mif:reference name="Organization"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="RoleClassRoot" use="optional" default="ROL"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.AssignedEntity">
      <xs:annotation>
         <xs:documentation>
Possible persons and organizations involved in the creation and review of a product labeling document are associated with the document as Participations. Participations may include document originators (authors), legal authenticators, organizations that own the marketing authority for the product, and product labeling reviewers at the regulatory agency. Participants are capable of and accountable for their independent decisions. All of these participants are optional in the SPL model but could be constrained to be required for a given realm.
Information about participants is captured by means of clones of several interrelated RIM classes: Participations, Roles, and Entities. In general, an Entity (person or organization) playing a particular Role (in this case, AssignedEntity), participates in an Act (e.g., a document). It is the Participation clone that identifies the type of participant. The type of Participation (e.g., author) is indicated by a code. The Role played by the Entity establishes that entity's competency or authority to participate as indicated.  For example, a person participating as an author of a label is only authorized to do so if assigned by the organization responsible for authorship of the label.
The way in which a Person or Organization is participating in the document is specified by the typeCode attribute on the relevant Participation class clone. While the nature of the participation may be suggested by the XML element name, the typeCode values are the definitive indication.</xs:documentation>
         <xs:appinfo>
            <mif:class name="AssignedEntity" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="RoleHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="AssignedEntity"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="AssignedEntity"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="id" type="II" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="id" sortKey="2" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="AssignedEntity" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="AssignedEntity" attributeName="id"/>
                     <mif:type name="II"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="addr" type="AD" minOccurs="0" maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="addr" sortKey="3" minimumMultiplicity="0" maximumMultiplicity="*"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" attributeName="addr"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="AssignedEntity" attributeName="addr"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="AssignedEntity" attributeName="addr"/>
                     <mif:type name="SET">
                        <mif:supplierBindingArgumentDatatype name="AD"/>
                     </mif:type>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="telecom" type="TEL" minOccurs="0" maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="telecom" sortKey="4" minimumMultiplicity="0" maximumMultiplicity="*"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" attributeName="telecom"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="AssignedEntity" attributeName="telecom"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="AssignedEntity" attributeName="telecom"/>
                     <mif:type name="SET">
                        <mif:supplierBindingArgumentDatatype name="TEL"/>
                     </mif:type>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="assignedPerson" type="PORP_MT050032UV.Person" nillable="true"
                     minOccurs="0"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="assignedPerson" minimumMultiplicity="0" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="1">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="player"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                             associationEndName="assignedPerson"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                             associationEndName="assignedPerson"/>
                     <mif:participantClass>
                        <mif:reference name="Person"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="representedOrganization" type="PORP_MT050032UV.Organization"
                     nillable="true"
                     minOccurs="0"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="representedOrganization" minimumMultiplicity="0" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="1">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="scoper"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                             associationEndName="representedOrganization"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                             associationEndName="representedOrganization"/>
                     <mif:participantClass>
                        <mif:reference name="Organization"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="RoleClassAssignedEntity" use="optional"
                    default="ASSIGNED"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.AssignedEntity2">
      <xs:annotation>
         <xs:appinfo>
            <mif:class name="AssignedEntity2" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="RoleHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="AssignedEntity2"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="AssignedEntity2"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="code" type="CE" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="code" sortKey="2" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>e.g., manufacturer, packer, printer</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="AssignedEntity2" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="AssignedEntity2" attributeName="code"/>
                     <mif:type name="CE"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="RoleCode"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="confidentialityCode" type="CE" minOccurs="0" maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="confidentialityCode" sortKey="3" minimumMultiplicity="0"
                                 maximumMultiplicity="*"
                                 isMandatory="false">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>B - remove from published label</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role"
                                             attributeName="confidentialityCode"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="AssignedEntity2"
                                             attributeName="confidentialityCode"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="AssignedEntity2"
                                             attributeName="confidentialityCode"/>
                     <mif:type name="SET">
                        <mif:supplierBindingArgumentDatatype name="CE"/>
                     </mif:type>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="Confidentiality"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="assignedOrganization" type="PORP_MT050032UV.Organization" minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="assignedOrganization" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="true"
                                        conformance="R"
                                        sortKey="1">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="player"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                             associationEndName="assignedOrganization"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                             associationEndName="assignedOrganization"/>
                     <mif:participantClass>
                        <mif:reference name="Organization"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="performance" type="PORP_MT050032UV.PrimaryPerformer" nillable="true"
                     minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="performance" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="1">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="participation"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Role" associationEndName="performance"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Role" associationEndName="performance"/>
                     <mif:participantClass>
                        <mif:reference name="PrimaryPerformer"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="RoleClassAssignedEntity" use="optional"
                    default="ASSIGNED"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.AssignedEntity3">
      <xs:annotation>
         <xs:appinfo>
            <mif:class name="AssignedEntity3" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="RoleHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="AssignedEntity3"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="AssignedEntity3"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="assignedOrganization" type="PORP_MT050032UV.Organization" minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="assignedOrganization" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="true"
                                        conformance="R"
                                        sortKey="1">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="player"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                             associationEndName="assignedOrganization"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                             associationEndName="assignedOrganization"/>
                     <mif:participantClass>
                        <mif:reference name="Organization"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="RoleClassAssignedEntity" use="optional"
                    default="ASSIGNED"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Author">
      <xs:annotation>
         <xs:documentation>A Participation clone that links a Document (or Section) to the Person who originated the document (or section, respectively), and, through AssignedEntity, also links to the Organization that owns the document. If desired, the author(s) of specific sections can be identified using the same structures as it is done for Document.author, which will then override the author(s) specified for the Document. (Note: In the SPL RMIM, this class is represented as a "shadow" of the author class for document, indicating that this participation is used by both the section and the document classes.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Author" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Participation"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Author"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Author"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="time" type="TS" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>The time of participation by the author (usually the time of origination).</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="time" sortKey="3" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="true"
                                 conformance="R">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Participation" attributeName="time"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Author" attributeName="time"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Author" attributeName="time"/>
                     <mif:type name="TS"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="assignedEntity" type="PORP_MT050032UV.AssignedEntity" nillable="true"
                     minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="assignedEntity" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="1">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Participation" associationEndName="role"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Participation"
                                             associationEndName="assignedEntity"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Participation"
                                             associationEndName="assignedEntity"/>
                     <mif:participantClass>
                        <mif:reference name="AssignedEntity"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ParticipationType" use="optional" fixed="AUT"/>
      <xs:attribute name="contextControlCode" type="ContextControl" use="optional" fixed="OP"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Author2">
      <xs:annotation>
         <xs:documentation>The author of the Approval signifies the Territory (country or state) for which approval was granted, with optionally some detail about the approving Agency.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Author2" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Participation"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Author2"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Author2"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="time" type="TS" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>The date when Approval was granted.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="time" sortKey="2" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>time approval was granted</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Participation" attributeName="time"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Author2" attributeName="time"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Author2" attributeName="time"/>
                     <mif:type name="TS"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="territorialAuthority" type="PORP_MT050032UV.TerritorialAuthority"
                     minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="territorialAuthority" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="true"
                                        conformance="R"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Participation" associationEndName="role"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Participation"
                                             associationEndName="territorialAuthority"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Participation"
                                             associationEndName="territorialAuthority"/>
                     <mif:participantClass>
                        <mif:reference name="TerritorialAuthority"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ParticipationType" use="optional" fixed="AUT"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.BillingUnitDefinition">
      <xs:annotation>
         <xs:documentation>Defines the standard way of billing for this product. The billing unit definition is associated through an IndirectTarget participation  [to be refined with a more specific type ValuedUnitItem] with the product, part, or package which serves as the standard unitary item for billing purposes.

NOTE: This material is INFORMATIVE in SPL R4 for the purpose of pilot testing.</xs:documentation>
         <xs:appinfo>
            <mif:class name="BillingUnitDefinition" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="InvoiceElement"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="BillingUnitDefinition"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="BillingUnitDefinition"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="unitPriceAmt" type="RTO_MO_PQ" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>A ratio of currency amount per billing unit. The billing unit appears in the denominator. The numerator (cost per unit) is not usually expected to be specified in SPL and left as null (no information, NI). The billing unit must be comparable with the associated unitary item for billing (through the ValuedItemUnit participation). It will typically be g, mL, or 1 (for countable forms.) A translation quantity representation may be specified with the billing unit code used in external billing standards (e.g., U.S. National Council for Prescription Drug Programs, NCPDP, used GM for 1 g, ML for 1 mL, and EA for each).

For example, tablets would be billed by the piece (each, NCPDP EA); cream might be billed by mass, 1 g (NCPDP GM); a solution for injection may be billed by volume, 1 mL (NCDPD ML).</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="unitPriceAmt" sortKey="3" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>billing unit in denominator</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="InvoiceElement"
                                             attributeName="unitPriceAmt"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="BillingUnitDefinition"
                                             attributeName="unitPriceAmt"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="BillingUnitDefinition"
                                             attributeName="unitPriceAmt"/>
                     <mif:type name="RTO">
                        <mif:supplierBindingArgumentDatatype name="MO"/>
                        <mif:supplierBindingArgumentDatatype name="PQ"/>
                     </mif:type>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="ActClass" use="optional" fixed="INVE"/>
      <xs:attribute name="moodCode" type="ActMood" use="optional" fixed="DEF"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.CauseOf">
      <xs:annotation>
         <xs:documentation>The description of the risk can nest to refine to a level of specificity that makes the adverse event actually recognizable.  For example, a risk may be specified as a "hypersensitivity syndrome" but then specific manifestations may be given including "rash," or "Guillain-Barre Syndrome", or even quantitative measures as "leukopenia with WBC below 1000/mm3."</xs:documentation>
         <xs:appinfo>
            <mif:class name="CauseOf" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="CauseOf"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="CauseOf"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="consequenceObservation" type="PORP_MT050032UV.ConsequenceObservation"
                     nillable="true"
                     minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="consequenceObservation" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                             associationEndName="target"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ActRelationship"
                                             associationEndName="consequenceObservation"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ActRelationship"
                                             associationEndName="consequenceObservation"/>
                     <mif:participantClass>
                        <mif:reference name="ConsequenceObservation"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ActRelationshipType" use="optional" fixed="CAUS"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Characteristic">
      <xs:annotation>
         <xs:documentation>A code-value pair specifying descriptive properties of the medicine, such as color, shape, imprints, etc. The code has a data type of CE and the value has a data type of ANY, which allows codes or numeric values to be specified.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Characteristic" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Observation"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Characteristic"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Characteristic"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="code" type="CE" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>
A code specifying which characteristic of the medicine is being described. The vocabulary domain is MedicationObservationType (a CWE domain which can be extended as necessary). For example, some values that are contained in the SPLLabelData value set within the MedicationObservationType vocabulary domain are listed below:SPLIMPRINTCD - label imprint code - Identifying marks on productSPLSIZE - label size - Description of size of the product as called for in regulations SPLSHAPE - label shape - Description of shape of the product as called for in regulations SPLCOLOR - label color - Description of color of the product as called for in regulationsSPLCOATING - label coating - Description of the coating of the product as called for in regulationsSPLSCORING - label scoring - Description of scoring of the product as called for in regulationsSPLSYMBOL - label logo - Description of the logo on the product as called for in regulations</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="code" sortKey="3" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Characteristic" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Characteristic" attributeName="code"/>
                     <mif:type name="CE"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="MedicationObservationType"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="text" type="ED" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>A text field that allows entry of free text description of the characteristics.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="text" sortKey="4" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="text"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Characteristic" attributeName="text"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Characteristic" attributeName="text"/>
                     <mif:type name="ED"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="value" type="ANY" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>The value of the characteristic, e.g., a code for the specific shape or color, or a physical quantity specification for the size.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="value" sortKey="5" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Observation" attributeName="value"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Characteristic" attributeName="value"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Characteristic" attributeName="value"/>
                     <mif:type name="ANY"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="ActClassObservation" use="optional" default="OBS"/>
      <xs:attribute name="moodCode" type="ActMood" use="optional" fixed="EVN"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Comment">
      <xs:annotation>
         <xs:documentation>
Editorial comments much like the comments which can be attached to text with some word processors. Comment.text contains the free text of the comment.  The comment can reference a precise location in the section text using the TextFragmentReference. The following is an example:

&lt;section&gt; 
  ... 
  &lt;text&gt;Pramoxicol SM is &lt;content ID="cmt123"&gt;the cure for hair loss&lt;/content&gt;.&lt;/text&gt; 
  ... 
  &lt;subjectOf&gt; 
    &lt;comment&gt; 
      &lt;text&gt;This is a unfounded hype, you need to strike this&lt;/text&gt; 
      &lt;statusCode code="active"/&gt; 
      &lt;effectiveTime .../&gt; 
      &lt;subject&gt; 
        &lt;textFragmentReference&gt; 
          &lt;text&gt; 
            &lt;reference url="#cmt123"/&gt; 
          &lt;/text&gt; 
        &lt;/textFragmentReference&gt; 
      &lt;/subject&gt; 
    &lt;/comment&gt; 
  &lt;/subjectOf&gt; 
  ... 
&lt;/section&gt; 
		     
A comment should be attributed to an author but this author is separate from the document author (explicitly not inherited). Even if no specific author is assigned to a Comment, such Comment is not automatically attributed to the document or section author.  A Comment is not even considered part of the Section; it only references the Section and can be sent along with a Section but might be stripped from the Section without such stripping being considered an alteration of the Section.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Comment" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Comment"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Comment"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="text" type="ED" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>The free text of the comment. Uses the same Narrative Block schema as the Section.text itself.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="text" sortKey="3" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="true"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>the comment text written by the commenter</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="text"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Comment" attributeName="text"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Comment" attributeName="text"/>
                     <mif:type name="ED"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="statusCode" type="CS" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>Distinguishes comments that are open issues (active) from those that had been resolved (complete).</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="statusCode" sortKey="4" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="statusCode"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Comment" attributeName="statusCode"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Comment" attributeName="statusCode"/>
                     <mif:type name="CS"/>
                     <mif:supplierDomainSpecification codingStrength="CNE" domainName="ActStatus"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="effectiveTime" type="IVL_TS" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="effectiveTime" sortKey="5" minimumMultiplicity="0"
                                 maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="effectiveTime"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Comment" attributeName="effectiveTime"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Comment" attributeName="effectiveTime"/>
                     <mif:type name="IVL">
                        <mif:supplierBindingArgumentDatatype name="TS"/>
                     </mif:type>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="author" type="PORP_MT050032UV.Author" nillable="true" minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="author" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="1">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" associationEndName="participation"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Act" associationEndName="author"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Act" associationEndName="author"/>
                     <mif:participantClass>
                        <mif:reference name="Author"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="subject" type="PORP_MT050032UV.Subject10" nillable="true" minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="subject" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act"
                                             associationEndName="outboundRelationship"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Act" associationEndName="subject"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Act" associationEndName="subject"/>
                     <mif:participantClass>
                        <mif:reference name="Subject10"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="sequel" type="PORP_MT050032UV.SequelTo" nillable="true" minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="sequel" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act"
                                             associationEndName="inboundRelationship"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Act" associationEndName="sequel"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Act" associationEndName="sequel"/>
                     <mif:participantClass>
                        <mif:reference name="SequelTo"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="ActClassRoot" use="optional" default="ACT"/>
      <xs:attribute name="moodCode" type="ActMood" use="optional" fixed="EVN"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Component">
      <xs:annotation>
         <xs:documentation>Allows specifying further constraints on the indication itself, thus more narrowly defining the indication condition as opposed to specifying sub-populations unrelated to the condition.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Component" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Component"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Component"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="observationCriterion" type="PORP_MT050032UV.ObservationCriterion"
                     nillable="true"
                     minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="observationCriterion" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                             associationEndName="target"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ActRelationship"
                                             associationEndName="observationCriterion"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ActRelationship"
                                             associationEndName="observationCriterion"/>
                     <mif:participantClass>
                        <mif:reference name="ObservationCriterion"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ActRelationshipHasComponent" use="optional"
                    default="COMP"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Component1">
      <xs:annotation>
         <xs:documentation>Specifies that the pivotal SubstanceAdministration is part of a Protocol for safe and effective use.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Component1" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Component1"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Component1"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="sequenceNumber" type="INT" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>This attribute is fixed to 2. See the sequenceNumber attribute of component[monitoringObservation] for its use.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="sequenceNumber" sortKey="2" minimumMultiplicity="0"
                                 maximumMultiplicity="1"
                                 isMandatory="false"
                                 defaultValue="2">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                             attributeName="sequenceNumber"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Component1"
                                             attributeName="sequenceNumber"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Component1"
                                             attributeName="sequenceNumber"/>
                     <mif:type name="INT"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="protocol" type="PORP_MT050032UV.Protocol" nillable="true" minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="protocol" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="false"
                                        conformance="R"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                             associationEndName="source"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ActRelationship"
                                             associationEndName="protocol"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ActRelationship"
                                             associationEndName="protocol"/>
                     <mif:participantClass>
                        <mif:reference name="Protocol"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ActRelationshipHasComponent" use="optional"
                    default="COMP"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Component2">
      <xs:annotation>
         <xs:documentation>Specifies Monitoring actions as part of a safe use protocol.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Component2" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Component2"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Component2"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="sequenceNumber" type="INT" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>This attribute is set to 1 for "screening" tests, i.e., those that should be performed before start of treatment, and is left as 2 for monitoring observations that should be done during the treatment. The underlying semantics is that sequenceNumber orders the components of the protocol. If the sequence number is equal in both components, it means these are done in parallel. Otherwise the components are to be executed in the order of ascending sequenceNumber. For simplicity of use and interpretation, the sequenceNumber of the treatment component has been fixed to 2, so that the choice between screening and monitoring can be done in a single element.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="sequenceNumber" sortKey="2" minimumMultiplicity="0"
                                 maximumMultiplicity="1"
                                 isMandatory="false"
                                 defaultValue="2">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>"screening" = 1, "monitoring" = 2</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                             attributeName="sequenceNumber"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Component2"
                                             attributeName="sequenceNumber"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Component2"
                                             attributeName="sequenceNumber"/>
                     <mif:type name="INT"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="monitoringObservation" type="PORP_MT050032UV.MonitoringObservation"
                     nillable="true"
                     minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="monitoringObservation" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="false"
                                        conformance="R"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                             associationEndName="target"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ActRelationship"
                                             associationEndName="monitoringObservation"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ActRelationship"
                                             associationEndName="monitoringObservation"/>
                     <mif:participantClass>
                        <mif:reference name="MonitoringObservation"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ActRelationshipHasComponent" use="optional"
                    default="COMP"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Component3">
      <xs:annotation>
         <xs:documentation>If dosage regimens should vary, this can be specified by component SubstanceAdministrations.  In that case, the main SubstanceAdministration must not have a doseQuantity of itself, and instead the subordinate component SusbtanceAdministration would carry the doseQuantity for each different dose.  This is used for example, to specify a loading dose, or a tapering dose. A regimen with a loading dose is specified using two components, the first representing the initial dose, with repeatNumber = 1 (meaning "once") or any other limitation in number or time.  That first component would be followed by a second component that can repeat for the rest of the duration of the therapy. For tapering doses, the first component would represent the duration of the therapy and the second (or following) components specify the tapering-off scheme.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Component3" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Component3"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Component3"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="sequenceNumber" type="INT" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="sequenceNumber" sortKey="3" minimumMultiplicity="0"
                                 maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                             attributeName="sequenceNumber"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Component3"
                                             attributeName="sequenceNumber"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Component3"
                                             attributeName="sequenceNumber"/>
                     <mif:type name="INT"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="substanceAdministration" type="PORP_MT050032UV.SubstanceAdministration2"
                     nillable="true"
                     minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="substanceAdministration" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                             associationEndName="target"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ActRelationship"
                                             associationEndName="substanceAdministration"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ActRelationship"
                                             associationEndName="substanceAdministration"/>
                     <mif:participantClass>
                        <mif:reference name="SubstanceAdministration2"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ActRelationshipHasComponent" use="optional"
                    default="COMP"/>
      <xs:attribute name="contextConductionInd" type="bl" use="optional" default="true"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Component5">
      <xs:annotation>
         <xs:documentation>Connects a section with one of its sub-sections.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Component5" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Component5"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Component5"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:choice>
            <xs:element name="observationMedia" type="PORP_MT050032UV.ObservationMedia" nillable="true"
                        minOccurs="1"
                        maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="sectionComponent" minimumMultiplicity="1" maximumMultiplicity="1"
                                           isMandatory="false"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                                associationEndName="target"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="ActRelationship"
                                                associationEndName="sectionComponent"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="ActRelationship"
                                                associationEndName="sectionComponent"/>
                        <mif:participantClassSpecialization className="ObservationMedia" traversalName="observationMedia"/>
                        <mif:participantClassSpecialization className="Section" traversalName="section"/>
                        <mif:participantClass>
                           <mif:reference name="SectionComponent"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
            <xs:element name="section" type="PORP_MT050032UV.Section" nillable="true" minOccurs="1"
                        maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="sectionComponent" minimumMultiplicity="1" maximumMultiplicity="1"
                                           isMandatory="false"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                                associationEndName="target"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="ActRelationship"
                                                associationEndName="sectionComponent"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="ActRelationship"
                                                associationEndName="sectionComponent"/>
                        <mif:participantClassSpecialization className="ObservationMedia" traversalName="observationMedia"/>
                        <mif:participantClassSpecialization className="Section" traversalName="section"/>
                        <mif:participantClass>
                           <mif:reference name="SectionComponent"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
         </xs:choice>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ActRelationshipHasComponent" use="optional"
                    default="COMP"/>
      <xs:attribute name="contextConductionInd" type="bl" use="optional" default="true"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Component6">
      <xs:annotation>
         <xs:documentation>Connects the top-level sections with the Document.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Component6" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Component6"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Component6"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="section" type="PORP_MT050032UV.Section" nillable="true" minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="section" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                             associationEndName="target"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ActRelationship"
                                             associationEndName="section"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ActRelationship"
                                             associationEndName="section"/>
                     <mif:participantClass>
                        <mif:reference name="Section"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ActRelationshipHasComponent" use="optional"
                    default="COMP"/>
      <xs:attribute name="contextConductionInd" type="bl" use="optional" default="true"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Component7">
      <xs:annotation>
         <xs:documentation>Connects the Document with its content structure.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Component7" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Component7"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Component7"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:choice>
            <xs:element name="nonXMLBody" type="PORP_MT050032UV.NonXMLBody" nillable="true"
                        minOccurs="1"
                        maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="documentBodyChoice" minimumMultiplicity="1" maximumMultiplicity="1"
                                           isMandatory="false"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                                associationEndName="target"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="ActRelationship"
                                                associationEndName="documentBodyChoice"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="ActRelationship"
                                                associationEndName="documentBodyChoice"/>
                        <mif:participantClassSpecialization className="NonXMLBody" traversalName="nonXMLBody"/>
                        <mif:participantClassSpecialization className="StructuredBody" traversalName="structuredBody"/>
                        <mif:participantClass>
                           <mif:reference name="DocumentBodyChoice"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
            <xs:element name="structuredBody" type="PORP_MT050032UV.StructuredBody" nillable="true"
                        minOccurs="1"
                        maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="documentBodyChoice" minimumMultiplicity="1" maximumMultiplicity="1"
                                           isMandatory="false"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                                associationEndName="target"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="ActRelationship"
                                                associationEndName="documentBodyChoice"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="ActRelationship"
                                                associationEndName="documentBodyChoice"/>
                        <mif:participantClassSpecialization className="NonXMLBody" traversalName="nonXMLBody"/>
                        <mif:participantClassSpecialization className="StructuredBody" traversalName="structuredBody"/>
                        <mif:participantClass>
                           <mif:reference name="DocumentBodyChoice"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
         </xs:choice>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ActRelationshipHasComponent" use="optional"
                    default="COMP"/>
      <xs:attribute name="contextConductionInd" type="bl" use="optional" default="true"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.ConsequenceObservation">
      <xs:annotation>
         <xs:documentation>An observation criterion specifying the adverse outcome as the usual code-value pair of an observation.</xs:documentation>
         <xs:appinfo>
            <mif:class name="ConsequenceObservation" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Observation"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="ConsequenceObservation"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="ConsequenceObservation"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="code" type="CD" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="code" sortKey="3" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="true"
                                 conformance="R">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ConsequenceObservation"
                                             attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ConsequenceObservation"
                                             attributeName="code"/>
                     <mif:type name="CD"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="ObservationType"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="text" type="ST" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="text" sortKey="4" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="text"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ConsequenceObservation"
                                             attributeName="text"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ConsequenceObservation"
                                             attributeName="text"/>
                     <mif:type name="ST"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="value" type="ANY" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="value" sortKey="5" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>CE, SET of CE, or IVL of PQ</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Observation" attributeName="value"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ConsequenceObservation"
                                             attributeName="value"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ConsequenceObservation"
                                             attributeName="value"/>
                     <mif:type name="ANY"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="subjectOf" type="PORP_MT050032UV.Subject2" nillable="true" minOccurs="0"
                     maxOccurs="2">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="subjectOf" minimumMultiplicity="0" maximumMultiplicity="2"
                                        isMandatory="false"
                                        conformance="R"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act"
                                             associationEndName="inboundRelationship"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Act" associationEndName="subjectOf"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Act" associationEndName="subjectOf"/>
                     <mif:participantClass>
                        <mif:reference name="Subject2"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="causeOf" type="PORP_MT050032UV.CauseOf" nillable="true" minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="causeOf" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act"
                                             associationEndName="outboundRelationship"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Act" associationEndName="causeOf"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Act" associationEndName="causeOf"/>
                     <mif:participantClass>
                        <mif:reference name="CauseOf"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="ActClassObservation" use="optional" default="OBS"/>
      <xs:attribute name="moodCode" type="ActMood" use="optional" fixed="EVN.CRT"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Consumable1">
      <xs:annotation>
         <xs:documentation>The participation linking the SubstanceAdministrationCritetion with the specification of the other administered substance.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Consumable1" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Participation"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Consumable1"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Consumable1"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="administrableMaterial" type="PORP_MT050032UV.AdministrableMaterial"
                     minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="administrableMaterial" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="true"
                                        conformance="R"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Participation" associationEndName="role"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Participation"
                                             associationEndName="administrableMaterial"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Participation"
                                             associationEndName="administrableMaterial"/>
                     <mif:participantClass>
                        <mif:reference name="AdministrableMaterial"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ParticipationType" use="optional" fixed="CSM"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Consumable2">
      <xs:annotation>
         <xs:documentation>A participation which connects to the material which in terms of which the dose is specified. This connects either to the Medicine or to an ActiveIngredient. The referenced material is elsewhere specified in the label and at here only needs to be referred to using the ManufacturedProduct.id or the ActiveIngredient.id.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Consumable2" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Participation"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Consumable2"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Consumable2"/>
               <mif:annotations>
                  <mif:designComments>
                     <mif:text>
                        <mif:p>Dose unit must be specified when not dosing based on the specific formulation (e.g., tablet, actuation) otherwise the strength is not known.</mif:p>
                     </mif:text>
                  </mif:designComments>
               </mif:annotations>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:choice>
            <xs:element name="activeIngredient" type="PORP_MT050032UV.ActiveIngredient" nillable="true"
                        minOccurs="1"
                        maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="doseUnitChoice" minimumMultiplicity="1" maximumMultiplicity="1"
                                           isMandatory="false"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="Participation" associationEndName="role"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="Participation"
                                                associationEndName="doseUnitChoice"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="Participation"
                                                associationEndName="doseUnitChoice"/>
                        <mif:participantClassSpecialization className="ActiveIngredient" traversalName="activeIngredient"/>
                        <mif:participantClassSpecialization className="Ingredient" traversalName="ingredient"/>
                        <mif:participantClassSpecialization className="ManufacturedProduct" traversalName="manufacturedProduct"/>
                        <mif:participantClass>
                           <mif:reference name="DoseUnitChoice"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
            <xs:element name="ingredient" type="PORP_MT050032UV.Ingredient" nillable="true"
                        minOccurs="1"
                        maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="doseUnitChoice" minimumMultiplicity="1" maximumMultiplicity="1"
                                           isMandatory="false"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="Participation" associationEndName="role"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="Participation"
                                                associationEndName="doseUnitChoice"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="Participation"
                                                associationEndName="doseUnitChoice"/>
                        <mif:participantClassSpecialization className="ActiveIngredient" traversalName="activeIngredient"/>
                        <mif:participantClassSpecialization className="Ingredient" traversalName="ingredient"/>
                        <mif:participantClassSpecialization className="ManufacturedProduct" traversalName="manufacturedProduct"/>
                        <mif:participantClass>
                           <mif:reference name="DoseUnitChoice"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
            <xs:element name="manufacturedProduct" type="PORP_MT050032UV.ManufacturedProduct"
                        nillable="true"
                        minOccurs="1"
                        maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="doseUnitChoice" minimumMultiplicity="1" maximumMultiplicity="1"
                                           isMandatory="false"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="Participation" associationEndName="role"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="Participation"
                                                associationEndName="doseUnitChoice"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="Participation"
                                                associationEndName="doseUnitChoice"/>
                        <mif:participantClassSpecialization className="ActiveIngredient" traversalName="activeIngredient"/>
                        <mif:participantClassSpecialization className="Ingredient" traversalName="ingredient"/>
                        <mif:participantClassSpecialization className="ManufacturedProduct" traversalName="manufacturedProduct"/>
                        <mif:participantClass>
                           <mif:reference name="DoseUnitChoice"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
         </xs:choice>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ParticipationType" use="optional" fixed="CSM"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Consumable4">
      <xs:annotation>
         <xs:documentation>Links a Medicine as a ManufacturedProduct with the SubstanceAdministration definition representing the labeled route.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Consumable4" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Participation"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Consumable4"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Consumable4"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="substanceAdministration" type="PORP_MT050032UV.SubstanceAdministration"
                     nillable="true"
                     minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="substanceAdministration" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Participation" associationEndName="act"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Participation"
                                             associationEndName="substanceAdministration"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Participation"
                                             associationEndName="substanceAdministration"/>
                     <mif:participantClass>
                        <mif:reference name="SubstanceAdministration"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ParticipationType" use="optional" fixed="CSM"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Consumable5">
      <xs:annotation>
         <xs:appinfo>
            <mif:class name="Consumable5" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Participation"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Consumable5"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Consumable5"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="substanceAdministration" type="PORP_MT050032UV.SubstanceAdministration"
                     nillable="true"
                     minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="substanceAdministration" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Participation" associationEndName="act"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Participation"
                                             associationEndName="substanceAdministration"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Participation"
                                             associationEndName="substanceAdministration"/>
                     <mif:participantClass>
                        <mif:reference name="SubstanceAdministration"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ParticipationType" use="optional" fixed="CSM"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.ContactParty">
      <xs:annotation>
         <xs:appinfo>
            <mif:class name="ContactParty" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="RoleHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="ContactParty"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="ContactParty"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="addr" type="AD" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="addr" sortKey="2" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" attributeName="addr"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ContactParty" attributeName="addr"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ContactParty" attributeName="addr"/>
                     <mif:type name="AD"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="telecom" type="TEL" minOccurs="0" maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="telecom" sortKey="3" minimumMultiplicity="0" maximumMultiplicity="*"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" attributeName="telecom"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ContactParty" attributeName="telecom"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ContactParty" attributeName="telecom"/>
                     <mif:type name="SET">
                        <mif:supplierBindingArgumentDatatype name="TEL"/>
                     </mif:type>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="contactPerson" type="PORP_MT050032UV.Person" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="contactPerson" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="true"
                                        conformance="R"
                                        sortKey="1">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="player"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Role" associationEndName="contactPerson"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Role" associationEndName="contactPerson"/>
                     <mif:participantClass>
                        <mif:reference name="Person"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="RoleClassContact" use="optional" default="CON"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Content">
      <xs:annotation>
         <xs:documentation>A role representing the relationship between the medicine and its package.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Content" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="RoleHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Content"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Content"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="quantity" type="RTO_PQ_PQ" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>
A ratio which specifies how many small entities (numerator) are in a big entity (denominator).
Constraint: the dimension of the numerator must be the same as the dimension of the ingredient quantity's denominator.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="quantity" sortKey="2" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>qty of medicine in package</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" attributeName="quantity"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Content" attributeName="quantity"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Content" attributeName="quantity"/>
                     <mif:type name="RTO">
                        <mif:supplierBindingArgumentDatatype name="PQ"/>
                        <mif:supplierBindingArgumentDatatype name="PQ"/>
                     </mif:type>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:choice>
            <xs:element name="containerPackagedProduct" type="PORP_MT050032UV.PackagedProduct"
                        minOccurs="1"
                        maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="containerPackagedProductOrMed" minimumMultiplicity="1"
                                           maximumMultiplicity="1"
                                           isMandatory="true"
                                           conformance="R"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="scoper"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                                associationEndName="containerPackagedProductOrMed"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                                associationEndName="containerPackagedProductOrMed"/>
                        <mif:participantClassSpecialization className="PackagedProduct" traversalName="containerPackagedProduct"/>
                        <mif:participantClassSpecialization className="PackagedMedicine" traversalName="containerPackagedMedicine"/>
                        <mif:participantClass>
                           <mif:reference name="PackagedProductOrMed"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
            <xs:element name="containerPackagedMedicine" type="PORP_MT050032UV.PackagedMedicine"
                        minOccurs="1"
                        maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="containerPackagedProductOrMed" minimumMultiplicity="1"
                                           maximumMultiplicity="1"
                                           isMandatory="true"
                                           conformance="R"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="scoper"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                                associationEndName="containerPackagedProductOrMed"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                                associationEndName="containerPackagedProductOrMed"/>
                        <mif:participantClassSpecialization className="PackagedProduct" traversalName="containerPackagedProduct"/>
                        <mif:participantClassSpecialization className="PackagedMedicine" traversalName="containerPackagedMedicine"/>
                        <mif:participantClass>
                           <mif:reference name="PackagedProductOrMed"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
         </xs:choice>
         <xs:element name="participation" type="PORP_MT050032UV.IndirectTarget" nillable="true"
                     minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="participation" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="participation"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Role" associationEndName="participation"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Role" associationEndName="participation"/>
                     <mif:participantClass>
                        <mif:reference name="IndirectTarget"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="RoleClass" use="optional" fixed="CONT"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Content3">
      <xs:annotation>
         <xs:documentation>A role representing the relationship between an (inner) package and its larger (outer) package. This is the standard way to describe "intermediate" packaging, which regularly occur with non-solid medicines. For example, a solution for injection (Medicine) is packaged in a vial (a primary package or sometimes called "intermediary" package) and then several such vials are packed in a carton. Notice that the vial is not the Medicine, it is the content in the vial which is the medicine; the vial is just a necessary packaging to hold the liquid.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Content3" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="RoleHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Content3"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Content3"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="quantity" type="RTO_PQ_PQ" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>A ratio which specifies how many small entities (numerator) are in a big entity (denominator).</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="quantity" sortKey="2" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>qty of inner in outer package</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" attributeName="quantity"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Content3" attributeName="quantity"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Content3" attributeName="quantity"/>
                     <mif:type name="RTO">
                        <mif:supplierBindingArgumentDatatype name="PQ"/>
                        <mif:supplierBindingArgumentDatatype name="PQ"/>
                     </mif:type>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:choice>
            <xs:element name="containerPackagedProduct" type="PORP_MT050032UV.PackagedProduct"
                        minOccurs="1"
                        maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="containerPackagedProductOrMed" minimumMultiplicity="1"
                                           maximumMultiplicity="1"
                                           isMandatory="true"
                                           conformance="R"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="scoper"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                                associationEndName="containerPackagedProductOrMed"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                                associationEndName="containerPackagedProductOrMed"/>
                        <mif:participantClassSpecialization className="PackagedProduct" traversalName="containerPackagedProduct"/>
                        <mif:participantClassSpecialization className="PackagedMedicine" traversalName="containerPackagedMedicine"/>
                        <mif:participantClass>
                           <mif:reference name="PackagedProductOrMed"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
            <xs:element name="containerPackagedMedicine" type="PORP_MT050032UV.PackagedMedicine"
                        minOccurs="1"
                        maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="containerPackagedProductOrMed" minimumMultiplicity="1"
                                           maximumMultiplicity="1"
                                           isMandatory="true"
                                           conformance="R"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="scoper"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                                associationEndName="containerPackagedProductOrMed"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                                associationEndName="containerPackagedProductOrMed"/>
                        <mif:participantClassSpecialization className="PackagedProduct" traversalName="containerPackagedProduct"/>
                        <mif:participantClassSpecialization className="PackagedMedicine" traversalName="containerPackagedMedicine"/>
                        <mif:participantClass>
                           <mif:reference name="PackagedProductOrMed"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
         </xs:choice>
         <xs:element name="participation" type="PORP_MT050032UV.IndirectTarget" nillable="true"
                     minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="participation" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="participation"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Role" associationEndName="participation"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Role" associationEndName="participation"/>
                     <mif:participantClass>
                        <mif:reference name="IndirectTarget"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="RoleClass" use="optional" fixed="CONT"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.DerivedFrom">
      <xs:annotation>
         <xs:documentation>
Links a SubstanceAdministation to a specified kind of Observation which is used for calculated dosage. An example would be:
&lt;substanceAdministration&gt;
  ...
  &lt;maxDoseQuantity&gt;
    &lt;numerator xsi:type="EXPR_PQ" unit="mg"&gt;
      &lt;expression mediaType="application/hl7-factor+xml"/&gt;
        &lt;factor value="57" unit="mg/kg"&gt;
        &lt;factor&gt;bodyMass&lt;/factor&gt;
      &lt;/expression&gt;  
    &gt;/numerator&gt;
    &lt;denominator value="1" unit="d"/&gt;
  &lt;/maxDoseQuantity&gt;
  ...
  &lt;consumable&gt;
    &lt;activeIngredient ... /&gt;
  &lt;/consumable&gt;
  &lt;derivedFrom&gt;
    &lt;localVariableName&gt;bodyMass&lt;/localVariableName&gt;
    &lt;monitoringObservation&gt;
      &lt;code code="29463-7" codeSystem="&amp;LOINC;" displayName="BODY WEIGHT:MASS:PT:^PATIENT:QN"/&gt;
    &lt;/monitoringObservation&gt;
  &lt;/derivedFrom&gt;
&lt;/substanceAdministration&gt;
	       
Note: the EXPR data type is forthcoming in the release 2 of the HL7 data type specification under ballot at the same time as release 4 of this specification is being balloted. Also note, the unit attribute on the maxDoseQuantity numerator indicates the unit of the expression value, i.e., it guarantees that the expression evaluates to a physical quantity in this specified unit.</xs:documentation>
         <xs:appinfo>
            <mif:class name="DerivedFrom" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="DerivedFrom"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="DerivedFrom"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="localVariableName" type="ST" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="localVariableName" sortKey="2" minimumMultiplicity="0"
                                 maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                             attributeName="localVariableName"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="DerivedFrom"
                                             attributeName="localVariableName"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="DerivedFrom"
                                             attributeName="localVariableName"/>
                     <mif:type name="ST"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="subsetCode" type="CS" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="subsetCode" sortKey="3" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                             attributeName="subsetCode"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="DerivedFrom" attributeName="subsetCode"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="DerivedFrom" attributeName="subsetCode"/>
                     <mif:type name="CS"/>
                     <mif:supplierDomainSpecification codingStrength="CNE" domainName="ActRelationshipSubset"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="observationDefinition" type="PORP_MT050032UV.ObservationDefinition"
                     nillable="true"
                     minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="observationDefinition" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                             associationEndName="target"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ActRelationship"
                                             associationEndName="observationDefinition"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ActRelationship"
                                             associationEndName="observationDefinition"/>
                     <mif:participantClass>
                        <mif:reference name="ObservationDefinition"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ActRelationshipType" use="optional" fixed="DRIV"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.DeviceInstance">
      <xs:annotation>
         <xs:documentation>An individually ("serialized") device of the labeled kind, and/or a production lot for multiple equal products, considered devices, even if they are not individually distinguished. This is used for the purpose of listing and tracking individual device instance. The main distinction between DeviceInstance and the more generic ProductInstance is that the DeviceInstance allows specifying manufactuere model name/number and software version number.</xs:documentation>
         <xs:appinfo>
            <mif:class name="DeviceInstance" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Device"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="DeviceInstance"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="DeviceInstance"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="id" type="II" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>The serial number if applicable to a unique device.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="id" sortKey="3" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="true"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>serial number</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="DeviceInstance" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="DeviceInstance" attributeName="id"/>
                     <mif:type name="II"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="quantity" type="PQ" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="quantity" sortKey="4" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false"
                                 defaultValue="1">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>lot size, 1 = individual instance</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" attributeName="quantity"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="DeviceInstance" attributeName="quantity"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="DeviceInstance" attributeName="quantity"/>
                     <mif:type name="PQ"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="expirationTime" type="IVL_TS" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>An interval of time specifying the begin and end of the time range in which the product is considered safe and effective for use. If only an expiration date is known, this is represented in the high boundary of the interval.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="expirationTime" sortKey="5" minimumMultiplicity="0"
                                 maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="ManufacturedMaterial"
                                             attributeName="expirationTime"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="DeviceInstance"
                                             attributeName="expirationTime"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="DeviceInstance"
                                             attributeName="expirationTime"/>
                     <mif:type name="IVL">
                        <mif:supplierBindingArgumentDatatype name="TS"/>
                     </mif:type>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="manufacturerModelName" type="SC" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>The model number or designation of minor production variants which do not affect the properties of the device as labeled. For example, the same device might come with silver or black bezel and may have different model number designations by the manufacturer. This number is not a controlled identifier but has meaning in the context of the product and its manufacturer.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="manufacturerModelName" sortKey="6" minimumMultiplicity="0"
                                 maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Device"
                                             attributeName="manufacturerModelName"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="DeviceInstance"
                                             attributeName="manufacturerModelName"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="DeviceInstance"
                                             attributeName="manufacturerModelName"/>
                     <mif:type name="SC"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="softwareName" type="SC" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>The software or firmware version number installed in this product instance.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="softwareName" sortKey="7" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>software version</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Device" attributeName="softwareName"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="DeviceInstance"
                                             attributeName="softwareName"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="DeviceInstance"
                                             attributeName="softwareName"/>
                     <mif:type name="SC"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="asManufacturedProduct" type="PORP_MT050032UV.ManufacturedProduct2"
                     nillable="true"
                     minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="asManufacturedProduct" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="playedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity"
                                             associationEndName="asManufacturedProduct"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity"
                                             associationEndName="asManufacturedProduct"/>
                     <mif:participantClass>
                        <mif:reference name="ManufacturedProduct2"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="asMember" type="PORP_MT050032UV.Member" nillable="true" minOccurs="0"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="asMember" minimumMultiplicity="0" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="playedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity" associationEndName="asMember"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity" associationEndName="asMember"/>
                     <mif:participantClass>
                        <mif:reference name="Member"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="asInstanceOfKind" type="PORP_MT050032UV.InstanceOfKind" nillable="true"
                     minOccurs="0"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="asInstanceOfKind" minimumMultiplicity="0" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="playedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity"
                                             associationEndName="asInstanceOfKind"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity"
                                             associationEndName="asInstanceOfKind"/>
                     <mif:participantClass>
                        <mif:reference name="InstanceOfKind"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="part" type="PORP_MT050032UV.Part1" nillable="true" minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="part" minimumMultiplicity="0" maximumMultiplicity="*" isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="scopedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity" associationEndName="part"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity" associationEndName="part"/>
                     <mif:participantClass>
                        <mif:reference name="Part1"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="ingredient" type="PORP_MT050032UV.Ingredient1" nillable="true"
                     minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="ingredient" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="scopedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity" associationEndName="ingredient"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity" associationEndName="ingredient"/>
                     <mif:participantClass>
                        <mif:reference name="Ingredient1"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="member" type="PORP_MT050032UV.Member1" nillable="true" minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="member" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="scopedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity" associationEndName="member"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity" associationEndName="member"/>
                     <mif:participantClass>
                        <mif:reference name="Member1"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="EntityClassDevice" use="optional" default="DEV"/>
      <xs:attribute name="determinerCode" type="EntityDeterminer" use="optional" fixed="INSTANCE"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Document">
      <xs:annotation>
         <xs:documentation>The Structured Product Labeling document as a whole.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Document" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Document"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Document"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Document"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="id" type="II" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>A required, globally-unique instance identifier, which is different from the XML element identifier; see the HL7 Data Types specification for more information about use of globally-unique instance identifiers.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="id" sortKey="3" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="true"
                                 conformance="R">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Document" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Document" attributeName="id"/>
                     <mif:type name="II"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="code" type="CE" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>

			A code specifying the type of product labeling document (e.g., prescription drug label or over-the-counter prescription drug label). The externally-defined vocabulary domain for "Document.code" is preferentially drawn from LOINC.
		     

			NOTE: Within the LOINC database, beginning with version 2.09, May 2003, document type codes are those that have a value of "DOC" in the Scale component.
		     </xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="code" sortKey="4" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="true"
                                 conformance="R">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Document" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Document" attributeName="code"/>
                     <mif:type name="CE"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="DocumentType"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="title" type="StrucDoc.Title" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>

			Free text entry of the human readable title of the document. It is this title of a document that is rendered. The title describes (but does not guarantee) the content of the document.
		     

			The title is either a simple string (ST) or an XML content (ED) with limited NarrativeBlock markup which allows for stylesCode, super- and sub-script, line breaks and few other functions, but explicitly excludes tables, lists, etc.
		     </xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="title" sortKey="5" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>xml title content model</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="title"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Document" attributeName="title"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Document" attributeName="title"/>
                     <mif:type name="ED"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="effectiveTime" type="TS" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>Document origination time, i.e., a timestamp specifying when the document was created.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="effectiveTime" sortKey="6" minimumMultiplicity="1"
                                 maximumMultiplicity="1"
                                 isMandatory="true"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>Creation date</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="effectiveTime"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Document" attributeName="effectiveTime"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Document" attributeName="effectiveTime"/>
                     <mif:type name="TS"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="availabilityTime" type="TS" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>The release date of the product labeling document.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="availabilityTime" sortKey="7" minimumMultiplicity="0"
                                 maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>Release date</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="availabilityTime"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Document"
                                             attributeName="availabilityTime"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Document"
                                             attributeName="availabilityTime"/>
                     <mif:type name="TS"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="confidentialityCode" type="CE" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>Specifies confidentiality of the entire document. May be overriden for specific parts of the document. Values may be drawn from the Confidentiality vocabulary domain. Values other than those in the HL7 vocabulary domain (such as local codes) can also be used if necessary.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="confidentialityCode" sortKey="8" minimumMultiplicity="0"
                                 maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="confidentialityCode"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Document"
                                             attributeName="confidentialityCode"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Document"
                                             attributeName="confidentialityCode"/>
                     <mif:type name="CE"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="ConfidentialityByAccessKind"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="languageCode" type="CE" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>A code specifying the human language of character data in the product labeling document (whether in contents or attribute values). The values of the attribute are language identifiers as defined by the IETF (Internet Engineering Task Force) RFC 3066: Tags for the Identification of Languages, ed. H. Alvestrand, 1995 (http://www.ietf.org/rfc/rfc3066.txt), which obsoletes RFC 1766. Language is a contextual component of SPL, where the value expressed in the header holds true for the entire document, unless overridden by a nested value.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="languageCode" sortKey="9" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="languageCode"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Document" attributeName="languageCode"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Document" attributeName="languageCode"/>
                     <mif:type name="CE"/>
                     <mif:supplierDomainSpecification codingStrength="CNE" domainName="HumanLanguage"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="setId" type="II" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>An optional globally-unique identifier, that remains constant across all document revisions that derive from a common original document.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="setId" sortKey="10" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="ContextStructure" attributeName="setId"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Document" attributeName="setId"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Document" attributeName="setId"/>
                     <mif:type name="II"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="versionNumber" type="INT" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>An optional version number is incremented for each subsequent version of a document. For example, an original document is the first version of a document, and gets a new globally unique "id" value; it can also contain a new value for "setId" and a value of "versionNumber" set to equal "1".</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="versionNumber" sortKey="11" minimumMultiplicity="0"
                                 maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="ContextStructure"
                                             attributeName="versionNumber"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Document" attributeName="versionNumber"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Document" attributeName="versionNumber"/>
                     <mif:type name="INT"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="author" type="PORP_MT050032UV.Author" nillable="true" minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="author" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="1">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" associationEndName="participation"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Act" associationEndName="author"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Act" associationEndName="author"/>
                     <mif:participantClass>
                        <mif:reference name="Author"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="legalAuthenticator" type="PORP_MT050032UV.LegalAuthenticator"
                     nillable="true"
                     minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="legalAuthenticator" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="2">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" associationEndName="participation"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Act"
                                             associationEndName="legalAuthenticator"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Act"
                                             associationEndName="legalAuthenticator"/>
                     <mif:participantClass>
                        <mif:reference name="LegalAuthenticator"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="verifier" type="PORP_MT050032UV.Verifier" nillable="true" minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="verifier" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="3">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" associationEndName="participation"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Act" associationEndName="verifier"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Act" associationEndName="verifier"/>
                     <mif:participantClass>
                        <mif:reference name="Verifier"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="relatedDocument" type="PORP_MT050032UV.RelatedDocument1" nillable="true"
                     minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="relatedDocument" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="4">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act"
                                             associationEndName="outboundRelationship"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Act"
                                             associationEndName="relatedDocument"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Act"
                                             associationEndName="relatedDocument"/>
                     <mif:participantClass>
                        <mif:reference name="RelatedDocument1"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="component" type="PORP_MT050032UV.Component7" nillable="true"
                     minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="component" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act"
                                             associationEndName="outboundRelationship"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Act" associationEndName="component"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Act" associationEndName="component"/>
                     <mif:participantClass>
                        <mif:reference name="Component7"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="ActClassDocument" use="optional" default="DOC"/>
      <xs:attribute name="moodCode" type="ActMood" use="optional" fixed="EVN"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.EntityWithGeneric">
      <xs:annotation>
         <xs:documentation>Relationship that links to the non-proprietary, generic substance as which the same medicines is known in the literature independent of a specific manufacturer.</xs:documentation>
         <xs:appinfo>
            <mif:class name="EntityWithGeneric" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="RoleHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="EntityWithGeneric"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="EntityWithGeneric"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="genericMedicine" type="PORP_MT050032UV.GenericMedicine" minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="genericMedicine" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="true"
                                        conformance="R"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="scoper"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                             associationEndName="genericMedicine"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                             associationEndName="genericMedicine"/>
                     <mif:participantClass>
                        <mif:reference name="GenericMedicine"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="RoleClass" use="optional" fixed="GRIC"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.EquivalentEntity">
      <xs:annotation>
         <xs:documentation>
Specifies the original innovator product which is the reference product for a generics product. This class allows referencing the original innovator or reference product as a MaterialKind on the scoper-end of this role, and a code specifying precisely in what way this product is bio-equivalent to the reference product (equivalence evaluation code).</xs:documentation>
         <xs:appinfo>
            <mif:class name="EquivalentEntity" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="RoleHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="EquivalentEntity"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="EquivalentEntity"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="code" type="CE" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>
A code specifying in what way the equivalent entity (player) is considered equivalent to is reference entity (scoper). Examples: no known or suspected bioequivalence problems; potential bioequivalence problems have been resolved with evidence supporting bioequivalence; bioequivalence problems have not been fully resolved.
See also: U.S. Food and Drug Administration. Center for Drug Evaluation and Research. Approved drug products with therapeutic equivalence evaluations. Available from: http://www.fda.gov/cder/ob/docs/preface/ecpreface.htm.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="code" sortKey="2" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="EquivalentEntity" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="EquivalentEntity" attributeName="code"/>
                     <mif:type name="CE"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="EquivalenceEvaluationCode"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="definingMaterialKind" type="PORP_MT050032UV.MaterialKind" minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="definingMaterialKind" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="true"
                                        conformance="R"
                                        sortKey="1">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="scoper"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                             associationEndName="definingMaterialKind"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                             associationEndName="definingMaterialKind"/>
                     <mif:participantClass>
                        <mif:reference name="MaterialKind"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="RoleClassOntological_fixed" use="optional"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.EquivalentSubstance">
      <xs:annotation>
         <xs:documentation>
Used when the ingredient strength is expressed in terms of a reference substance, which is specified by the ingredient classCode ACTIR (active ingredient where strength is specified in terms of a reference drug.)
For example, it is customary for beta-adrenergic receptor inhibitors (beta-blockers, e.g., propranolol) to specify strengths in terms of the precise ingredient. This has led to variants of the same active moiety to be dosed in terms of the precise ingredient used when that active moiety first appeared on the market. For example, metoporolol tartrate was first, its strength was specified in terms of precise ingredient, and hence, for easier comparison of doses, the subsequent metoprolol succinate was specified in terms of equivalent metoprolol tartrate.</xs:documentation>
         <xs:appinfo>
            <mif:class name="EquivalentSubstance" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="RoleHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="EquivalentSubstance"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="EquivalentSubstance"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="quantity" type="RTO_PQ_PQ" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>A ratio specifying the amount of the precise ingredient (numerator) that is equivalent to an amount of the reference substance (denominator). For example, 23.75 mg (numerator) of metoprolol succinate equivalates 25 mg (denominator) of metoprolol tartrate.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="quantity" sortKey="2" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>qty of ingredient over that of reference substance</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" attributeName="quantity"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="EquivalentSubstance"
                                             attributeName="quantity"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="EquivalentSubstance"
                                             attributeName="quantity"/>
                     <mif:type name="RTO">
                        <mif:supplierBindingArgumentDatatype name="PQ"/>
                        <mif:supplierBindingArgumentDatatype name="PQ"/>
                     </mif:type>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="definingSubstance" type="PORP_MT050032UV.Substance" minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="definingSubstance" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="true"
                                        conformance="R"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="scoper"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                             associationEndName="definingSubstance"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                             associationEndName="definingSubstance"/>
                     <mif:participantClass>
                        <mif:reference name="Substance"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="RoleClassOntological_fixed" use="optional"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.ExcerptFrom">
      <xs:annotation>
         <xs:documentation>The relationship which links the Highlight to the Section which is being excerpted by the Highlight.</xs:documentation>
         <xs:appinfo>
            <mif:class name="ExcerptFrom" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="ExcerptFrom"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="ExcerptFrom"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="highlight" type="PORP_MT050032UV.Highlight" nillable="true" minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="highlight" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                             associationEndName="source"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ActRelationship"
                                             associationEndName="highlight"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ActRelationship"
                                             associationEndName="highlight"/>
                     <mif:participantClass>
                        <mif:reference name="Highlight"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ActRelationshipExcerpt" use="optional" default="XCRPT"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Frequency">
      <xs:annotation>
         <xs:documentation>A specification of frequency of occurrence of an adverse event as an observation criterion.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Frequency" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Observation"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Frequency"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Frequency"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="code" type="CD" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="code" sortKey="3" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="true"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>fixed</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Frequency" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Frequency" attributeName="code"/>
                     <mif:type name="CD"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="ActCode"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="value" type="CE" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="value" sortKey="4" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="true"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>e.g., frequent, infrequent</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Observation" attributeName="value"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Frequency" attributeName="value"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Frequency" attributeName="value"/>
                     <mif:type name="CE"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="SymptomFrequency"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="ActClassObservation" use="optional" default="OBS"/>
      <xs:attribute name="moodCode" type="ActMood" use="optional" fixed="EVN"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Generalization">
      <xs:annotation>
         <xs:documentation>Relates the pivotal SubstanceAdministration with an optional classification (TherapeuticClass).</xs:documentation>
         <xs:appinfo>
            <mif:class name="Generalization" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Generalization"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Generalization"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="therapeuticClass" type="PORP_MT050032UV.TherapeuticClass" nillable="true"
                     minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="therapeuticClass" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="false"
                                        conformance="R"
                                        sortKey="5">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>Deprecated. This class has never served any real purpose in pilot testing.</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                             associationEndName="target"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ActRelationship"
                                             associationEndName="therapeuticClass"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ActRelationship"
                                             associationEndName="therapeuticClass"/>
                     <mif:participantClass>
                        <mif:reference name="TherapeuticClass"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ActRelationshipType" use="optional" fixed="GEN"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.GenericMedicine">
      <xs:annotation>
         <xs:documentation>The non-proprietary, generic substance as which the same medicines is known in the literature independent of a specific manufacturer.</xs:documentation>
         <xs:appinfo>
            <mif:class name="GenericMedicine" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ManufacturedMaterial"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="GenericMedicine"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="GenericMedicine"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="code" type="CE" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="code" sortKey="3" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="GenericMedicine" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="GenericMedicine" attributeName="code"/>
                     <mif:type name="CE"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="DrugEntity"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="name" type="TN" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>The non-proprietary, generic, or "established" name.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="name" sortKey="4" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>e.g., Established Name</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" attributeName="name"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="GenericMedicine" attributeName="name"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="GenericMedicine" attributeName="name"/>
                     <mif:type name="TN"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="EntityClassManufacturedMaterial" use="optional"
                    default="MMAT"/>
      <xs:attribute name="determinerCode" type="EntityDeterminerDetermined" use="optional"
                    default="KIND"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Highlight">
      <xs:annotation>
         <xs:documentation>
An abstract or excerpt of a single topic discussed in a single section or sub-section.  This abstract is presented in the form of a short text fragment as well as with structured information.  The highlights are targeted at prescribers and judiciously chosen to present the most important information the prescriber needs to know in order to prescribe a medicine safely and effectively.
The Highlights can be assembled to form a short abstract of the comprehensive prescribing information as a "quick reference" for the prescriber.
All structured information to specify the clinical use of the drug is connected through the highlights element.  The practical purpose of this construct is to focus the coding of information on the most important points guiding the appropriate use of the medicine without attempting to code nuances which would not be part of a concise summary. It also facilitates review of the structured information for correctness. Specific information structures cover the general topics: Indication, Dosage and Administration, Adverse Events, Interactions, Contraindications and other Cautions or Warnings, as well as Monitoring guidelines.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Highlight" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Highlight"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Highlight"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="text" type="StrucDoc.Text" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="text" sortKey="3" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="text"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Highlight" attributeName="text"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Highlight" attributeName="text"/>
                     <mif:type name="ED"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="effectiveTime" type="IVL_TS" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="effectiveTime" sortKey="4" minimumMultiplicity="0"
                                 maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="effectiveTime"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Highlight" attributeName="effectiveTime"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Highlight" attributeName="effectiveTime"/>
                     <mif:type name="IVL">
                        <mif:supplierBindingArgumentDatatype name="TS"/>
                     </mif:type>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="subject" type="PORP_MT050032UV.Subject1" nillable="true" minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="subject" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act"
                                             associationEndName="outboundRelationship"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Act" associationEndName="subject"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Act" associationEndName="subject"/>
                     <mif:participantClass>
                        <mif:reference name="Subject1"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="ActClass" use="optional" fixed="DOCSECT"/>
      <xs:attribute name="moodCode" type="ActMood" use="optional" fixed="EVN"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Holder">
      <xs:annotation>
         <xs:appinfo>
            <mif:class name="Holder" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Participation"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Holder"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Holder"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="aRole" type="PORP_MT050032UV.ARole" nillable="true" minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="aRole" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Participation" associationEndName="role"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Participation"
                                             associationEndName="aRole"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Participation"
                                             associationEndName="aRole"/>
                     <mif:participantClass>
                        <mif:reference name="ARole"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ParticipationType" use="optional" fixed="HLD"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.InactiveIngredient">
      <xs:annotation>
         <xs:documentation>Relates a mixture (scoper) to an ingredient (player), where the ingredient is not considered the ActiveIngredient. This class is being deprecated since release  4 of this specification, and replaced by the Ingredient class, with the classCode active ingredient (ACTI) and specializations. This class is deprecated since release 4 of this specification. Use the Ingredient class instead with classCode specified as inactive ingredient (IACT).</xs:documentation>
         <xs:appinfo>
            <mif:class name="InactiveIngredient" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="RoleHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="InactiveIngredient"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="InactiveIngredient"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="quantity" type="RTO_PQ_PQ" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>See Ingredient quantity.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="quantity" sortKey="2" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" attributeName="quantity"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="InactiveIngredient"
                                             attributeName="quantity"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="InactiveIngredient"
                                             attributeName="quantity"/>
                     <mif:type name="RTO">
                        <mif:supplierBindingArgumentDatatype name="PQ"/>
                        <mif:supplierBindingArgumentDatatype name="PQ"/>
                     </mif:type>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="inactiveIngredientSubstance" type="PORP_MT050032UV.Substance"
                     minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="inactiveIngredientSubstance" minimumMultiplicity="1"
                                        maximumMultiplicity="1"
                                        isMandatory="true"
                                        conformance="R"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="player"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                             associationEndName="inactiveIngredientSubstance"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                             associationEndName="inactiveIngredientSubstance"/>
                     <mif:participantClass>
                        <mif:reference name="Substance"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="RoleClassInactiveIngredient" use="optional"
                    default="IACT"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.IndicationObservationCriterion">
      <xs:annotation>
         <xs:documentation>An observation criterion that is specified as the "reason" (ActRelationship) of the SubstanceAdministration.  The observation criterion consists of a code to indicate that the observation is a diagnoses, symptoms, conditions, etc. and a value-code to represent the specific indication, e.g. hypertension, etc.</xs:documentation>
         <xs:appinfo>
            <mif:class name="IndicationObservationCriterion" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Observation"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="IndicationObservationCriterion"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="IndicationObservationCriterion"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="code" type="CD" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>A code indicating that the observation is a diagnoses, symptoms, conditions, etc.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="code" sortKey="3" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="true"
                                 conformance="R">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="IndicationObservationCriterion"
                                             attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="IndicationObservationCriterion"
                                             attributeName="code"/>
                     <mif:type name="CD"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="ObservationDiagnosisTypes"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="value" type="CE" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>A value-code representing the specific indication, e.g. hypertension, etc.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="value" sortKey="4" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="true"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>condition, problem code</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Observation" attributeName="value"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="IndicationObservationCriterion"
                                             attributeName="value"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="IndicationObservationCriterion"
                                             attributeName="value"/>
                     <mif:type name="CE"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="ObservationValue"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="component" type="PORP_MT050032UV.Component" nillable="true" minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="component" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act"
                                             associationEndName="outboundRelationship"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Act" associationEndName="component"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Act" associationEndName="component"/>
                     <mif:participantClass>
                        <mif:reference name="Component"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="ActClassObservation" use="optional" default="OBS"/>
      <xs:attribute name="moodCode" type="ActMood" use="optional" fixed="EVN.CRT"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.IndirectTarget">
      <xs:annotation>
         <xs:documentation>
Labels a product, part, or package as the unitary item for uniform billing standards. For example, on the product in the form of a tablet to indicate that the product is billed by the tablet (each); to a product in cream form to indicate it is billed volume or mass; on a vial or sachet package to indicate it is billed by vial or sachet (each).
NOTE: This item is added in SPL R4 membership as an INFORMATIVE extension for the purpose of pilot testing.</xs:documentation>
         <xs:appinfo>
            <mif:class name="IndirectTarget" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Participation"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="IndirectTarget"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="IndirectTarget"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="billingUnitDefinition" type="PORP_MT050032UV.BillingUnitDefinition"
                     nillable="true"
                     minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="billingUnitDefinition" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Participation" associationEndName="act"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Participation"
                                             associationEndName="billingUnitDefinition"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Participation"
                                             associationEndName="billingUnitDefinition"/>
                     <mif:participantClass>
                        <mif:reference name="BillingUnitDefinition"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ParticipationType" use="required"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Ingredient">
      <xs:annotation>
         <xs:documentation>Relates an ingredient substance (player) to the product (scoper). Ingredients can be specified for medicines or other products, including devices, but they always mean the same thing: a material (here: chemical substance) in the make-up of the main product, not a structural part or content, and not a material added into a device for operation. For medicines and food this is obvious. For devices, an example for ingredient would be latex in a chest tube (but not an inhalant in a nebulizer device).  This class supercedes the two special classes ActiveIngredient and InactiveIngredient from previous revisions of this specification.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Ingredient" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="RoleHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Ingredient"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Ingredient"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="id" type="II" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>
An identifier to establish mostly internal references as a SubstanceAdministration.consumable for the unambiguous specification of dose quantity without having to repeat the entire content. Example:

   &lt;section ... DESCRIPTION ...&gt;
      &lt;subject&gt;
         &lt;manufacturedProduct&gt;
             &lt;manufacturedMedicine&gt;
                 &lt;activeIngredient&gt;
                    &lt;id root="60a4db80-573d-11db-b0de-0800200c9a66"/&gt;
   		 &lt;quantity .../&gt;
   		 &lt;activeIngredientSubstance .../&gt;
   	      &lt;/activeIngredient&gt;
   	  &lt;/manufacturedMedicine&gt;
         &lt;/manufacturedProduct&gt;
      &lt;/subject&gt;
   &lt;/section&gt;
   ...
   &lt;section ... DOSAGE AND ADMINISTRATION ...&gt;
      &lt;excerpt&gt;
         &lt;highlight&gt;
   	 &lt;substanceAdministration&gt;
   	    ...
   	    &lt;consumable&gt;
   	       &lt;activeIngredient&gt;
                    &lt;id root="60a4db80-573d-11db-b0de-0800200c9a66"/&gt;
   	       &lt;/activeIngredient&gt;
   	    &lt;/consumable&gt;
   	    ...
   	 &lt;/substanceAdministration&gt;
         &lt;/highlight&gt;
      &lt;/excerpt&gt;
   &lt;/section&gt;
</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="id" sortKey="2" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Ingredient" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Ingredient" attributeName="id"/>
                     <mif:type name="II"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="confidentialityCode" type="CE" minOccurs="0" maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="confidentialityCode" sortKey="3" minimumMultiplicity="0"
                                 maximumMultiplicity="*"
                                 isMandatory="false">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>B - trade secret</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role"
                                             attributeName="confidentialityCode"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Ingredient"
                                             attributeName="confidentialityCode"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Ingredient"
                                             attributeName="confidentialityCode"/>
                     <mif:type name="SET">
                        <mif:supplierBindingArgumentDatatype name="CE"/>
                     </mif:type>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="Confidentiality"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="quantity" type="RTO_PQ_PQ" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>
A ratio specifying the strength of the ingredient as amount of ingredient substance (numerator) in amount of medicine (denominator). For example, a 50 mg tablet contains 50 mg in 1 tablet; a 50 mg per 5 mL syrup contains 50 mg in 5 mL. Note that for countable dose forms ("eaches") no unit is required in the denominator, i.e., the denominator is a dimensionless number with unit 1 (one, the unity). The fact that the dose is per tablet, capsule, or whatever the dose form may be is recorded in the formCode of the scoping product, not in a unit of measure.
Constraint: the dimension of the denominator must be the same as the dimension of all of the quantity numerators of the scoper's (i.e., the product's) played roles (e.g., package content, part of kit, etc.).</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="quantity" sortKey="4" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>strength, qty of ingredient in medicine</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" attributeName="quantity"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Ingredient" attributeName="quantity"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Ingredient" attributeName="quantity"/>
                     <mif:type name="RTO">
                        <mif:supplierBindingArgumentDatatype name="PQ"/>
                        <mif:supplierBindingArgumentDatatype name="PQ"/>
                     </mif:type>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="ingredientSubstance" type="PORP_MT050032UV.Substance" minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="ingredientSubstance" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="true"
                                        conformance="R"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="player"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                             associationEndName="ingredientSubstance"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                             associationEndName="ingredientSubstance"/>
                     <mif:participantClass>
                        <mif:reference name="Substance"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="RoleClassIngredientEntity_fixed" use="optional"
                    default="INGR"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Ingredient1">
      <xs:annotation>
         <xs:documentation>Relates an ingredient instance (player) to the product instance (scoper). See the Ingredient class (from Product) about the general meaning. Specifically for product instances, ingredients may be the constituents of a mixed lot, even if the ingredient are of the same kind.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Ingredient1" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="RoleHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Ingredient1"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Ingredient1"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="quantity" type="RTO_PQ_PQ" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>
A ratio specifying how much of the ingredient product instance is in scoping product instance. If this ingredient instance role relates to the Ingredient role specifying the Product (kind), the ratio would normally be the same as the strength.
However, if a product lot is created by using multiple ingredient lots for the same kind of ingredient, the ratios of each ingredient role would be compounded as follows: SUM(scoper productInstance's quantity / ingredient.quantity.numerator * ingredient.quantity.denominator) over all ingredients of the same kind divided by scoper productInstance's quantitty should be equivalent to the specified ingredient strength. For example, 100 L of an amxicillin syrup with specified strength 500 mg in 5 mL is created. The raw amoxicillin originates from 2 ingredient lots. From the first lot, 2 kg of amoxicillin (moiety) were taken until it was used up, and from the second lot 8 kg were taken to make the required 10 kg of amoxicillin (moiety). This would be specified as productInstance.quantity = 100 L; ingredient1.quantity.numerator = 2 kg; ingredient1.quantity.denominator = 100 L; ingredien2.quantity.numerator = 8 kg, ingredient2.quantity.denominator = 100 L. Now: The sum (100 L / 100 L * 2 kg + 100 L / 100 L * 8 kg) / 100 L makes 10 kg / 100 L, which is equivalent to 500 mg / 5 mL.
If a mixed lot of 3000 tablets is created by mixing together equal amounts of tablets from lot A and lot B, we can specify: scoping productInstance.quantity = 1; ingredientA.quantity.numerator = 2; ingredientA.quantity.denominator = 1; ingredientA.quantity.denominator = 2; now 3000 / 2 * 1 come from lot A and 3000 / 2 * 1 come from lot B.
Constraint: the dimension of the denominator must be the same as the dimension of the scoping productInstance's quantity and all of the quantity numerators of the scoper's (i.e., the product instance's) played roles (e.g., member or portion of lot, part of kit, etc.).</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="quantity" sortKey="2" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" attributeName="quantity"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Ingredient1" attributeName="quantity"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Ingredient1" attributeName="quantity"/>
                     <mif:type name="RTO">
                        <mif:supplierBindingArgumentDatatype name="PQ"/>
                        <mif:supplierBindingArgumentDatatype name="PQ"/>
                     </mif:type>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="ingredientProductInstance" type="PORP_MT050032UV.ProductInstance"
                     minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="ingredientProductInstance" minimumMultiplicity="1"
                                        maximumMultiplicity="1"
                                        isMandatory="true"
                                        conformance="R"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="player"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                             associationEndName="ingredientProductInstance"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                             associationEndName="ingredientProductInstance"/>
                     <mif:participantClass>
                        <mif:reference name="ProductInstance"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="RoleClassIngredientEntity_fixed" use="optional"
                    default="INGR"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.InstanceOfKind">
      <xs:annotation>
         <xs:documentation>Connects a product instance with a MaterialKind specifying what kind of product it is. This is used when listing a ProductInstance along with its Part or Ingredient instances. The MaterialKind.code will then cite the Product code of which this Part or Ingredient material is an instance.</xs:documentation>
         <xs:appinfo>
            <mif:class name="InstanceOfKind" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="RoleHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="InstanceOfKind"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="InstanceOfKind"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="kindOfMaterialKind" type="PORP_MT050032UV.MaterialKind" minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="kindOfMaterialKind" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="true"
                                        conformance="R"
                                        sortKey="1">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="scoper"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                             associationEndName="kindOfMaterialKind"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                             associationEndName="kindOfMaterialKind"/>
                     <mif:participantClass>
                        <mif:reference name="MaterialKind"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="RoleClass" use="optional" fixed="INST"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.InstanceOfKind2">
      <xs:annotation>
         <xs:appinfo>
            <mif:class name="InstanceOfKind2" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="RoleHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="InstanceOfKind2"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="InstanceOfKind2"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:choice>
            <xs:element name="productInstance" type="PORP_MT050032UV.ProductInstance" minOccurs="1"
                        maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="productOrDeviceLotOrInstance" minimumMultiplicity="1"
                                           maximumMultiplicity="1"
                                           isMandatory="true"
                                           conformance="R"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="player"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                                associationEndName="productOrDeviceLotOrInstance"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                                associationEndName="productOrDeviceLotOrInstance"/>
                        <mif:participantClassSpecialization className="ProductInstance" traversalName="productInstance"/>
                        <mif:participantClassSpecialization className="DeviceInstance" traversalName="deviceInstance"/>
                        <mif:participantClass>
                           <mif:reference name="ProductOrDeviceLotOrInstance"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
            <xs:element name="deviceInstance" type="PORP_MT050032UV.DeviceInstance" minOccurs="1"
                        maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="productOrDeviceLotOrInstance" minimumMultiplicity="1"
                                           maximumMultiplicity="1"
                                           isMandatory="true"
                                           conformance="R"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="player"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                                associationEndName="productOrDeviceLotOrInstance"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                                associationEndName="productOrDeviceLotOrInstance"/>
                        <mif:participantClassSpecialization className="ProductInstance" traversalName="productInstance"/>
                        <mif:participantClassSpecialization className="DeviceInstance" traversalName="deviceInstance"/>
                        <mif:participantClass>
                           <mif:reference name="ProductOrDeviceLotOrInstance"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
         </xs:choice>
         <xs:element name="subjectOf" type="PORP_MT050032UV.Subject" nillable="true" minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="subjectOf" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="participation"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Role" associationEndName="subjectOf"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Role" associationEndName="subjectOf"/>
                     <mif:participantClass>
                        <mif:reference name="Subject"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="RoleClass" use="optional" fixed="INST"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Issue">
      <xs:annotation>
         <xs:documentation>Adverse events, interactions, contraindications and other issues of special caution are represented in one uniform structure. The Pharmacy SIG has established a special kind of Act, called Issue for this purpose.  An Issue has one or more other Acts as subjects and indicate that there is a certain problem requiring special caution with its subject Acts.  In the case of SPL, the subject is the SubstanceAdministration described in the label.  One or more additional subjects can be used to specify additional ClinicalSituationCriteria such as ObservationCriteria or SubstanceAdministrationCriteria.  The latter is used to represent interactions which is an Issue involving the administration of two substances.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Issue" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Observation"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Issue"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Issue"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="code" type="CD" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="code" sortKey="3" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R"
                                 fixedValue="ISSUE">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>further specification of issue concept, if applicable</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Issue" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Issue" attributeName="code"/>
                     <mif:type name="CD"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="ActCode" mnemonic="ISSUE"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="text" type="ST" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="text" sortKey="4" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="text"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Issue" attributeName="text"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Issue" attributeName="text"/>
                     <mif:type name="ST"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="subject" type="PORP_MT050032UV.Subject3" nillable="true" minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="subject" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        conformance="R"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act"
                                             associationEndName="outboundRelationship"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Act" associationEndName="subject"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Act" associationEndName="subject"/>
                     <mif:participantClass>
                        <mif:reference name="Subject3"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="risk" type="PORP_MT050032UV.Risk" nillable="true" minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="risk" minimumMultiplicity="0" maximumMultiplicity="*" isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act"
                                             associationEndName="outboundRelationship"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Act" associationEndName="risk"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Act" associationEndName="risk"/>
                     <mif:participantClass>
                        <mif:reference name="Risk"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="ActClass" use="optional" fixed="ALRT"/>
      <xs:attribute name="moodCode" type="ActMood" use="optional" fixed="DEF"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.LegalAuthenticator">
      <xs:annotation>
         <xs:documentation>In some realms there may be a requirement to capture a legal authenticator of the labeling content. A legally authenticated document exists when an individual with the proper legal authority has attested to the accuracy of the document content. A document can be legally authenticated by zero or more people. Requirements for capture of information about a potential legal authenticator have not been defined to date. However, in the case where a local document is transformed into a SPL document for exchange, authentication only occurs on the local document and the fact of authentication is reflected in the exchanged SPL document. An SPL document can reflect the unauthenticated or authenticated state. The unauthenticated state exists when no authentication information has been recorded (i.e., it is the absence of being authenticated).</xs:documentation>
         <xs:appinfo>
            <mif:class name="LegalAuthenticator" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Participation"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="LegalAuthenticator"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="LegalAuthenticator"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="time" type="TS" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>The time of participation by the legal authenticator (the time at which the document was authenticated, i.e., signed).</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="time" sortKey="2" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="true"
                                 conformance="R">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Participation" attributeName="time"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="LegalAuthenticator" attributeName="time"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="LegalAuthenticator" attributeName="time"/>
                     <mif:type name="TS"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="signatureCode" type="CS" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>Document the existence of a signature if the value for signatureCode is "S" (for "signed"). Authentication involves signing of the document either manually or electronically by the responsible individual. The electronic signature mechanism that uses the RIM attributes Participation.signatureText and Role.certificateText, is currently not included in SPL.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="signatureCode" sortKey="3" minimumMultiplicity="0"
                                 maximumMultiplicity="1"
                                 isMandatory="false"
                                 defaultValue="S">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Participation"
                                             attributeName="signatureCode"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="LegalAuthenticator"
                                             attributeName="signatureCode"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="LegalAuthenticator"
                                             attributeName="signatureCode"/>
                     <mif:type name="CS"/>
                     <mif:supplierDomainSpecification codingStrength="CNE" domainName="ParticipationSignature"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="assignedEntity" type="PORP_MT050032UV.AssignedEntity" nillable="true"
                     minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="assignedEntity" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="1">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Participation" associationEndName="role"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Participation"
                                             associationEndName="assignedEntity"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Participation"
                                             associationEndName="assignedEntity"/>
                     <mif:participantClass>
                        <mif:reference name="AssignedEntity"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ParticipationType" use="optional" fixed="LA"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.MaintenanceGoal1">
      <xs:annotation>
         <xs:documentation>Specifies a criterion (e.g., range) within which certain test results should remain, such as blood levels of the drug or its metabolites should remain to ensure efficacy and avoid toxicity.  MonitoringObservation.code specifies the observations that would be performed (e.g. digoxin level, gentamicin level, etc.) and the MonitoringObservation.value specifies a result-value interval with single bounds (e.g. maximal limits) or two bounds (range) that should be maintained throughout the treatment.</xs:documentation>
         <xs:appinfo>
            <mif:class name="MaintenanceGoal1" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="MaintenanceGoal1"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="MaintenanceGoal1"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="observationCriterion" type="PORP_MT050032UV.ObservationCriterion"
                     nillable="true"
                     minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="observationCriterion" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                             associationEndName="target"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ActRelationship"
                                             associationEndName="observationCriterion"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ActRelationship"
                                             associationEndName="observationCriterion"/>
                     <mif:participantClass>
                        <mif:reference name="ObservationCriterion"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ActRelationshipType" use="optional" fixed="OBJC"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.MaintenanceGoal2">
      <xs:annotation>
         <xs:documentation>The indication can be further specified to express an objective as to what the treatment should accomplish.  For instance, if the goal of the treatment is absence of acute asthma attacks, the maintenance goal can describe this.  This is used to allow the treatment effect to be coded and still keep the indication a simple code that is comparable with actual patient problem list data.  For instance, the indication would be "asthma" and the maintenance goal would be "no bronchiospasm" to indicate "prevention of bronchiospasm in patients with asthma".</xs:documentation>
         <xs:appinfo>
            <mif:class name="MaintenanceGoal2" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="MaintenanceGoal2"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="MaintenanceGoal2"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="observationCriterion" type="PORP_MT050032UV.ObservationCriterion"
                     nillable="true"
                     minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="observationCriterion" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                             associationEndName="target"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ActRelationship"
                                             associationEndName="observationCriterion"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ActRelationship"
                                             associationEndName="observationCriterion"/>
                     <mif:participantClass>
                        <mif:reference name="ObservationCriterion"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ActRelationshipType" use="optional" fixed="OBJC"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.ManufacturedProduct">
      <xs:annotation>
         <xs:documentation>A Role of the Medicine or Device as a ManufacturedProduct is taken as the principal role for the SPL product model.</xs:documentation>
         <xs:appinfo>
            <mif:class name="ManufacturedProduct" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="RoleHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="ManufacturedProduct"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="ManufacturedProduct"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="id" type="II" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="id" sortKey="2" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ManufacturedProduct" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ManufacturedProduct" attributeName="id"/>
                     <mif:type name="II"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:choice>
            <xs:element name="manufacturedProduct" type="PORP_MT050032UV.Product" minOccurs="1"
                        maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="manufacturedProductOrMedicine" minimumMultiplicity="1"
                                           maximumMultiplicity="1"
                                           isMandatory="true"
                                           conformance="R"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="player"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                                associationEndName="manufacturedProductOrMedicine"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                                associationEndName="manufacturedProductOrMedicine"/>
                        <mif:participantClassSpecialization className="Product" traversalName="manufacturedProduct"/>
                        <mif:participantClassSpecialization className="Medicine" traversalName="manufacturedMedicine"/>
                        <mif:participantClass>
                           <mif:reference name="ProductOrMedicine"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
            <xs:element name="manufacturedMedicine" type="PORP_MT050032UV.Medicine" minOccurs="1"
                        maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="manufacturedProductOrMedicine" minimumMultiplicity="1"
                                           maximumMultiplicity="1"
                                           isMandatory="true"
                                           conformance="R"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="player"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                                associationEndName="manufacturedProductOrMedicine"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                                associationEndName="manufacturedProductOrMedicine"/>
                        <mif:participantClassSpecialization className="Product" traversalName="manufacturedProduct"/>
                        <mif:participantClassSpecialization className="Medicine" traversalName="manufacturedMedicine"/>
                        <mif:participantClass>
                           <mif:reference name="ProductOrMedicine"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
         </xs:choice>
         <xs:element name="manufacturerOrganization" type="PORP_MT050032UV.Organization"
                     nillable="true"
                     minOccurs="0"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="manufacturerOrganization" minimumMultiplicity="0" maximumMultiplicity="1"
                                        isMandatory="false"
                                        conformance="R"
                                        sortKey="1">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="scoper"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                             associationEndName="manufacturerOrganization"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                             associationEndName="manufacturerOrganization"/>
                     <mif:participantClass>
                        <mif:reference name="Organization"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="subjectOf" type="PORP_MT050032UV.Subject6" nillable="true" minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="subjectOf" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="participation"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Role" associationEndName="subjectOf"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Role" associationEndName="subjectOf"/>
                     <mif:participantClass>
                        <mif:reference name="Subject6"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="consumedIn" type="PORP_MT050032UV.Consumable5" nillable="true"
                     minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="consumedIn" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="participation"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Role" associationEndName="consumedIn"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Role" associationEndName="consumedIn"/>
                     <mif:participantClass>
                        <mif:reference name="Consumable5"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="participation" type="PORP_MT050032UV.IndirectTarget" nillable="true"
                     minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="participation" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="participation"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Role" associationEndName="participation"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Role" associationEndName="participation"/>
                     <mif:participantClass>
                        <mif:reference name="IndirectTarget"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="RoleClassManufacturedProduct" use="optional"
                    default="MANU"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.ManufacturedProduct2">
      <xs:annotation>
         <xs:documentation>Links to the manufacturer site or establishment having produced this particular lot or instance.</xs:documentation>
         <xs:appinfo>
            <mif:class name="ManufacturedProduct2" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="RoleHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="ManufacturedProduct2"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="ManufacturedProduct2"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="manufacturerOrganization" type="PORP_MT050032UV.Organization"
                     minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="manufacturerOrganization" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="true"
                                        conformance="R"
                                        sortKey="1">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="scoper"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                             associationEndName="manufacturerOrganization"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                             associationEndName="manufacturerOrganization"/>
                     <mif:participantClass>
                        <mif:reference name="Organization"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="RoleClassManufacturedProduct" use="optional"
                    default="MANU"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.ManufacturedProduct3">
      <xs:annotation>
         <xs:appinfo>
            <mif:class name="ManufacturedProduct3" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="RoleHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="ManufacturedProduct3"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="ManufacturedProduct3"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="manufacturedMaterialKind" type="PORP_MT050032UV.MaterialKind"
                     minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="manufacturedMaterialKind" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="true"
                                        conformance="R"
                                        sortKey="1">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="player"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                             associationEndName="manufacturedMaterialKind"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                             associationEndName="manufacturedMaterialKind"/>
                     <mif:participantClass>
                        <mif:reference name="MaterialKind"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="RoleClassManufacturedProduct" use="optional"
                    default="MANU"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.MarketingAct">
      <xs:annotation>
         <xs:documentation>Specifies if and when the product is marketed.</xs:documentation>
         <xs:appinfo>
            <mif:class name="MarketingAct" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="MarketingAct"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="MarketingAct"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="code" type="CE" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="code" sortKey="3" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="MarketingAct" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="MarketingAct" attributeName="code"/>
                     <mif:type name="CE"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="MarketingActCode"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="statusCode" type="CS" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>The status of the marketing activity, i.e., product is actively marketed (active), product has been withdrawn from the market (aborted).</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="statusCode" sortKey="4" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>active: curently marketed; aborted: withdrawn off the market</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="statusCode"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="MarketingAct" attributeName="statusCode"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="MarketingAct" attributeName="statusCode"/>
                     <mif:type name="CS"/>
                     <mif:supplierDomainSpecification codingStrength="CNE" domainName="ActStatus"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="effectiveTime" type="IVL_TS" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>Time range (start - end) in which a product was marketed.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="effectiveTime" sortKey="5" minimumMultiplicity="0"
                                 maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="effectiveTime"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="MarketingAct"
                                             attributeName="effectiveTime"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="MarketingAct"
                                             attributeName="effectiveTime"/>
                     <mif:type name="IVL">
                        <mif:supplierBindingArgumentDatatype name="TS"/>
                     </mif:type>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="ActClassRoot" use="optional" default="ACT"/>
      <xs:attribute name="moodCode" type="ActMood" use="optional" fixed="EVN"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.MaterialKind">
      <xs:annotation>
         <xs:documentation>
A specificiation of a kind of medicine, food material, or any product for the purpose of (a) describing a specific product with classification categories and (b) refering to a kind of product or material for describing drug-drug interactions or adjunct treatments. The classifying category may refer to any of various classifications and abstractions of products by any aspect, including, mechanism of action category, physiologic effect category, chemical structure category, or "clinical drug" category. This may also be used to represent a specific material or an ingredient when specifying drug-drug interactions or adjunct treatments.
Note: this class supercedes the special class PharmaceuticalClass since release 4 of this specification for all uses. This class has existed since release 2, but had been used exclusively for specifying drug-drug-interactions and adjunct treatments, where it was essentially a reference to another PharmaceuticalClass. Otherwise both classes had the same constraints and, indeed, the same meaning.</xs:documentation>
         <xs:appinfo>
            <mif:class name="MaterialKind" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Material"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="MaterialKind"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="MaterialKind"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="code" type="CE" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>Code specifiying a kind of medicine, food material, or any product. The code may refer to any of various classifications and abstractions of products by any aspect, including, mechanism of action category, physiologic effect category, chemical structure category, or "clinical drug" category. It may also represent a specific material or an ingredient of material.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="code" sortKey="3" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="true"
                                 conformance="R">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="MaterialKind" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="MaterialKind" attributeName="code"/>
                     <mif:type name="CE"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="EntityCode"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="EntityClassMaterial" use="optional" default="MAT"/>
      <xs:attribute name="determinerCode" type="EntityDeterminerDetermined" use="optional"
                    default="KIND"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Medicine">
      <xs:annotation>
         <xs:documentation>
The medicine is the primary unit which is manufactured and the object of an intended substance administration and is not just packaging. Examples are tablet, capsule, solution for injection, powder.
Conversely, vial and bottle are containers, which though necessary for handling of the medicine, are not administered to the patient, but emptied into some other solution, or used with an injection or inhalation device. Notice, even though a capsule can be considered a container holding granules, capsules are still considered primary Medicines not PackagedMedicines, because the capsule is the unit normally intended for administration, and so the capsule is the medicine. In this way, a solution packaged in an administration unit, such as a dragee or a prefilled syringe may be considered primary Medicines rather than PackagedMedicines, if it is intended to be applied completely as one unit, and not subdivided. This requires that the ingredients of such medicines are specified as a total amount per complete application rather than as a concentration.
A kit, which is a collection of parts which are administered together or used in some intricate way are sometimes also described as primary Medicine with parts. The key criterion is that the kit as a whole is considered the object of a SubstanceAdministration.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Medicine" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ManufacturedMaterial"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Medicine"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Medicine"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="code" type="CE" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>The code given to this kind of manufactured medicine product, i.e., NDC code in the U.S.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="code" sortKey="3" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>e.g., NDC without package suffix</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Medicine" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Medicine" attributeName="code"/>
                     <mif:type name="CE"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="ManufacturedDrug"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="name" type="EN" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>The proprietary or brand name. In release 4 of this specification the data type for the name has been expanded to allow for suffixes which might hold proprietory dose form (e.g., "capsil", "discus", "injection system") or other names which are not considered part of the regulatory name, which, however, may be required for recognition of the product among health professionals.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="name" sortKey="4" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>Proprietary name, and suffix.</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" attributeName="name"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Medicine" attributeName="name"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Medicine" attributeName="name"/>
                     <mif:type name="EN"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="formCode" type="CE" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>The dosage form of the drug. Values may be drawn from the MaterialForm HL7 vocabulary table or from other external code value sources. Notice the difference between an (Administered) Medicine and a PackagedMedicine. Both have formCodes. A box or vial is usually not a Medicine.formCode, unless the entire box or the entire vial is meant for direct administration as a single unit.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="formCode" sortKey="5" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>Dosage form</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Material" attributeName="formCode"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Medicine" attributeName="formCode"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Medicine" attributeName="formCode"/>
                     <mif:type name="CE"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="MaterialForm"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="asSpecializedKind" type="PORP_MT050032UV.SpecializedKind" nillable="true"
                     minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="asSpecializedKind" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="playedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity"
                                             associationEndName="asSpecializedKind"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity"
                                             associationEndName="asSpecializedKind"/>
                     <mif:participantClass>
                        <mif:reference name="SpecializedKind"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="activeIngredient" type="PORP_MT050032UV.ActiveIngredient" nillable="true"
                     minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="activeIngredient" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>Special ingredient classesdeprecated since SPL R4. INGR classCode specilai- zations, IACT, ACTI and ACTIB, ACTIM, ACTIR) retain the distinction.</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="scopedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity"
                                             associationEndName="activeIngredient"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity"
                                             associationEndName="activeIngredient"/>
                     <mif:participantClass>
                        <mif:reference name="ActiveIngredient"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="asEntityWithGeneric" type="PORP_MT050032UV.EntityWithGeneric"
                     nillable="true"
                     minOccurs="0"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="asEntityWithGeneric" minimumMultiplicity="0" maximumMultiplicity="1"
                                        isMandatory="false"
                                        conformance="R"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="playedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity"
                                             associationEndName="asEntityWithGeneric"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity"
                                             associationEndName="asEntityWithGeneric"/>
                     <mif:participantClass>
                        <mif:reference name="EntityWithGeneric"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="inactiveIngredient" type="PORP_MT050032UV.InactiveIngredient"
                     nillable="true"
                     minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="inactiveIngredient" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="scopedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity"
                                             associationEndName="inactiveIngredient"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity"
                                             associationEndName="inactiveIngredient"/>
                     <mif:participantClass>
                        <mif:reference name="InactiveIngredient"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="asEquivalentEntity" type="PORP_MT050032UV.EquivalentEntity"
                     nillable="true"
                     minOccurs="0"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="asEquivalentEntity" minimumMultiplicity="0" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="playedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity"
                                             associationEndName="asEquivalentEntity"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity"
                                             associationEndName="asEquivalentEntity"/>
                     <mif:participantClass>
                        <mif:reference name="EquivalentEntity"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="ingredient" type="PORP_MT050032UV.Ingredient" nillable="true"
                     minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="ingredient" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="scopedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity" associationEndName="ingredient"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity" associationEndName="ingredient"/>
                     <mif:participantClass>
                        <mif:reference name="Ingredient"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="asContent" type="PORP_MT050032UV.Content" nillable="true" minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="asContent" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="playedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity" associationEndName="asContent"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity" associationEndName="asContent"/>
                     <mif:participantClass>
                        <mif:reference name="Content"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="asPartOfAssembly" type="PORP_MT050032UV.PartOfAssembly" nillable="true"
                     minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="asPartOfAssembly" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="playedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity"
                                             associationEndName="asPartOfAssembly"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity"
                                             associationEndName="asPartOfAssembly"/>
                     <mif:participantClass>
                        <mif:reference name="PartOfAssembly"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="part" type="PORP_MT050032UV.Part" nillable="true" minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="part" minimumMultiplicity="0" maximumMultiplicity="*" isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="scopedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity" associationEndName="part"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity" associationEndName="part"/>
                     <mif:participantClass>
                        <mif:reference name="Part"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="instanceOfKind" type="PORP_MT050032UV.InstanceOfKind2" nillable="true"
                     minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="instanceOfKind" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="scopedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity"
                                             associationEndName="instanceOfKind"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity"
                                             associationEndName="instanceOfKind"/>
                     <mif:participantClass>
                        <mif:reference name="InstanceOfKind2"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="EntityClassManufacturedMaterial" use="optional"
                    default="MMAT"/>
      <xs:attribute name="determinerCode" type="EntityDeterminerDetermined" use="optional"
                    default="KIND"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Member">
      <xs:annotation>
         <xs:documentation>Relates a product instance to its lot of which it is an individual member, subset or portion. A product instance can only relate to one lot. In case where a product is a mix of multiple lots use the ingredient role instead to constitute a mixed lot. This mixed lot can then be further portioned into sub-lots. Either way, a member or portion of a lot still only has one parent lot.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Member" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="RoleHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Member"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Member"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:choice>
            <xs:element name="groupProductInstance" type="PORP_MT050032UV.ProductInstance"
                        minOccurs="1"
                        maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="groupProductOrDeviceLotOrInstance" minimumMultiplicity="1"
                                           maximumMultiplicity="1"
                                           isMandatory="true"
                                           conformance="R"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="scoper"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                                associationEndName="groupProductOrDeviceLotOrInstance"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                                associationEndName="groupProductOrDeviceLotOrInstance"/>
                        <mif:participantClassSpecialization className="ProductInstance" traversalName="groupProductInstance"/>
                        <mif:participantClassSpecialization className="DeviceInstance" traversalName="groupDeviceInstance"/>
                        <mif:participantClass>
                           <mif:reference name="ProductOrDeviceLotOrInstance"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
            <xs:element name="groupDeviceInstance" type="PORP_MT050032UV.DeviceInstance" minOccurs="1"
                        maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="groupProductOrDeviceLotOrInstance" minimumMultiplicity="1"
                                           maximumMultiplicity="1"
                                           isMandatory="true"
                                           conformance="R"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="scoper"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                                associationEndName="groupProductOrDeviceLotOrInstance"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                                associationEndName="groupProductOrDeviceLotOrInstance"/>
                        <mif:participantClassSpecialization className="ProductInstance" traversalName="groupProductInstance"/>
                        <mif:participantClassSpecialization className="DeviceInstance" traversalName="groupDeviceInstance"/>
                        <mif:participantClass>
                           <mif:reference name="ProductOrDeviceLotOrInstance"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
         </xs:choice>
         <xs:element name="subjectOf" type="PORP_MT050032UV.Subject" nillable="true" minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="subjectOf" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="participation"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Role" associationEndName="subjectOf"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Role" associationEndName="subjectOf"/>
                     <mif:participantClass>
                        <mif:reference name="Subject"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="RoleClass" use="optional" fixed="MBR"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Member1">
      <xs:annotation>
         <xs:documentation>Relates a product lot (or batch) to an instance or portion of it. This role would typically appear more than once to list all the members of a product lot. These members of a product lot may be individual serialized portions filled into a container (e.g., bottle or ampoule) for retail, or larger batches shipped to other manufacturers, wholesalers or repackers. Either way, each portion can be individually identified, such as with the serial number which may or may not be printed on the package.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Member1" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="RoleHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Member1"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Member1"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:choice>
            <xs:element name="memberProductInstance" type="PORP_MT050032UV.ProductInstance"
                        minOccurs="1"
                        maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="memberProductOrDeviceLotOrInstance" minimumMultiplicity="1"
                                           maximumMultiplicity="1"
                                           isMandatory="true"
                                           conformance="R"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="player"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                                associationEndName="memberProductOrDeviceLotOrInstance"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                                associationEndName="memberProductOrDeviceLotOrInstance"/>
                        <mif:participantClassSpecialization className="ProductInstance" traversalName="memberProductInstance"/>
                        <mif:participantClassSpecialization className="DeviceInstance" traversalName="memberDeviceInstance"/>
                        <mif:participantClass>
                           <mif:reference name="ProductOrDeviceLotOrInstance"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
            <xs:element name="memberDeviceInstance" type="PORP_MT050032UV.DeviceInstance" minOccurs="1"
                        maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="memberProductOrDeviceLotOrInstance" minimumMultiplicity="1"
                                           maximumMultiplicity="1"
                                           isMandatory="true"
                                           conformance="R"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="player"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                                associationEndName="memberProductOrDeviceLotOrInstance"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                                associationEndName="memberProductOrDeviceLotOrInstance"/>
                        <mif:participantClassSpecialization className="ProductInstance" traversalName="memberProductInstance"/>
                        <mif:participantClassSpecialization className="DeviceInstance" traversalName="memberDeviceInstance"/>
                        <mif:participantClass>
                           <mif:reference name="ProductOrDeviceLotOrInstance"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
         </xs:choice>
         <xs:element name="subjectOf" type="PORP_MT050032UV.Subject" nillable="true" minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="subjectOf" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="participation"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Role" associationEndName="subjectOf"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Role" associationEndName="subjectOf"/>
                     <mif:participantClass>
                        <mif:reference name="Subject"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="RoleClass" use="optional" fixed="MBR"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.MonitoringObservation">
      <xs:annotation>
         <xs:documentation>Prescribe the tests that should be performed and in what frequency.  MonitoringObservation.code detailing the tests that should be performed (e.g. thrombocytes count, liver enzymes, etc.) The MonitoringObservation.effectiveTime is used to specify the recommended frequency of these tests in the same way as the frequency of SubstanceAdministration is specified.</xs:documentation>
         <xs:appinfo>
            <mif:class name="MonitoringObservation" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Observation"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="MonitoringObservation"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="MonitoringObservation"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="code" type="CE" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="code" sortKey="3" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="true"
                                 conformance="R">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="MonitoringObservation"
                                             attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="MonitoringObservation"
                                             attributeName="code"/>
                     <mif:type name="CE"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="ObservationType"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="effectiveTime" type="SXCM_TS" minOccurs="0" maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="effectiveTime" sortKey="4" minimumMultiplicity="0"
                                 maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="effectiveTime"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="MonitoringObservation"
                                             attributeName="effectiveTime"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="MonitoringObservation"
                                             attributeName="effectiveTime"/>
                     <mif:type name="GTS"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="ActClassObservation" use="optional" default="OBS"/>
      <xs:attribute name="moodCode" type="ActMood" use="optional" fixed="DEF"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.NonXMLBody">
      <xs:annotation>
         <xs:documentation>Represents a document body that is in some format other than SPL XML (e.g., a PDF document.)</xs:documentation>
         <xs:appinfo>
            <mif:class name="NonXMLBody" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="NonXMLBody"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="NonXMLBody"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="text" type="ED" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="text" sortKey="3" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="true"
                                 conformance="R">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="text"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="NonXMLBody" attributeName="text"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="NonXMLBody" attributeName="text"/>
                     <mif:type name="ED"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="ActClass" use="optional" fixed="DOCBODY"/>
      <xs:attribute name="moodCode" type="ActMood" use="optional" fixed="EVN"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.ObservationCriterion">
      <xs:annotation>
         <xs:documentation>Specifies an observation that would be made in the described situation, and would characterize the situation. Used as a precondition to the situation. The observation criterion consists of a code to indicate that the observation is a diagnoses, symptoms, conditions, etc. and a value to represent the specific condition, e.g. renal failure, impaired liver function (as value code); systolic blood pressure &lt; 100 mmHg (as numeric value range), etc.</xs:documentation>
         <xs:appinfo>
            <mif:class name="ObservationCriterion" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Observation"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="ObservationCriterion"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="ObservationCriterion"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="id" type="II" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="id" sortKey="3" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ObservationCriterion" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ObservationCriterion" attributeName="id"/>
                     <mif:type name="II"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="code" type="CD" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>A code specifying that the observation is a diagnoses, symptoms, conditions, etc.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="code" sortKey="4" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="true"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>sex, age, condition, ...</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ObservationCriterion"
                                             attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ObservationCriterion"
                                             attributeName="code"/>
                     <mif:type name="CD"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="ObservationType"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="text" type="ST" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="text" sortKey="6" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="text"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ObservationCriterion"
                                             attributeName="text"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ObservationCriterion"
                                             attributeName="text"/>
                     <mif:type name="ST"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="value" type="ANY" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>A value representing the specific condition, e.g. renal failure, impaired liver function (as value code), or systolic blood pressure &lt; 100 mmHg (as numeric range, IVL&lt;PQ&gt;), etc.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="value" sortKey="7" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="true"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>CE, SET of CE or IVL of PQ</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Observation" attributeName="value"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ObservationCriterion"
                                             attributeName="value"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ObservationCriterion"
                                             attributeName="value"/>
                     <mif:type name="ANY"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="ActClassObservation" use="optional" default="OBS"/>
      <xs:attribute name="moodCode" type="ActMood" use="optional" fixed="EVN.CRT"/>
      <xs:attribute name="negationInd" type="bl" use="optional" default="false"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.ObservationDefinition">
      <xs:annotation>
         <xs:documentation>Specifies a kind of Observation which is used for calculated dosage.</xs:documentation>
         <xs:appinfo>
            <mif:class name="ObservationDefinition" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Observation"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="ObservationDefinition"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="ObservationDefinition"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="code" type="CE" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="code" sortKey="3" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="true"
                                 conformance="R">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ObservationDefinition"
                                             attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ObservationDefinition"
                                             attributeName="code"/>
                     <mif:type name="CE"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="ObservationType"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="ActClassObservation" use="optional" default="OBS"/>
      <xs:attribute name="moodCode" type="ActMood" use="optional" fixed="DEF"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.ObservationMedia">
      <xs:annotation>
         <xs:documentation>Holds multi-medial content, that is logically a part of a product labeling document, but may be stored outside the document and incorporated by reference. Multimedia that is integral to a document, and part of the attestable content of the document, requires the use of observationMedia. (An example might be the molecular structure for a drug in a drug product labeling document.) Multimedia that is simply referenced by the document and not an integral part of the document can use linkHtml. The XML ID attribute on the observationMedia element is used by the renderMultiMedia element (of the Narrative Block) to identify the media to be rendered.</xs:documentation>
         <xs:appinfo>
            <mif:class name="ObservationMedia" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Observation"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="ObservationMedia"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="ObservationMedia"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="id" type="II" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>An ObservationMedia class contains an optional instance identifier.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="id" sortKey="3" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ObservationMedia" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ObservationMedia" attributeName="id"/>
                     <mif:type name="II"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="text" type="ST" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="text" sortKey="4" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>Detailed plain-text for those disabled to perceive the original media.</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="text"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ObservationMedia" attributeName="text"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ObservationMedia" attributeName="text"/>
                     <mif:type name="ST"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="value" type="ED" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>Encoded data (ED) which contains the media data either inline or by reference.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="value" sortKey="5" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="true"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>multimedia type and content or reference</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Observation" attributeName="value"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ObservationMedia" attributeName="value"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ObservationMedia" attributeName="value"/>
                     <mif:type name="ED"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="ID" type="xs:ID"/>
      <xs:attribute name="classCode" type="ActClassObservation" use="optional" default="OBS"/>
      <xs:attribute name="moodCode" type="ActMood" use="optional" fixed="EVN"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Organization">
      <xs:annotation>
         <xs:documentation>The AssignedEntity.representedOrganization provides details about the organization (the manufacturer or owner of the marketing authority) for which the author is working. This specifies the organization from which the document originates and that is in charge of maintaining the document (e.g., the owner of the marketing authority or a contractor in charge of the labeling), commonly called the manufacturer.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Organization" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Organization"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Organization"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Organization"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="id" type="II" minOccurs="0" maxOccurs="unbounded">
            <xs:annotation>
               <xs:documentation>For the labeler Organization this id should be, in the U.S., the NDC code segment for the labeler firm. This attribute would also be the only one specified for the Organization connected to the product via the manufacturer organization.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="id" sortKey="3" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>e.g. NDC labeler code</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Organization" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Organization" attributeName="id"/>
                     <mif:type name="II"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="name" type="ON" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="name" sortKey="4" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" attributeName="name"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Organization" attributeName="name"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Organization" attributeName="name"/>
                     <mif:type name="ON"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="telecom" type="TEL" minOccurs="0" maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="telecom" sortKey="5" minimumMultiplicity="0" maximumMultiplicity="*"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" attributeName="telecom"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Organization" attributeName="telecom"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Organization" attributeName="telecom"/>
                     <mif:type name="SET">
                        <mif:supplierBindingArgumentDatatype name="TEL"/>
                     </mif:type>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="addr" type="AD" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="addr" sortKey="6" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Organization" attributeName="addr"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Organization" attributeName="addr"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Organization" attributeName="addr"/>
                     <mif:type name="AD"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="contactParty" type="PORP_MT050032UV.ContactParty" nillable="true"
                     minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="contactParty" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="1">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="scopedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity"
                                             associationEndName="contactParty"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity"
                                             associationEndName="contactParty"/>
                     <mif:participantClass>
                        <mif:reference name="ContactParty"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="assignedEntity" type="PORP_MT050032UV.AssignedEntity2" nillable="true"
                     minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="assignedEntity" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="1">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="scopedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity"
                                             associationEndName="assignedEntity"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity"
                                             associationEndName="assignedEntity"/>
                     <mif:participantClass>
                        <mif:reference name="AssignedEntity2"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="EntityClassOrganization" use="optional" default="ORG"/>
      <xs:attribute name="determinerCode" type="EntityDeterminer" use="optional" fixed="INSTANCE"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.PackagedMedicine">
      <xs:annotation>
         <xs:documentation>A medicine in a container, or package. Thes class by this name is deprecated. Use the equivalent class named PackagedProduct instead.</xs:documentation>
         <xs:appinfo>
            <mif:class name="PackagedMedicine" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Container"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="PackagedMedicine"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="PackagedMedicine"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="code" type="CE" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>Specifies the product code for a packaged product (e.g., National Drug Code [NDC] in the U.S.)</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="code" sortKey="3" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>packaged medicine code, e.g., NDC</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="PackagedMedicine" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="PackagedMedicine" attributeName="code"/>
                     <mif:type name="CE"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="PackagedDrugProductEntity"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="formCode" type="CE" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>The package type, such as "box" or "bottle".</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="formCode" sortKey="4" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>package type</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Material" attributeName="formCode"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="PackagedMedicine"
                                             attributeName="formCode"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="PackagedMedicine"
                                             attributeName="formCode"/>
                     <mif:type name="CE"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="ContainerForm"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="asContent" type="PORP_MT050032UV.Content3" nillable="true" minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="asContent" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="playedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity" associationEndName="asContent"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity" associationEndName="asContent"/>
                     <mif:participantClass>
                        <mif:reference name="Content3"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="EntityClassContainer" use="optional" default="CONT"/>
      <xs:attribute name="determinerCode" type="EntityDeterminerDetermined" use="optional"
                    default="KIND"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.PackagedProduct">
      <xs:annotation>
         <xs:documentation>A product in a container, or package.</xs:documentation>
         <xs:appinfo>
            <mif:class name="PackagedProduct" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Container"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="PackagedProduct"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="PackagedProduct"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="code" type="CE" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>Specifies the product code for a packaged product (e.g., National Drug Code [NDC] in the U.S.)</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="code" sortKey="3" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>packaged product code, e.g., NDC</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="PackagedProduct" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="PackagedProduct" attributeName="code"/>
                     <mif:type name="CE"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="PackagedProductEntity"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="formCode" type="CE" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>The package type, such as "box" or "bottle".</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="formCode" sortKey="4" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>package type</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Material" attributeName="formCode"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="PackagedProduct"
                                             attributeName="formCode"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="PackagedProduct"
                                             attributeName="formCode"/>
                     <mif:type name="CE"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="ContainerForm"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="asContent" type="PORP_MT050032UV.Content3" nillable="true" minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="asContent" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="playedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity" associationEndName="asContent"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity" associationEndName="asContent"/>
                     <mif:participantClass>
                        <mif:reference name="Content3"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="EntityClassContainer" use="optional" default="CONT"/>
      <xs:attribute name="determinerCode" type="EntityDeterminerDetermined" use="optional"
                    default="KIND"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Part">
      <xs:annotation>
         <xs:documentation>Relates a multiple-component product (scoper) to one of its components (player). For example, a contraceptive product to its separate estrogen and progestin tablets in a single container. The quantity of each part is represented as the Part.quantity. (The quantity of the parent Medicine would be "1" for a single wheel containing both medications in this example.)</xs:documentation>
         <xs:appinfo>
            <mif:class name="Part" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="RoleHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Part"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Part"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="id" type="II" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="id" sortKey="2" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Part" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Part" attributeName="id"/>
                     <mif:type name="II"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="quantity" type="RTO_PQ_PQ" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>A ratio specifying the amount of a part (numerator) in an amount (denominator) of the whole Medicine. It is important to note that as all Role quantities the numerator and denominator stand for the amount of the exact kind of entity specified as the part and whole respectively, and not something else. For example, when the medicine is a kit with tablets being the parts, the numerator numbers the amount of tablets of the same kind in the kit. However, if the kit consists of 2 vial-packaged liquids, each vial holding 3 mL, the part quantity specifies the total amount of this liquid (e.g. 6 mL), not 2 (vials). Thus all quantities have the exact same interpretation which is important to draw any quantitative inference from these relationships (e.g. "how much ingredient is in a package?")</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="quantity" sortKey="3" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" attributeName="quantity"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Part" attributeName="quantity"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Part" attributeName="quantity"/>
                     <mif:type name="RTO">
                        <mif:supplierBindingArgumentDatatype name="PQ"/>
                        <mif:supplierBindingArgumentDatatype name="PQ"/>
                     </mif:type>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:choice>
            <xs:element name="partProduct" type="PORP_MT050032UV.Product" minOccurs="1" maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="partProductOrMedicine" minimumMultiplicity="1" maximumMultiplicity="1"
                                           isMandatory="true"
                                           conformance="R"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="player"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                                associationEndName="partProductOrMedicine"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                                associationEndName="partProductOrMedicine"/>
                        <mif:participantClassSpecialization className="Product" traversalName="partProduct"/>
                        <mif:participantClassSpecialization className="Medicine" traversalName="partMedicine"/>
                        <mif:participantClass>
                           <mif:reference name="ProductOrMedicine"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
            <xs:element name="partMedicine" type="PORP_MT050032UV.Medicine" minOccurs="1" maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="partProductOrMedicine" minimumMultiplicity="1" maximumMultiplicity="1"
                                           isMandatory="true"
                                           conformance="R"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="player"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                                associationEndName="partProductOrMedicine"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                                associationEndName="partProductOrMedicine"/>
                        <mif:participantClassSpecialization className="Product" traversalName="partProduct"/>
                        <mif:participantClassSpecialization className="Medicine" traversalName="partMedicine"/>
                        <mif:participantClass>
                           <mif:reference name="ProductOrMedicine"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
         </xs:choice>
         <xs:element name="subjectOf" type="PORP_MT050032UV.Subject7" nillable="true" minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="subjectOf" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="participation"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Role" associationEndName="subjectOf"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Role" associationEndName="subjectOf"/>
                     <mif:participantClass>
                        <mif:reference name="Subject7"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="consumedIn" type="PORP_MT050032UV.Consumable4" nillable="true"
                     minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="consumedIn" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="participation"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Role" associationEndName="consumedIn"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Role" associationEndName="consumedIn"/>
                     <mif:participantClass>
                        <mif:reference name="Consumable4"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="participation" type="PORP_MT050032UV.IndirectTarget" nillable="true"
                     minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="participation" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="participation"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Role" associationEndName="participation"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Role" associationEndName="participation"/>
                     <mif:participantClass>
                        <mif:reference name="IndirectTarget"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="RoleClass" use="optional" fixed="PART"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Part1">
      <xs:annotation>
         <xs:documentation>Relates a multiple-component product instance (scoper) to one of its component instances (player) consistent with the definition of Part linking the product (kind) with its part-product (kinds).</xs:documentation>
         <xs:appinfo>
            <mif:class name="Part1" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="RoleHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Part1"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Part1"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:choice>
            <xs:element name="partProductInstance" type="PORP_MT050032UV.ProductInstance" minOccurs="1"
                        maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="partProductOrDeviceLotOrInstance" minimumMultiplicity="1"
                                           maximumMultiplicity="1"
                                           isMandatory="true"
                                           conformance="R"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="player"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                                associationEndName="partProductOrDeviceLotOrInstance"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                                associationEndName="partProductOrDeviceLotOrInstance"/>
                        <mif:participantClassSpecialization className="ProductInstance" traversalName="partProductInstance"/>
                        <mif:participantClassSpecialization className="DeviceInstance" traversalName="partDeviceInstance"/>
                        <mif:participantClass>
                           <mif:reference name="ProductOrDeviceLotOrInstance"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
            <xs:element name="partDeviceInstance" type="PORP_MT050032UV.DeviceInstance" minOccurs="1"
                        maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="partProductOrDeviceLotOrInstance" minimumMultiplicity="1"
                                           maximumMultiplicity="1"
                                           isMandatory="true"
                                           conformance="R"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="player"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                                associationEndName="partProductOrDeviceLotOrInstance"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                                associationEndName="partProductOrDeviceLotOrInstance"/>
                        <mif:participantClassSpecialization className="ProductInstance" traversalName="partProductInstance"/>
                        <mif:participantClassSpecialization className="DeviceInstance" traversalName="partDeviceInstance"/>
                        <mif:participantClass>
                           <mif:reference name="ProductOrDeviceLotOrInstance"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
         </xs:choice>
         <xs:element name="subjectOf" type="PORP_MT050032UV.Subject" nillable="true" minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="subjectOf" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="participation"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Role" associationEndName="subjectOf"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Role" associationEndName="subjectOf"/>
                     <mif:participantClass>
                        <mif:reference name="Subject"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="RoleClass" use="optional" fixed="PART"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.PartOfAssembly">
      <xs:annotation>
         <xs:documentation>
Links the product as a component of a system or assembly. The system may be a defined product labeled elsewhere or it may be an anonymous product which is only used to specify that additional parts are also needed to make that system complete.
For example, a hose system used within several intravenous infusion pump systems would refer to those pump systems but would not describe the pump systems in detail. On the other hand, the label for one of those pumps (not including the hose system) would have to refer to the hose sytem in a similar manner.
The line:
&lt;manufacturedProduct&gt;
   &lt;code ... /&gt;
   &lt;name&gt;FlexiFuse Line&lt;/name&gt;
   &lt;asPartOfAssembly&gt;
     &lt;wholeProduct&gt;
       ... no code specified here ...
       &lt;part&gt;
           &lt;partProduct&gt;
               &lt;code ... /&gt;
               &lt;name&gt;PreciFuse Pump&lt;/name&gt;
           &lt;/partProduct&gt;
       &lt;/part&gt;
     &lt;/wholeProduct&gt;
   &lt;/asPartOfAssembly&gt;
&lt;/manufacturedProduct&gt;
	    
The pump itself:
&lt;manufacturedProduct&gt;
   &lt;code ... /&gt;
   &lt;name&gt;PreciFuse Pump&lt;/name&gt;
   &lt;asPartOfAssembly&gt;
       &lt;wholeProduct&gt;
         ... no code specified here ...
         &lt;part&gt;
           &lt;partProduct&gt;
               &lt;code ... /&gt;
               &lt;name&gt;FlexiFuse Line&lt;/name&gt;
           &lt;/partProduct&gt;
         &lt;/part&gt;
       &lt;/wholeProduct&gt;
   &lt;/asPartOfAssembly&gt;
&lt;/manufacturedProduct&gt;
	    
Notice that in either case the assembly itself remains anonymous because it has not a defined product code. Notice also that the pump itself does not come with the line, and hence the line cannot be described as a component of the pump.
However, let's assume that that same FlexiFuse line is also a part of kit comprised of the portable version of the PreciFuse Pump product and 10 such lines. In that case the kit that is sold under a specific registered product code would also be specified as an assembly with a code. In that case the other parts of the assembly need not be described:
&lt;manufacturedProduct&gt;
   &lt;code ... /&gt;
   &lt;name&gt;FlexiFuse Line&lt;/name&gt;
   &lt;asPartOfAssembly ... /&gt;
   &lt;asPartOfAssembly ... /&gt;
   &lt;asPartOfAssembly ... /&gt;
   &lt;asPartOfAssembly&gt;
     &lt;wholeProduct&gt;
       &lt;code .../&gt;
       &lt;name&gt;PreciFuse PorterPump Kit&lt;/name&gt;
     &lt;/wholeProduct&gt;
   &lt;/asPartOfAssembly&gt;
&lt;/manufacturedProduct&gt;
	    
and the the kit would be described as:
&lt;manufacturedProduct&gt;
   &lt;code ... /&gt;
   &lt;name&gt;PreciFuse PorterPump Kit&lt;/name&gt;
   &lt;part&gt;
     &lt;quantity value="1"/&gt;
     &lt;partProduct&gt;
       &lt;code .../&gt;
       &lt;name&gt;PreciFuse PorterPump&lt;/name&gt;
       &lt;formCode ... KIT .../&gt;
     &lt;/partProduct&gt;
   &lt;/part&gt;
   &lt;part&gt;
     &lt;quantity value="10"/&gt;
     &lt;partProduct&gt;
       &lt;code .../&gt;
       &lt;name&gt;FlexiFuse Line&lt;/name&gt;
     &lt;/partProduct&gt;
   &lt;/part&gt;
&lt;/manufacturedProduct&gt;
	    </xs:documentation>
         <xs:appinfo>
            <mif:class name="PartOfAssembly" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="RoleHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="PartOfAssembly"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="PartOfAssembly"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:choice>
            <xs:element name="wholeProduct" type="PORP_MT050032UV.Product" minOccurs="1" maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="wholeProductOrMedicine" minimumMultiplicity="1" maximumMultiplicity="1"
                                           isMandatory="true"
                                           conformance="R"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="scoper"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                                associationEndName="wholeProductOrMedicine"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                                associationEndName="wholeProductOrMedicine"/>
                        <mif:participantClassSpecialization className="Product" traversalName="wholeProduct"/>
                        <mif:participantClassSpecialization className="Medicine" traversalName="wholeMedicine"/>
                        <mif:participantClass>
                           <mif:reference name="ProductOrMedicine"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
            <xs:element name="wholeMedicine" type="PORP_MT050032UV.Medicine" minOccurs="1"
                        maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="wholeProductOrMedicine" minimumMultiplicity="1" maximumMultiplicity="1"
                                           isMandatory="true"
                                           conformance="R"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="scoper"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                                associationEndName="wholeProductOrMedicine"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                                associationEndName="wholeProductOrMedicine"/>
                        <mif:participantClassSpecialization className="Product" traversalName="wholeProduct"/>
                        <mif:participantClassSpecialization className="Medicine" traversalName="wholeMedicine"/>
                        <mif:participantClass>
                           <mif:reference name="ProductOrMedicine"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
         </xs:choice>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="RoleClass" use="optional" fixed="PART"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Performer">
      <xs:annotation>
         <xs:appinfo>
            <mif:class name="Performer" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Participation"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Performer"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Performer"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="assignedEntity" type="PORP_MT050032UV.AssignedEntity3" nillable="true"
                     minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="assignedEntity" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Participation" associationEndName="role"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Participation"
                                             associationEndName="assignedEntity"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Participation"
                                             associationEndName="assignedEntity"/>
                     <mif:participantClass>
                        <mif:reference name="AssignedEntity3"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ParticipationPhysicalPerformer" use="optional"
                    default="PRF"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Person">
      <xs:annotation>
         <xs:documentation>The AssignedEntity.assignedPerson, provides the details (e.g., name) about the person participating in the document as an author. Because assignedPerson is optional, it is possible to capture only information about the representedOrganization.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Person" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Person"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Person"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Person"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="name" type="PN" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="name" sortKey="3" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" attributeName="name"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Person" attributeName="name"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Person" attributeName="name"/>
                     <mif:type name="PN"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="EntityClass" use="optional" fixed="PSN"/>
      <xs:attribute name="determinerCode" type="EntityDeterminer" use="optional" fixed="INSTANCE"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.PharmaceuticalClass">
      <xs:annotation>
         <xs:documentation>A generalization of Medicine, Substance and ActiveMoiety, can specify any or all of (a) cellular/molecular action (e.g., Ca-channel blocker); (b) physiologic action (e.g., vasodilator); and (c) molecular/chemical class (e.g. aminopenicillin). Note: since release 4 of this specification this class will be deprecated. Use MaterialKind instead, which has existed since release 2 of this specification and which has the same constraints and, the same meaning, relates directly to is use in specifying drug-drug-interactions and adjunct treatments, and is named less specifically for medications such that it can be used for classifying devices and other products as well.</xs:documentation>
         <xs:appinfo>
            <mif:class name="PharmaceuticalClass" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Material"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="PharmaceuticalClass"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="PharmaceuticalClass"/>
               <mif:annotations>
                  <mif:designComments>
                     <mif:text>
                        <mif:p>PharmaceuticalClass special name deprecated in R4 for functionally equivalent MaterialKind.</mif:p>
                     </mif:text>
                  </mif:designComments>
               </mif:annotations>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="code" type="CE" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>One systematic terminology for the pharmaceutical classes is the U.S. Veteran Adminstration's National Drug File (NDF-RT).</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="code" sortKey="3" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="true"
                                 conformance="R">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="PharmaceuticalClass"
                                             attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="PharmaceuticalClass"
                                             attributeName="code"/>
                     <mif:type name="CE"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="EntityCode"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="EntityClassMaterial" use="optional" default="MAT"/>
      <xs:attribute name="determinerCode" type="EntityDeterminerDetermined" use="optional"
                    default="KIND"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Policy">
      <xs:annotation>
         <xs:documentation>The purpose of this element is to capture the controlled substance classification or schedule of a drug (e.g., DEA schedule in the U.S.).</xs:documentation>
         <xs:appinfo>
            <mif:class name="Policy" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Policy"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Policy"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="code" type="CE" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>The code for the specific controlled substance schedule.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="code" sortKey="3" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="true"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>DEA schedule, Rx vs. OTC</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Policy" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Policy" attributeName="code"/>
                     <mif:type name="CE"/>
                     <mif:supplierDomainSpecification codingStrength="CNE" domainName="RegulationPolicyActCode"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="ActClassPolicy" use="optional"/>
      <xs:attribute name="moodCode" type="ActMood" use="optional" fixed="EVN"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Precondition">
      <xs:annotation>
         <xs:documentation>An ActRelationship that links ClinicalSitutaionCriteria with the pivotal SubstanceAdministration. A ClinicalSituationCriterion is a choice of either ObservationCriterion, SubstanceAdministrationCriterion or general ActCriterion. These preconditions further limit the indication to a specific population or other clinical situation. Multiple preconditions can be specified. When multiple criteria are specified, they are logically conjoined (AND), i.e., they must all hold true.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Precondition" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Precondition"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Precondition"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="pauseQuantity" type="PQ" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>Specifies a certain time constraint between the clinical situation and the use of the drug. E.g., "use 15 minutes before exercise" or "X should be given at least 8 hours after Y".</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="pauseQuantity" sortKey="2" minimumMultiplicity="0"
                                 maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                             attributeName="pauseQuantity"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Precondition"
                                             attributeName="pauseQuantity"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Precondition"
                                             attributeName="pauseQuantity"/>
                     <mif:type name="PQ"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:choice>
            <xs:element name="actCriterion" type="PORP_MT050032UV.ActCriterion" nillable="true"
                        minOccurs="1"
                        maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="clinicalSituationCriterion" minimumMultiplicity="1"
                                           maximumMultiplicity="1"
                                           isMandatory="false"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                                associationEndName="target"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="ActRelationship"
                                                associationEndName="clinicalSituationCriterion"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="ActRelationship"
                                                associationEndName="clinicalSituationCriterion"/>
                        <mif:participantClassSpecialization className="ActCriterion" traversalName="actCriterion"/>
                        <mif:participantClassSpecialization className="ObservationCriterion" traversalName="observationCriterion"/>
                        <mif:participantClassSpecialization className="SubstanceAdministrationCriterion"
                                                            traversalName="substanceAdministrationCriterion"/>
                        <mif:participantClass>
                           <mif:reference name="ClinicalSituationCriterion"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
            <xs:element name="observationCriterion" type="PORP_MT050032UV.ObservationCriterion"
                        nillable="true"
                        minOccurs="1"
                        maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="clinicalSituationCriterion" minimumMultiplicity="1"
                                           maximumMultiplicity="1"
                                           isMandatory="false"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                                associationEndName="target"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="ActRelationship"
                                                associationEndName="clinicalSituationCriterion"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="ActRelationship"
                                                associationEndName="clinicalSituationCriterion"/>
                        <mif:participantClassSpecialization className="ActCriterion" traversalName="actCriterion"/>
                        <mif:participantClassSpecialization className="ObservationCriterion" traversalName="observationCriterion"/>
                        <mif:participantClassSpecialization className="SubstanceAdministrationCriterion"
                                                            traversalName="substanceAdministrationCriterion"/>
                        <mif:participantClass>
                           <mif:reference name="ClinicalSituationCriterion"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
            <xs:element name="substanceAdministrationCriterion"
                        type="PORP_MT050032UV.SubstanceAdministrationCriterion"
                        nillable="true"
                        minOccurs="1"
                        maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="clinicalSituationCriterion" minimumMultiplicity="1"
                                           maximumMultiplicity="1"
                                           isMandatory="false"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                                associationEndName="target"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="ActRelationship"
                                                associationEndName="clinicalSituationCriterion"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="ActRelationship"
                                                associationEndName="clinicalSituationCriterion"/>
                        <mif:participantClassSpecialization className="ActCriterion" traversalName="actCriterion"/>
                        <mif:participantClassSpecialization className="ObservationCriterion" traversalName="observationCriterion"/>
                        <mif:participantClassSpecialization className="SubstanceAdministrationCriterion"
                                                            traversalName="substanceAdministrationCriterion"/>
                        <mif:participantClass>
                           <mif:reference name="ClinicalSituationCriterion"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
         </xs:choice>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ActRelationshipType" use="optional" fixed="PRCN"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.PrimaryPerformer">
      <xs:annotation>
         <xs:appinfo>
            <mif:class name="PrimaryPerformer" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Participation"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="PrimaryPerformer"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="PrimaryPerformer"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="actDefinition" type="PORP_MT050032UV.ActDefinition" nillable="true"
                     minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="actDefinition" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="1">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Participation" associationEndName="act"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Participation"
                                             associationEndName="actDefinition"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Participation"
                                             associationEndName="actDefinition"/>
                     <mif:participantClass>
                        <mif:reference name="ActDefinition"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ParticipationType" use="optional" fixed="PPRF"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.ProcedureCriterion">
      <xs:annotation>
         <xs:appinfo>
            <mif:class name="ProcedureCriterion" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Procedure"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="ProcedureCriterion"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="ProcedureCriterion"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="code" type="CD" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="code" sortKey="3" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ProcedureCriterion" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ProcedureCriterion" attributeName="code"/>
                     <mif:type name="CD"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="ActProcedureCode"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="ActClassProcedure" use="optional" default="PROC"/>
      <xs:attribute name="moodCode" type="ActMood" use="optional" fixed="EVN.CRT"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Product">
      <xs:annotation>
         <xs:appinfo>
            <mif:class name="Product" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ManufacturedMaterial"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Product"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Product"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="code" type="CE" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="code" sortKey="3" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>packaging independent NDC, unique device code, etc.</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Product" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Product" attributeName="code"/>
                     <mif:type name="CE"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="ProductEntityType"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="name" type="EN" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="name" sortKey="4" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>proprietary name</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" attributeName="name"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Product" attributeName="name"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Product" attributeName="name"/>
                     <mif:type name="EN"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="formCode" type="CE" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="formCode" sortKey="5" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>dosage form</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Material" attributeName="formCode"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Product" attributeName="formCode"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Product" attributeName="formCode"/>
                     <mif:type name="CE"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="MaterialForm"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="asSpecializedKind" type="PORP_MT050032UV.SpecializedKind" nillable="true"
                     minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="asSpecializedKind" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="playedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity"
                                             associationEndName="asSpecializedKind"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity"
                                             associationEndName="asSpecializedKind"/>
                     <mif:participantClass>
                        <mif:reference name="SpecializedKind"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="asEntityWithGeneric" type="PORP_MT050032UV.EntityWithGeneric"
                     nillable="true"
                     minOccurs="0"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="asEntityWithGeneric" minimumMultiplicity="0" maximumMultiplicity="1"
                                        isMandatory="false"
                                        conformance="R"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="playedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity"
                                             associationEndName="asEntityWithGeneric"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity"
                                             associationEndName="asEntityWithGeneric"/>
                     <mif:participantClass>
                        <mif:reference name="EntityWithGeneric"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="asEquivalentEntity" type="PORP_MT050032UV.EquivalentEntity"
                     nillable="true"
                     minOccurs="0"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="asEquivalentEntity" minimumMultiplicity="0" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="playedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity"
                                             associationEndName="asEquivalentEntity"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity"
                                             associationEndName="asEquivalentEntity"/>
                     <mif:participantClass>
                        <mif:reference name="EquivalentEntity"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="ingredient" type="PORP_MT050032UV.Ingredient" nillable="true"
                     minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="ingredient" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="scopedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity" associationEndName="ingredient"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity" associationEndName="ingredient"/>
                     <mif:participantClass>
                        <mif:reference name="Ingredient"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="asContent" type="PORP_MT050032UV.Content" nillable="true" minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="asContent" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="playedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity" associationEndName="asContent"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity" associationEndName="asContent"/>
                     <mif:participantClass>
                        <mif:reference name="Content"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="asPartOfAssembly" type="PORP_MT050032UV.PartOfAssembly" nillable="true"
                     minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="asPartOfAssembly" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="playedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity"
                                             associationEndName="asPartOfAssembly"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity"
                                             associationEndName="asPartOfAssembly"/>
                     <mif:participantClass>
                        <mif:reference name="PartOfAssembly"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="part" type="PORP_MT050032UV.Part" nillable="true" minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="part" minimumMultiplicity="0" maximumMultiplicity="*" isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="scopedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity" associationEndName="part"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity" associationEndName="part"/>
                     <mif:participantClass>
                        <mif:reference name="Part"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="instanceOfKind" type="PORP_MT050032UV.InstanceOfKind2" nillable="true"
                     minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="instanceOfKind" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="scopedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity"
                                             associationEndName="instanceOfKind"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity"
                                             associationEndName="instanceOfKind"/>
                     <mif:participantClass>
                        <mif:reference name="InstanceOfKind2"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="EntityClassManufacturedMaterial" use="optional"
                    default="MMAT"/>
      <xs:attribute name="determinerCode" type="EntityDeterminerDetermined" use="optional"
                    default="KIND"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Product1">
      <xs:annotation>
         <xs:appinfo>
            <mif:class name="Product1" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Participation"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Product1"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Product1"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="manufacturedProduct" type="PORP_MT050032UV.ManufacturedProduct3"
                     nillable="true"
                     minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="manufacturedProduct" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="1">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Participation" associationEndName="role"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Participation"
                                             associationEndName="manufacturedProduct"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Participation"
                                             associationEndName="manufacturedProduct"/>
                     <mif:participantClass>
                        <mif:reference name="ManufacturedProduct3"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ParticipationType" use="optional" fixed="PRD"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.ProductEvent">
      <xs:annotation>
         <xs:documentation>A significant event in the life of a product instance, including, but not limited to recall, refurbishing, salvaging, and maintenance procedures.</xs:documentation>
         <xs:appinfo>
            <mif:class name="ProductEvent" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="ProductEvent"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="ProductEvent"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="code" type="CV" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>Code specifying the nature of the product event, e.g., recall, refurbishing, salvaging.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="code" sortKey="3" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>e.g. recall, refurbished, salvaged</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ProductEvent" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ProductEvent" attributeName="code"/>
                     <mif:type name="CV"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="ActProductInstanceEvent"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="text" type="ST" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="text" sortKey="4" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="text"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ProductEvent" attributeName="text"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ProductEvent" attributeName="text"/>
                     <mif:type name="ST"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="effectiveTime" type="TS" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>The time when the event occurred. Often specified only to the precision of a date.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="effectiveTime" sortKey="5" minimumMultiplicity="0"
                                 maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="effectiveTime"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ProductEvent"
                                             attributeName="effectiveTime"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ProductEvent"
                                             attributeName="effectiveTime"/>
                     <mif:type name="TS"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="performer" type="PORP_MT050032UV.Performer" nillable="true" minOccurs="0"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="performer" minimumMultiplicity="0" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" associationEndName="participation"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Act" associationEndName="performer"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Act" associationEndName="performer"/>
                     <mif:participantClass>
                        <mif:reference name="Performer"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="ActClassRoot" use="optional" default="ACT"/>
      <xs:attribute name="moodCode" type="ActMood" use="optional" fixed="EVN"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.ProductInstance">
      <xs:annotation>
         <xs:documentation>A product instance is (a) an individual product instance, i.e., an individually identified thing with a serial number; (b) a product lot, i.e., a set of things of the same kind  (e.g., 1000 tablets) or an amorphous mass (e.g., 100 L of  a liquid raw material), or (c) any subset, member, or portion of a product lot. The distinction between an individual thing and a lot is made in the quantity attibute, which is set to 1 (one) for individual items, or any number e.g., 1000 or amount 100 L for sets of things or amorphous masses respectively.</xs:documentation>
         <xs:appinfo>
            <mif:class name="ProductInstance" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ManufacturedMaterial"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="ProductInstance"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="ProductInstance"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="id" type="II" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>A unique instance id. If the product instance represents a single individual product (quantity = 1) then this id is also called the "serial number". If the product instance represents a product lot, the id is also called the "lot number".</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="id" sortKey="3" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="true"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>lot number, serial number for individual products</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ProductInstance" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ProductInstance" attributeName="id"/>
                     <mif:type name="II"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="quantity" type="PQ" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>
The amount of product comprised by this product instance. An individually identified thing with a serial number always has quantity set to 1 (one). A product lot, i.e., a set of things of the same kind has quantity set to the lot size. E.g., 1000 tablets or 100 L of a liquid raw material.
Constraint: the dimension of this attribute must be the same as the dimension of the package quantity numerator and of the ingredient quantity denominator.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="quantity" sortKey="4" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>lot size, 1 = individual instance</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" attributeName="quantity"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ProductInstance"
                                             attributeName="quantity"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ProductInstance"
                                             attributeName="quantity"/>
                     <mif:type name="PQ"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="expirationTime" type="IVL_TS" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>An interval of time specifying the begin and end of the time range in which the product is considered safe and effective for use. If only an expiration date is known, this is represented in the high boundary of the interval.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="expirationTime" sortKey="5" minimumMultiplicity="0"
                                 maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="ManufacturedMaterial"
                                             attributeName="expirationTime"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ProductInstance"
                                             attributeName="expirationTime"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ProductInstance"
                                             attributeName="expirationTime"/>
                     <mif:type name="IVL">
                        <mif:supplierBindingArgumentDatatype name="TS"/>
                     </mif:type>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="asManufacturedProduct" type="PORP_MT050032UV.ManufacturedProduct2"
                     nillable="true"
                     minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="asManufacturedProduct" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="playedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity"
                                             associationEndName="asManufacturedProduct"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity"
                                             associationEndName="asManufacturedProduct"/>
                     <mif:participantClass>
                        <mif:reference name="ManufacturedProduct2"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="asMember" type="PORP_MT050032UV.Member" nillable="true" minOccurs="0"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="asMember" minimumMultiplicity="0" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="playedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity" associationEndName="asMember"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity" associationEndName="asMember"/>
                     <mif:participantClass>
                        <mif:reference name="Member"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="asInstanceOfKind" type="PORP_MT050032UV.InstanceOfKind" nillable="true"
                     minOccurs="0"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="asInstanceOfKind" minimumMultiplicity="0" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="playedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity"
                                             associationEndName="asInstanceOfKind"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity"
                                             associationEndName="asInstanceOfKind"/>
                     <mif:participantClass>
                        <mif:reference name="InstanceOfKind"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="part" type="PORP_MT050032UV.Part1" nillable="true" minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="part" minimumMultiplicity="0" maximumMultiplicity="*" isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="scopedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity" associationEndName="part"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity" associationEndName="part"/>
                     <mif:participantClass>
                        <mif:reference name="Part1"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="ingredient" type="PORP_MT050032UV.Ingredient1" nillable="true"
                     minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="ingredient" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="scopedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity" associationEndName="ingredient"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity" associationEndName="ingredient"/>
                     <mif:participantClass>
                        <mif:reference name="Ingredient1"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="member" type="PORP_MT050032UV.Member1" nillable="true" minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="member" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Entity" associationEndName="scopedRole"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Entity" associationEndName="member"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Entity" associationEndName="member"/>
                     <mif:participantClass>
                        <mif:reference name="Member1"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="EntityClassManufacturedMaterial" use="optional"
                    default="MMAT"/>
      <xs:attribute name="determinerCode" type="EntityDeterminer" use="optional" fixed="INSTANCE"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Protocol">
      <xs:annotation>
         <xs:documentation>Specifies a safe use protocol wherein a substance administration is recommended to be accompanied by monitoring observations, i.e. tests such as drug level tests, pharamacokinetic parameter tests (renal function), or adverse effect tests (hypotension, liver enzymes) required.  This Protocol contains MonitoringObservation steps and maintenance goals as MonitoringObservationCriteria.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Protocol" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Protocol"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Protocol"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="maintenanceGoal" type="PORP_MT050032UV.MaintenanceGoal1" nillable="true"
                     minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="maintenanceGoal" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act"
                                             associationEndName="outboundRelationship"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Act"
                                             associationEndName="maintenanceGoal"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Act"
                                             associationEndName="maintenanceGoal"/>
                     <mif:participantClass>
                        <mif:reference name="MaintenanceGoal1"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="component" type="PORP_MT050032UV.Component2" nillable="true"
                     minOccurs="1"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="component" minimumMultiplicity="1" maximumMultiplicity="*"
                                        isMandatory="false"
                                        conformance="R"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act"
                                             associationEndName="outboundRelationship"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Act" associationEndName="component"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Act" associationEndName="component"/>
                     <mif:participantClass>
                        <mif:reference name="Component2"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="ActClassRoot" use="optional" default="ACT"/>
      <xs:attribute name="moodCode" type="ActMood" use="optional" fixed="DEF"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Reason">
      <xs:annotation>
         <xs:documentation>An ActRelationship of type "reason" representing the indication of the substance administration by linking to an observation criterion. The typeCode of the reason ActRelationship can be further refined to indicate different motivations, such as therapeutic reason (as a remedy), prophylactic reason (as a means of prevention), or as diagnostic reason (something done to diagnose the disease.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Reason" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Reason"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Reason"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:choice>
            <xs:element name="indicationObservationCriterion"
                        type="PORP_MT050032UV.IndicationObservationCriterion"
                        nillable="true"
                        minOccurs="1"
                        maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="indication" minimumMultiplicity="1" maximumMultiplicity="1"
                                           isMandatory="false"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                                associationEndName="target"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="ActRelationship"
                                                associationEndName="indication"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="ActRelationship"
                                                associationEndName="indication"/>
                        <mif:participantClassSpecialization className="IndicationObservationCriterion"
                                                            traversalName="indicationObservationCriterion"/>
                        <mif:participantClassSpecialization className="ProcedureCriterion" traversalName="procedureCriterion"/>
                        <mif:participantClass>
                           <mif:reference name="Indication"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
            <xs:element name="procedureCriterion" type="PORP_MT050032UV.ProcedureCriterion"
                        nillable="true"
                        minOccurs="1"
                        maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="indication" minimumMultiplicity="1" maximumMultiplicity="1"
                                           isMandatory="false"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                                associationEndName="target"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="ActRelationship"
                                                associationEndName="indication"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="ActRelationship"
                                                associationEndName="indication"/>
                        <mif:participantClassSpecialization className="IndicationObservationCriterion"
                                                            traversalName="indicationObservationCriterion"/>
                        <mif:participantClassSpecialization className="ProcedureCriterion" traversalName="procedureCriterion"/>
                        <mif:participantClass>
                           <mif:reference name="Indication"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
         </xs:choice>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ActRelationshipReason_fixed" use="optional"
                    default="RSON"/>
      <xs:attribute name="negationInd" type="bl" use="optional" default="false"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.RelatedDocument">
      <xs:annotation>
         <xs:documentation>A reference to another Document. The set of attributes in this class has the purpose of identifying the related document by identifiers only. To learn the contents of the related document, one needs to retrieve that document by the identifier(s) provided here.</xs:documentation>
         <xs:appinfo>
            <mif:class name="RelatedDocument" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Document"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="RelatedDocument"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="RelatedDocument"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="id" type="II" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>Provides unambiguous explicit identification of documents and document revisions. When the RelatedDocument is used to indicate versioning, then each version has a unique document id, and the RelatedDocument.id references the previous document version.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="id" sortKey="3" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="true"
                                 conformance="R">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="RelatedDocument" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="RelatedDocument" attributeName="id"/>
                     <mif:type name="II"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="setId" type="II" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>Can be used to support conventional revision numbering in addition to the explicit links to the ancestor versions using the RelatedDocument.id. One example scenario is: The new replacement Document gets a new globally unique id value, and uses the same value for setId as the RelatedDocument being replaced, and increments the value of versionNumber. The RelatedDocument is then considered superseded, but is still retained in the system for historical reference.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="setId" sortKey="4" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="ContextStructure" attributeName="setId"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="RelatedDocument" attributeName="setId"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="RelatedDocument" attributeName="setId"/>
                     <mif:type name="II"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="versionNumber" type="INT" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>Can be used to support conventional revision numbering in addition to the explicit links to the ancestor versions using the RelatedDocument.id. One example scenario is: The new replacement Document gets a new globally unique id value, and uses the same value for setId as the RelatedDocument being replaced, and increments the value of versionNumber by 1. (If used, the versionNumber will be incremented by one when a document is replaced, but can also be incremented more often to meet local requirements.) The parent document is considered superseded, but is still retained in the system for historical reference.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="versionNumber" sortKey="5" minimumMultiplicity="0"
                                 maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="ContextStructure"
                                             attributeName="versionNumber"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="RelatedDocument"
                                             attributeName="versionNumber"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="RelatedDocument"
                                             attributeName="versionNumber"/>
                     <mif:type name="INT"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="ActClassDocument" use="optional" default="DOC"/>
      <xs:attribute name="moodCode" type="ActMood" use="optional" fixed="EVN"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.RelatedDocument1">
      <xs:annotation>
         <xs:documentation>One or more specific relationships between documents. These relationships rely on document identifiers described above.</xs:documentation>
         <xs:appinfo>
            <mif:class name="RelatedDocument1" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="RelatedDocument1"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="RelatedDocument1"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="relatedDocument" type="PORP_MT050032UV.RelatedDocument" nillable="true"
                     minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="relatedDocument" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="4">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                             associationEndName="target"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ActRelationship"
                                             associationEndName="relatedDocument"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ActRelationship"
                                             associationEndName="relatedDocument"/>
                     <mif:participantClass>
                        <mif:reference name="RelatedDocument"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="y_ActRelationshipDocument" use="required"/>
      <xs:attribute name="contextConductionInd" type="bl" use="optional" default="false"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.ReplacementOf">
      <xs:annotation>
         <xs:documentation>An explicit representation of the relationships between versions of sections. Whether and how this information is used depends on the document management system in use. A replacement section replaces an existing section.</xs:documentation>
         <xs:appinfo>
            <mif:class name="ReplacementOf" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="ReplacementOf"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="ReplacementOf"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="sectionReplaced" type="PORP_MT050032UV.SectionReplaced" nillable="true"
                     minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="sectionReplaced" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                             associationEndName="target"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ActRelationship"
                                             associationEndName="sectionReplaced"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ActRelationship"
                                             associationEndName="sectionReplaced"/>
                     <mif:participantClass>
                        <mif:reference name="SectionReplaced"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ActRelationshipReplacement" use="optional" default="RPLC"/>
      <xs:attribute name="contextConductionInd" type="bl" use="optional" default="false"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Risk">
      <xs:annotation>
         <xs:documentation>An ActRelationship linking an Issue to a risk, i.e. a coded ConsequenceObservation criterion with information about severity and frequency of the undesired outcome.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Risk" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Risk"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Risk"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="consequenceObservation" type="PORP_MT050032UV.ConsequenceObservation"
                     nillable="true"
                     minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="consequenceObservation" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                             associationEndName="target"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ActRelationship"
                                             associationEndName="consequenceObservation"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ActRelationship"
                                             associationEndName="consequenceObservation"/>
                     <mif:participantClass>
                        <mif:reference name="ConsequenceObservation"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ActRelationshipType" use="optional" fixed="RISK"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Section">
      <xs:annotation>
         <xs:documentation>
Provides a means of organizing the product labeling content into the commonly understood sections generally found in these documents. The Section class is a container used to wrap other containers. A section element can occur in the StructuredBody, or can be nested within another Section. A section can also be replaced by another section. A section can contain nested section elements or other structures such as observations. The SPL section contains the actual product labeling text and graphics to be rendered.  There are three logical components of the SPL section:General section information.Information about participants in creation of the section.The actual product labeling text and graphics to be included in the label section (and which will be rendered), along with structured data elements (that may be used for machine processing).
The mechanisms to uniquely identify a specific product labeling section, to indicate a standard type code and name for the section, and to include a local name for the section (e.g. realm or language specific name; possibly constrained by the type code) are all included.
Note the section element contains an optional local identifier (represented as an XML ID attribute) that can serve as the target of an XML reference.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Section" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Section"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Section"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="id" type="II" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>A globally-unique instance identifier, which is different from the XML ID attribute; see the HL7 Data Types specification for more information about use of globally-unique instance identifiers.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="id" sortKey="3" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="true"
                                 conformance="R">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Section" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Section" attributeName="id"/>
                     <mif:type name="II"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="code" type="CE" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>A code that describes (but does not guarantee) the content of the section. The externally-defined vocabulary domain for Section.code may be drawn from LOINC. However, because the coding strength is CWE, the code set may be extended locally. Examples of possible section codes include: Indications and usage, Dosage and administration, Contraindications, Warnings, Drug interactions, Adverse reactions</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="code" sortKey="4" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Section" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Section" attributeName="code"/>
                     <mif:type name="CE"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="DocumentSectionType"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="title" type="StrucDoc.Title" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>An optional free text entry of the human readable title of the section. It is the title of a section that is rendered. The title describes (but does not guarantee) the content of the section. (It is important to note that title is optional, and sections should be created for logical sub-units of the document, whether they have titles or not.)</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="title" sortKey="5" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>XML Title content</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="title"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Section" attributeName="title"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Section" attributeName="title"/>
                     <mif:type name="ED"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="text" type="StrucDoc.Text" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>
The attribute that holds narrative to be rendered and is a special hand-crafted content model (the same as Section.text in CDA) that is part of the SPL standard. The SPL schema incorporates by reference the NarrativeBlock schema for this content model. The content model for Section.text is defined by the Clinical Document Architecture specification (currently section 4.3.5  Section Narrative Block), to which normative reference is hereby made.
While the Narrative Block schema defined by the Clinical Document Architecture is the only allowed content model for Section.text. Updates have been made to it since the last release and ballot of CDA in collaboration between the Structured Document Technical Committee and the SPL Group.
The content revised attribute has an additional value of revised in addition to the existing values insert and delete.  This can be used to mark text as revised without specifying in detail the nature of the change.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="text" sortKey="6" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>NarrativeBlock content</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="text"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Section" attributeName="text"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Section" attributeName="text"/>
                     <mif:type name="ED"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="effectiveTime" type="IVL_TS" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>Interval of time, specifying the section origination time, i.e., when the section was created.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="effectiveTime" sortKey="7" minimumMultiplicity="0"
                                 maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="effectiveTime"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Section" attributeName="effectiveTime"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Section" attributeName="effectiveTime"/>
                     <mif:type name="IVL">
                        <mif:supplierBindingArgumentDatatype name="TS"/>
                     </mif:type>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="confidentialityCode" type="CE" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>Can override the confidentialityCode attribute in Document.</xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="confidentialityCode" sortKey="8" minimumMultiplicity="0"
                                 maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="confidentialityCode"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Section"
                                             attributeName="confidentialityCode"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Section"
                                             attributeName="confidentialityCode"/>
                     <mif:type name="CE"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="Confidentiality"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="languageCode" type="CS" minOccurs="0" maxOccurs="1">
            <xs:annotation>
               <xs:documentation>Specifies the human language of character in the same way that Document.languageCode works. Language is a contextual component of SPL, where the value expressed in the header holds true for the entire document, unless overridden by a nested value </xs:documentation>
               <xs:appinfo>
                  <mif:attribute name="languageCode" sortKey="9" minimumMultiplicity="0" maximumMultiplicity="1"
                                 isMandatory="false">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="languageCode"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Section" attributeName="languageCode"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Section" attributeName="languageCode"/>
                     <mif:type name="CS"/>
                     <mif:supplierDomainSpecification codingStrength="CNE" domainName="HumanLanguage"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="author" type="PORP_MT050032UV.Author" nillable="true" minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="author" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="1">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" associationEndName="participation"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Act" associationEndName="author"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Act" associationEndName="author"/>
                     <mif:participantClass>
                        <mif:reference name="Author"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="replacementOf" type="PORP_MT050032UV.ReplacementOf" nillable="true"
                     minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="replacementOf" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act"
                                             associationEndName="outboundRelationship"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Act" associationEndName="replacementOf"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Act" associationEndName="replacementOf"/>
                     <mif:participantClass>
                        <mif:reference name="ReplacementOf"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="subjectOf" type="PORP_MT050032UV.Subject9" nillable="true" minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="subjectOf" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act"
                                             associationEndName="inboundRelationship"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Act" associationEndName="subjectOf"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Act" associationEndName="subjectOf"/>
                     <mif:participantClass>
                        <mif:reference name="Subject9"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="subject" type="PORP_MT050032UV.Subject5" nillable="true" minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="subject" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" associationEndName="participation"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Act" associationEndName="subject"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Act" associationEndName="subject"/>
                     <mif:participantClass>
                        <mif:reference name="Subject5"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="excerpt" type="PORP_MT050032UV.ExcerptFrom" nillable="true" minOccurs="0"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="excerpt" minimumMultiplicity="0" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act"
                                             associationEndName="inboundRelationship"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Act" associationEndName="excerpt"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Act" associationEndName="excerpt"/>
                     <mif:participantClass>
                        <mif:reference name="ExcerptFrom"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="component" type="PORP_MT050032UV.Component5" nillable="true"
                     minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="component" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act"
                                             associationEndName="outboundRelationship"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Act" associationEndName="component"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Act" associationEndName="component"/>
                     <mif:participantClass>
                        <mif:reference name="Component5"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="ID" type="xs:ID"/>
      <xs:attribute name="classCode" type="ActClass" use="optional" fixed="DOCSECT"/>
      <xs:attribute name="moodCode" type="ActMood" use="optional" fixed="EVN"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.SectionReplaced">
      <xs:annotation>
         <xs:documentation>A section that is related to the section it replaces through the replacementOf relationship (an ActRelationship clone).</xs:documentation>
         <xs:appinfo>
            <mif:class name="SectionReplaced" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="SectionReplaced"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="SectionReplaced"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="id" type="II" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="id" sortKey="3" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="true"
                                 conformance="R">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="SectionReplaced" attributeName="id"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="SectionReplaced" attributeName="id"/>
                     <mif:type name="II"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="ID" type="xs:ID"/>
      <xs:attribute name="classCode" type="ActClass" use="optional" fixed="DOCSECT"/>
      <xs:attribute name="moodCode" type="ActMood" use="optional" fixed="EVN"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.SequelTo">
      <xs:annotation>
         <xs:documentation>Links to an earlier comment, such that one commenter can respond to another comment. When linking comments, the response to a comment is nested as a sequel/comment inside the comment element to which it responds.</xs:documentation>
         <xs:appinfo>
            <mif:class name="SequelTo" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="SequelTo"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="SequelTo"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="comment" type="PORP_MT050032UV.Comment" nillable="true" minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="comment" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                             associationEndName="source"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ActRelationship"
                                             associationEndName="comment"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ActRelationship"
                                             associationEndName="comment"/>
                     <mif:participantClass>
                        <mif:reference name="Comment"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ActRelationshipSequel" use="optional" default="SEQL"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Severity">
      <xs:annotation>
         <xs:documentation>A specification of severity of an adverse event as an observation criterion.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Severity" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Observation"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Severity"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Severity"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="code" type="CD" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="code" sortKey="3" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="true"
                                 conformance="R"
                                 fixedValue="SEV">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Severity" attributeName="code"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Severity" attributeName="code"/>
                     <mif:type name="CD"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="ActCode" mnemonic="SEV"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
         <xs:element name="value" type="CE" minOccurs="1" maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:attribute name="value" sortKey="4" minimumMultiplicity="1" maximumMultiplicity="1"
                                 isMandatory="true"
                                 conformance="R">
                     <mif:annotations>
                        <mif:designComments>
                           <mif:text>
                              <mif:p>L - low severity, mild; M - moderate; H - high severity, severe</mif:p>
                           </mif:text>
                        </mif:designComments>
                     </mif:annotations>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Observation" attributeName="value"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Severity" attributeName="value"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Severity" attributeName="value"/>
                     <mif:type name="CE"/>
                     <mif:supplierDomainSpecification codingStrength="CWE" domainName="SeverityObservation"/>
                  </mif:attribute>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="ActClassObservation" use="optional" default="OBS"/>
      <xs:attribute name="moodCode" type="ActMood" use="optional" fixed="EVN.CRT"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.SpecializedKind">
      <xs:annotation>
         <xs:documentation>Generalization elements to specify a classification to the Medicine, Substance and ActiveMoiety. For example, one can specify any or all of (a) cellular/molecular action (e.g., Ca-channel blocker); (b) physiologic effect (e.g., vasodilator); and (c) molecular/chemical class (e.g. aminopenicillin).</xs:documentation>
         <xs:appinfo>
            <mif:class name="SpecializedKind" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="RoleHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="SpecializedKind"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="SpecializedKind"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:choice>
            <xs:element name="generalizedMaterialKind" type="PORP_MT050032UV.MaterialKind"
                        minOccurs="1"
                        maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="generalizedClass" minimumMultiplicity="1" maximumMultiplicity="1"
                                           isMandatory="true"
                                           conformance="R"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="scoper"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                                associationEndName="generalizedClass"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                                associationEndName="generalizedClass"/>
                        <mif:participantClassSpecialization className="MaterialKind" traversalName="generalizedMaterialKind"/>
                        <mif:participantClassSpecialization className="PharmaceuticalClass" traversalName="generalizedPharmaceuticalClass"/>
                        <mif:participantClass>
                           <mif:reference name="Class"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
            <xs:element name="generalizedPharmaceuticalClass"
                        type="PORP_MT050032UV.PharmaceuticalClass"
                        minOccurs="1"
                        maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="generalizedClass" minimumMultiplicity="1" maximumMultiplicity="1"
                                           isMandatory="true"
                                           conformance="R"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="Role" associationEndName="scoper"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="Role"
                                                associationEndName="generalizedClass"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="Role"
                                                associationEndName="generalizedClass"/>
                        <mif:participantClassSpecialization className="MaterialKind" traversalName="generalizedMaterialKind"/>
                        <mif:participantClassSpecialization className="PharmaceuticalClass" traversalName="generalizedPharmaceuticalClass"/>
                        <mif:participantClass>
                           <mif:reference name="Class"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
         </xs:choice>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="RoleClassIsSpeciesEntity" use="optional" default="GEN"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.StructuredBody">
      <xs:annotation>
         <xs:documentation>Represents an XML document body that is comprised of one or more Sections.</xs:documentation>
         <xs:appinfo>
            <mif:class name="StructuredBody" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActHeir"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="StructuredBody"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="StructuredBody"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="component" type="PORP_MT050032UV.Component6" nillable="true"
                     minOccurs="0"
                     maxOccurs="unbounded">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="component" minimumMultiplicity="0" maximumMultiplicity="*"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Act"
                                             associationEndName="outboundRelationship"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Act" associationEndName="component"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Act" associationEndName="component"/>
                     <mif:participantClass>
                        <mif:reference name="Component6"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="classCode" type="ActClass" use="optional" fixed="DOCBODY"/>
      <xs:attribute name="moodCode" type="ActMood" use="optional" fixed="EVN"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Subject">
      <xs:annotation>
         <xs:documentation>Links the product instance with a product event.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Subject" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="Participation"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Subject"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Subject"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="productEvent" type="PORP_MT050032UV.ProductEvent" nillable="true"
                     minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="productEvent" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="Participation" associationEndName="act"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="Participation"
                                             associationEndName="productEvent"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="Participation"
                                             associationEndName="productEvent"/>
                     <mif:participantClass>
                        <mif:reference name="ProductEvent"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ParticipationTargetSubject" use="optional" default="SBJ"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Subject1">
      <xs:annotation>
         <xs:documentation>The relationship which links the SubstanceAdministration to the Highlight as its subject matter.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Subject1" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Subject1"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Subject1"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="substanceAdministration" type="PORP_MT050032UV.SubstanceAdministration1"
                     nillable="true"
                     minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="substanceAdministration" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                             associationEndName="target"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ActRelationship"
                                             associationEndName="substanceAdministration"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ActRelationship"
                                             associationEndName="substanceAdministration"/>
                     <mif:participantClass>
                        <mif:reference name="SubstanceAdministration1"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ActRelationshipType" use="optional" fixed="SUBJ"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Subject10">
      <xs:annotation>
         <xs:appinfo>
            <mif:class name="Subject10" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Subject10"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Subject10"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:element name="textFragmentReference" type="PORP_MT050032UV.TextFragmentReference"
                     nillable="true"
                     minOccurs="1"
                     maxOccurs="1">
            <xs:annotation>
               <xs:appinfo>
                  <mif:targetConnection name="textFragmentReference" minimumMultiplicity="1" maximumMultiplicity="1"
                                        isMandatory="false"
                                        sortKey="5">
                     <mif:annotations/>
                     <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                             associationEndName="target"/>
                     <mif:derivationSupplier staticModelDerivationId="2" className="ActRelationship"
                                             associationEndName="textFragmentReference"/>
                     <mif:derivationSupplier staticModelDerivationId="3" className="ActRelationship"
                                             associationEndName="textFragmentReference"/>
                     <mif:participantClass>
                        <mif:reference name="TextFragmentReference"/>
                     </mif:participantClass>
                  </mif:targetConnection>
               </xs:appinfo>
            </xs:annotation>
         </xs:element>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ActRelationshipType" use="optional" fixed="SUBJ"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Subject2">
      <xs:annotation>
         <xs:documentation>Specification of frequency or severity of the adverse outcome.</xs:documentation>
         <xs:appinfo>
            <mif:class name="Subject2" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Subject2"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Subject2"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:choice>
            <xs:element name="frequency" type="PORP_MT050032UV.Frequency" nillable="true" minOccurs="1"
                        maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="severityAndFrequency" minimumMultiplicity="1" maximumMultiplicity="1"
                                           isMandatory="false"
                                           conformance="R"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                                associationEndName="source"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="ActRelationship"
                                                associationEndName="severityAndFrequency"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="ActRelationship"
                                                associationEndName="severityAndFrequency"/>
                        <mif:participantClassSpecialization className="Frequency" traversalName="frequency"/>
                        <mif:participantClassSpecialization className="Severity" traversalName="severity"/>
                        <mif:participantClass>
                           <mif:reference name="SeverityAndFrequency"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
            <xs:element name="severity" type="PORP_MT050032UV.Severity" nillable="true" minOccurs="1"
                        maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="severityAndFrequency" minimumMultiplicity="1" maximumMultiplicity="1"
                                           isMandatory="false"
                                           conformance="R"
                                           sortKey="5">
                        <mif:annotations/>
                        <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"
                                                associationEndName="source"/>
                        <mif:derivationSupplier staticModelDerivationId="2" className="ActRelationship"
                                                associationEndName="severityAndFrequency"/>
                        <mif:derivationSupplier staticModelDerivationId="3" className="ActRelationship"
                                                associationEndName="severityAndFrequency"/>
                        <mif:participantClassSpecialization className="Frequency" traversalName="frequency"/>
                        <mif:participantClassSpecialization className="Severity" traversalName="severity"/>
                        <mif:participantClass>
                           <mif:reference name="SeverityAndFrequency"/>
                        </mif:participantClass>
                     </mif:targetConnection>
                  </xs:appinfo>
               </xs:annotation>
            </xs:element>
         </xs:choice>
      </xs:sequence>
      <xs:attributeGroup ref="InfrastructureRootAttributes"/>
      <xs:attribute name="typeCode" type="ActRelationshipType" use="optional" fixed="SUBJ"/>
   </xs:complexType>
   <xs:complexType name="PORP_MT050032UV.Subject3">
      <xs:annotation>
         <xs:documentation>An ActRelationship linking an Issue to a co-factor, i.e. another ClinicalSituationCriterion, a choice of either ObservationCriterion, SubstanceAdministrationCriterion or general ActCriterion.  This is used to describe certain clinical situations as situations that would be of concern when using the drugs (see Issue.)</xs:documentation>
         <xs:appinfo>
            <mif:class name="Subject3" isAbstract="false">
               <mif:derivationSupplier staticModelDerivationId="1" className="ActRelationship"/>
               <mif:derivationSupplier staticModelDerivationId="2" className="Subject3"/>
               <mif:derivationSupplier staticModelDerivationId="3" className="Subject3"/>
               <mif:annotations/>
            </mif:class>
         </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
         <xs:group ref="InfrastructureRootElements"/>
         <xs:choice>
            <xs:element name="actCriterion" type="PORP_MT050032UV.ActCriterion" nillable="true"
                        minOccurs="1"
                        maxOccurs="1">
               <xs:annotation>
                  <xs:appinfo>
                     <mif:targetConnection name="clinicalSituationCriterion" minimumMultiplicity="1"
                                           ma