<?xml version="1.0" encoding="UTF-8"?>
<feature
      id="org.polarsys.esf.core.releng"
      label="%featureName"
      version="0.7.0.qualifier"
      provider-name="%providerName">

   <description>
      %description
   </description>

   <copyright>
      %copyright
   </copyright>

   <license url="%licenseURL">
      %copyright
   </license>

   <url>
      <discovery label="ESF Website" url="http://www.polarsys.org/esf"/>
   </url>

   <requires>
      <import plugin="org.eclipse.uml2.uml" version="5.1.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.papyrus.uml.extensionpoints" version="1.1.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.core.runtime" version="3.11.1" match="greaterOrEqual"/>
      <import plugin="org.eclipse.emf.ecore"/>
      <import plugin="org.eclipse.uml2.types"/>
      <import plugin="org.eclipse.emf.ecore.xmi" version="2.11.1" match="greaterOrEqual"/>
      <import plugin="org.eclipse.emf.common" version="2.11.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.emf.common.ui" version="2.10.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.core.resources" version="3.10.1" match="greaterOrEqual"/>
      <import plugin="org.apache.commons.io" version="2.2.0" match="greaterOrEqual"/>
      <import plugin="org.apache.commons.lang3" version="3.1.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.emf.transaction" version="1.4.0" match="greaterOrEqual"/>
      <import plugin="org.polarsys.esf.core.common" version="0.7.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.emf.edit.ui" version="2.10.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.ui" version="3.106.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.ui.console" version="3.5.300" match="greaterOrEqual"/>
      <import plugin="org.eclipse.ui.ide" version="3.11.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.ui.navigator.resources" version="3.4.700" match="greaterOrEqual"/>
      <import plugin="org.eclipse.ui.navigator" version="3.5.400" match="greaterOrEqual"/>
      <import plugin="org.polarsys.esf.core.common.ui" version="0.7.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.ui.themes" version="1.1.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.platform" version="4.5.1" match="greaterOrEqual"/>
      <import plugin="org.eclipse.ui.views.log" version="1.0.500" match="greaterOrEqual"/>
      <import plugin="org.eclipse.papyrus.views.modelexplorer" version="1.1.2" match="greaterOrEqual"/>
      <import plugin="org.eclipse.papyrus.uml.modelexplorer" version="1.1.2" match="greaterOrEqual"/>
      <import plugin="org.eclipse.uml2.uml.resources" version="5.1.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.papyrus.uml.tools.utils" version="1.1.2" match="greaterOrEqual"/>
      <import plugin="org.eclipse.papyrus.infra.core" version="1.1.2" match="greaterOrEqual"/>
      <import plugin="org.eclipse.papyrus.infra.services.edit" version="1.0.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.papyrus.infra.gmfdiag.commands" version="1.0.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.papyrus.uml.diagram.common" version="1.1.2" match="greaterOrEqual"/>
      <import plugin="org.polarsys.esf.core.utils" version="0.7.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.papyrus.uml.diagram.wizards" version="1.1.2" match="greaterOrEqual"/>
      <import plugin="org.polarsys.esf.core.profile.esfarchitectureconcepts" version="0.7.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.papyrus.infra.emf" version="1.1.2" match="greaterOrEqual"/>
      <import plugin="org.eclipse.papyrus.uml.tools" version="1.1.2" match="greaterOrEqual"/>
      <import plugin="org.eclipse.papyrus.infra.core.log" version="1.1.2" match="greaterOrEqual"/>
      <import plugin="org.eclipse.gmf.runtime.emf.type.core" version="1.9.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.emf.ecore" version="2.11.1" match="greaterOrEqual"/>
      <import plugin="org.eclipse.ui.workbench" version="3.107.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.jface" version="3.11.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.papyrus.infra.viewpoints.policy"/>
      <import plugin="org.polarsys.esf.core.diagram.esfarchitectureconcepts" version="0.7.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.papyrus.infra.viewpoints.policy" version="1.1.2" match="greaterOrEqual"/>
      <import plugin="org.eclipse.emf.transaction" version="1.9.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.papyrus.infra.gmfdiag.common" version="1.1.2" match="greaterOrEqual"/>
      <import plugin="org.eclipse.core.expressions" version="3.5.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.gmf.runtime.notation.edit" version="1.7.0" match="greaterOrEqual"/>
      <import feature="org.eclipse.papyrus.sdk.feature" version="2.0.0.201606080854"/>
   </requires>

   <plugin
         id="org.polarsys.esf.core.releng.branding"
         download-size="0"
         install-size="0"
         version="0.0.0"/>

   <plugin
         id="org.polarsys.esf.core.profile.esfarchitectureconcepts"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.polarsys.esf.core.profile.esfcore"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.polarsys.esf.core.metamodel.esfarchitectureconcepts"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.polarsys.esf.core.metamodel.esfbehaviours"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.polarsys.esf.core.metamodel.esfcore"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.polarsys.esf.core.metamodel.esfproperties"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.polarsys.esf.core.metamodel.esfsafetyconcepts"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.polarsys.esf.core.common"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.polarsys.esf.core.common.ui"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.polarsys.esf.core.profile.esfbehaviours"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.polarsys.esf.core.profile.esfproperties"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.polarsys.esf.core.profile.esfsafetyconcepts"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.polarsys.esf.core.utils"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.polarsys.esf.core.diagram.esfarchitectureconcepts"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.polarsys.esf.core.resources.graphical"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

   <plugin
         id="org.polarsys.esf.core.doc"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

</feature>
