<?xml version="1.0" encoding="UTF-8"?>
<feature
      id="org.eclipse.egf.sdk"
      label="%featureName"
      version="1.5.1.qualifier"
      provider-name="%providerName"
      image="eclipse_update_120.jpg">

   <description>
      %description
   </description>

   <copyright>
      Copyright (c) 2009-2010 Thales Corporate Services S.A.S.
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
   </copyright>

   <license url="%licenseURL">
      %license
   </license>

   <url>
      <update label="%EMFTUpdateSiteName" url="http://download.eclipse.org/modeling/emft/updates/"/>
      <discovery label="%EMFUpdateSiteName" url="http://download.eclipse.org/modeling/emf/updates/"/>
      <discovery label="%EMFTUpdateSiteName" url="http://download.eclipse.org/modeling/emft/updates/"/>
   </url>

   <includes
         id="org.eclipse.egf"
         version="0.0.0"/>

   <includes
         id="org.eclipse.egf.doc"
         version="0.0.0"/>

   <includes
         id="org.eclipse.egf.portfolio"
         version="0.0.0"/>

   <includes
         id="org.eclipse.egf.portfolio.emf"
         version="0.0.0"/>

   <includes
         id="org.eclipse.egf.portfolio.genchain"
         version="0.0.0"/>

    <includes
        id="org.eclipse.egf.common.source"
        version="0.0.0"/>     

    <includes
        id="org.eclipse.egf.common.ui.source"
        version="0.0.0"/>
  
   <includes
         id="org.eclipse.egf.core.source"
         version="0.0.0"/>

   <includes
         id="org.eclipse.egf.core.ui.source"
         version="0.0.0"/>

    <includes 
        id="org.eclipse.egf.model.edit.source" 
        version="0.0.0"/>

   <includes
         id="org.eclipse.egf.model.source"
         version="0.0.0"/>

    <includes
        id="org.eclipse.egf.model.fprod.edit.source"
        version="0.0.0"/>

    <includes
        id="org.eclipse.egf.model.fprod.source"
        version="0.0.0"/>

    <includes
        id="org.eclipse.egf.model.ftask.edit.source"
        version="0.0.0"/>

    <includes
        id="org.eclipse.egf.model.ftask.source"
        version="0.0.0"/>

    <includes
        id="org.eclipse.egf.model.ui.source"
        version="0.0.0"/>
   
   <includes
         id="org.eclipse.egf.portfolio.emf.source"
         version="0.0.0"/>

   <includes
         id="org.eclipse.egf.portfolio.source"
         version="0.0.0"/>

   <includes
         id="org.eclipse.egf.portfolio.genchain.source"
         version="0.0.0"/>

   <includes
         id="org.eclipse.egf.portfolio.task.ant.source"
         version="0.0.0"/>

    <includes
        id="org.eclipse.egf.producer.source"
        version="0.0.0"/>

    <includes 
        id="org.eclipse.egf.producer.ui.source" 
        version="0.0.0"/>
           
   <plugin
         id="org.eclipse.egf.examples.installer"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>

</feature>
