<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <!-- Package Description information to be picked up by www.eclipse.org/packages -->
  <!-- PackageName is the title of your package 
       maintainer is the project or persons that are maintaining the package
       iconurl is the fully qualified URL to the icon you wish to use on the site (48x48)
       bugzillaComponentID is used to gather bugzilla information about your package.  This should be given to you after provisioning of the package is finished
       testPlan is the fully qualified URL to the test plan for this package
   -->
  <packageMetaData
   packageName="Eclipse Modeling Tools"
   maintainer="Remi Schnekenburger"
   iconurl="http://www.eclipse.org/modeling/images/modeling_about.png"
   bugzillaComponentId="modeling-package"
   testPlan="http://www.eclipse.org/epp/testplan.php" >
    <!-- Description is wrapped in CDATA tags to allow you to insert HTML code if necessary -->
    <description><![CDATA[The Modeling package provides tools and runtimes for building model-based applications.
        You can use it to graphically design domain models, to leverage those models at design time by creating and editing dynamic instances, to collaborate via Eclipse's team support with facilities for comparing and merging models and model instances structurally, and finally to generate Java code from those models to produce complete applications.
        In addition, via the package's discover catalog, you can easily install a wide range of additional powerful, model-based tools and runtimes to suit your specific needs.]]></description>
    <!-- packageTesters is a list of the people that are testing the package -->
     <packageTesters>
      <tester>Remi Schnekenburger</tester>
    </packageTesters>
  </packageMetaData>
  <MoreInfo>  
  <NewAndNoteworthy
    url="https://wiki.eclipse.org/Ecore_Tools/New_and_Noteworthy"
    project="Eclipse EcoreTools" />
  <NewAndNoteworthy
    url="https://wiki.eclipse.org/EMF_Compare/New_and_Noteworthy/3.3.0"
    project="Eclipse EMF Compare" />
  </MoreInfo>

  <!-- name, the name of the product, used in naming the created files. -->
  <product name="eclipse-modeling-2022-03-RC1" />

</configuration>
