<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<!--
 /*******************************************************************************
 * Copyright (c) 2012 Bundesinstitut für Risikobewertung and others.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 *     Bundesinstitut für Risikobewertung - initial API and implementation
 *******************************************************************************/
-->

<plugin>
   <extension-point id="metamodel" name="STEM Metamodel Definitions" schema="schema/metamodel.exsd"/>

   <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
      <factory
            uri="http:///org/eclipse/stem/model/metamodel.ecore"
            class="org.eclipse.stem.model.metamodel.provider.MetamodelItemProviderAdapterFactory"
            supportedTypes=
              "org.eclipse.emf.edit.provider.IEditingDomainItemProvider
               org.eclipse.emf.edit.provider.IStructuredItemContentProvider
               org.eclipse.emf.edit.provider.ITreeItemContentProvider
               org.eclipse.emf.edit.provider.IItemLabelProvider
               org.eclipse.emf.edit.provider.IItemPropertySource"/>
   </extension>

   <extension point="org.eclipse.emf.ecore.generated_package">
      <package
            uri="http:///org/eclipse/stem/model/metamodel.ecore"
            class="org.eclipse.stem.model.metamodel.MetamodelPackage"
            genModel="model/metamodel.genmodel"/>
   </extension>

</plugin>
