<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>

<plugin>

  <extension point="org.eclipse.emf.ecore.generated_package">
  
    <!-- crossresourcecontainment.SimpleLib -->
    
    <package 
       uri = "http:///org.eclipse.emf.test.models/SimpleLib" 
       class = "org.eclipse.emf.test.models.lib.LibPackage"
       genModel = "models/crossresourcecontainment.SimpleLib/SimpleLib.genmodel" /> 

    <!-- edit.RefTest -->

    <package 
       uri = "http:///org.eclipse.emf.test.models/ref" 
       class = "org.eclipse.emf.test.models.ref.RefPackage"
       genModel = "models/edit.RefTest/RefTest.genmodel" /> 

    <package 
       uri = "http:///org.eclipse.emf.test.models/ext" 
       class = "org.eclipse.emf.test.models.ext.ExtPackage"
       genModel = "models/edit.RefTest/RefTest.genmodel" /> 

    <!-- edit.Tree -->
    
    <package 
       uri = "http:///org.eclipse.emf.test.models/Tree" 
       class = "org.eclipse.emf.test.models.tree.TreePackage"
       genModel = "models/edit.Tree/tree.genmodel" /> 

    <!-- ItemDB -->
    
    <package 
       uri = "http:///org.eclipse.emf.test.models/dbitem" 
       class = "org.eclipse.emf.test.models.dbitem.DBItemPackage"
       genModel = "models/ItemDB/dbitem.genmodel" /> 

    <package 
       uri = "http:///org.eclipse.emf.test.models/dbprice" 
       class = "org.eclipse.emf.test.models.dbprice.DBPricePackage"
       genModel = "models/ItemDB/dbitem.genmodel" /> 

    <!-- Key -->
    
    <package 
       uri = "http:///org.eclipse.emf.test.models/Key" 
       class = "org.eclipse.emf.test.models.key.KeyPackage"
       genModel = "models/Key/Key.genmodel" /> 

    <!-- Library -->

    <package 
       uri = "http:///org.eclipse.emf.test.models/Library" 
       class = "org.eclipse.emf.test.models.library.LibraryPackage"
       genModel = "models/Library/library.genmodel" /> 

    <!-- MovieDB -->

    <package 
       uri = "http:///org.eclipse.emf.test.models/Customer" 
       class = "org.eclipse.emf.test.models.customer.CustomerPackage"
       genModel = "models/MovieDB/moviedb.genmodel" /> 

    <package 
       uri = "http:///org.eclipse.emf.test.models/MovieDB" 
       class = "org.eclipse.emf.test.models.movie.db.DBPackage"
       genModel = "models/MovieDB/moviedb.genmodel" /> 

    <package 
       uri = "http:///org.eclipse.emf.test.models/Order" 
       class = "org.eclipse.emf.test.models.order.OrderPackage"
       genModel = "models/MovieDB/moviedb.genmodel" /> 
       
    <!-- PrimerPO -->
    
    <package 
       uri = "http:///org.eclipse.emf.test.models/ppo" 
       class = "org.eclipse.emf.test.models.ppo.PPOPackage"
       genModel = "models/PrimerPO/PrimerPO.genmodel" /> 

    <!-- QName -->
    
    <package 
       uri = "http:///org.eclipse.emf.test.models/qname" 
       class = "org.eclipse.emf.test.models.qname.QNamePackage"
       genModel = "models/QName/qname.genmodel" /> 

    <!-- Switch -->

    <package 
       uri = "http:///org.eclipse.emf.test.models/switch1" 
       class = "org.eclipse.emf.test.models.switch1.Switch1Package"
       genModel = "models/Switch/switch.genmodel" /> 

    <package 
       uri = "http:///org.eclipse.emf.test.models/switch2" 
       class = "org.eclipse.emf.test.models.switch2.Switch2Package"
       genModel = "models/Switch/switch.genmodel" /> 

    <package 
       uri = "http:///org.eclipse.emf.test.models/switch3" 
       class = "org.eclipse.emf.test.models.switch3.Switch3Package"
       genModel = "models/Switch/switch.genmodel" /> 

  </extension>

  <extension point="org.eclipse.emf.ecore.extension_parser">
  
    <!-- MovieDB -->
      
    <parser
       type="customer" 
       class="org.eclipse.emf.test.models.customer.util.CustomerResourceFactoryImpl" />

    <parser
       type="db" 
       class="org.eclipse.emf.test.models.movie.db.util.DBResourceFactoryImpl" />

    <parser
       type="order" 
       class="org.eclipse.emf.test.models.order.util.OrderResourceFactoryImpl" />
  </extension>

   <extension point="org.eclipse.emf.ecore.generated_package">
      <!-- @generated Reification -->
      <package
            uri="http://www.eclipse.org/emf/test/common/Reification"
            class="org.eclipse.emf.test.common.reification.ReificationPackage"
            genModel="models/Reification/Reification.genmodel"/>
   </extension>

   <extension point="org.eclipse.emf.ecore.generated_package">
      <!-- @generated Dynamic -->
      <package
            uri="http:///org.eclipse.emf.test.models/dynamic"
            class="org.eclipse.emf.test.models.dynamic.DynamicPackage"
            genModel="models/Dynamic/Dynamic.genmodel"/>
   </extension>

</plugin>
