<?xml version="1.0" encoding="ASCII"?>
<discovery:DiscoveryDefinition xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:discovery="http://www.eclipse.org/amalgamation/discovery/1.0">
  <categories name="Model To Text" description="Model to Text (also known as code generation) tools and languages." relevance="6" image48="">
    <components name="Acceleo" provider="Eclipse.org" description="Acceleo is a standard-based template language focused on usability and pragmatism." license="EPL" image32="images/acceleo.png">
      <sitesURLS>http://download.eclipse.org/releases/helios/</sitesURLS>
      <overview summary=" Acceleo is a pragmatic implementation of the Object Management Group (OMG) MOF Model to Text Language (MTL) standard.&#xA;&#xA;You do not need to be an expert to start using the plug-ins and create your first code generator : using the provided example projects and the powerful completion feature of the Acceleo editor, it is very easy to get started once you understand the basic principles. " screenshot="images/acceleo-screenshot-320x240.png"/>
      <id>org.eclipse.acceleo.sdk</id>
    </components>
    <components name="Jet" provider="Eclipse.org" description="JET is an Eclipse-based code generator framework based on JSP." license="EPL" image32="images/jet.png">
      <sitesURLS>http://download.eclipse.org/releases/helios/</sitesURLS>
      <overview summary="JET allows you to easily generate textual artifacts in the Eclipse environment&#xA;in a syntax similar to JSP. It supplies tag libraries for navigating XML&#xA;documents, EMF-based documents (including UML2) and for writing template&#xA;results to the Eclipse workspace.&#xA;" url="http://wiki.eclipse.org/M2T-JET"/>
      <id>org.eclipse.jet.sdk</id>
      <hiddingFeatureID>org.eclipse.jet</hiddingFeatureID>
    </components>
    <components name="Xpand" provider="Eclipse.org" description="Xpand is an efficient code generation framework with a statically-typed template language and support for arbitrary input model types." license="EPL" image32="images/xpand.png">
      <sitesURLS>http://download.eclipse.org/releases/helios/</sitesURLS>
      <overview summary="Xpand allows to write code generators for many different types of models. These&#xA;models include EMF models, UML models, XML documents and textual DSL models.&#xA;Any type of source code can be generated from the model sources. Xpand has&#xA;strong emphasize on reducing the effort to create industry-strength code&#xA;generators and provides outstanding Eclipse integration.&#xA;&#xA;Xpand's features include:&#xA; &#x2022; support of various modeling tools&#xA; &#x2022; support of EMF (Eclipse Modeling Framework)&#xA; &#x2022; model-to-code transformations&#xA; &#x2022; model-to-model transformations             &#xA; &#x2022; model validation&#xA; &#x2022; expression language&#xA; &#x2022; static code analysis&#xA; &#x2022; aspect oriented programming&#xA; &#x2022; support for standalone execution" screenshot="images/xpand-screenshot-320x240.png"/>
      <id>org.eclipse.xpand.sdk</id>
      <hiddingFeatureID>org.eclipse.xpand</hiddingFeatureID>
    </components>
  </categories>
  <categories name="Model To Model" description="Model to Model tools and transformation languages." image48="">
    <components name="ATL" provider="Eclipse.org" description="ATL is a model transformation language and toolkit, including an ATL transformation engine and an IDE for ATL." license="EPL" image32="images/atl.png">
      <sitesURLS>http://download.eclipse.org/releases/helios/</sitesURLS>
      <overview summary="The ATL component of the M2M project provides ways to produce a set of target models from a set of source models. An ATL transformation program is composed of rules that define how source model elements are matched and navigated to create and initialize the elements of the target models. Developed on top of the Eclipse platform, the ATL toolkit provides a number of standard development tools (advanced editor, debugger, profiler, etc.) that aims to ease development of ATL transformations." screenshot="images/atl-screenshot-320x240.png" url="http://www.eclipse.org/m2m/atl/"/>
      <id>org.eclipse.m2m.atl.sdk</id>
      <hiddingFeatureID>org.eclipse.m2m.atl</hiddingFeatureID>
    </components>
    <components name="Declarative QVT" provider="Eclipse.org" description="Editors for QVT Relational and QVT Core documents" license="EPL" groups="//@filters.0" image32="images/qvtd.png" incubation="true" visible="false">
      <sitesURLS>http://download.eclipse.org/releases/helios/</sitesURLS>
      <overview summary="QVTd project currently provides Editors for&#xA;&#xA;- QVT Relational documents&#xA;- QVT Core documents&#xA;&#xA;QVTc and QVTr execution is work in progress" screenshot="images/qvtd-screenshot-320x240.png" url="http://www.eclipse.org/projects/project_summary.php?projectid=modeling.m2m.qvt-relations"/>
      <id>org.eclipse.qvtd</id>
    </components>
    <components name="Operational QVT" provider="Eclipse.org" description="Implementation of the Operational part of the OMG QVT (Query/View/Transformation) open standard" license="EPL" image32="images/qvto.png">
      <sitesURLS>http://download.eclipse.org/releases/helios/</sitesURLS>
      <overview summary="Based on MDT OCL, the Operational QVT project aims to be fully compliant with the OMG QVT standard providing a powerful Eclipse IDE with feature-rich editor (code completion, outline, navigation, etc.), debugger, project builders, launch configurations, deployment facilities and Ant support." screenshot="images/qvto-screenshot-320x240.png" url="http://wiki.eclipse.org/M2M/Operational_QVT_Language_%28QVTO%29"/>
      <id>org.eclipse.m2m.qvt.oml.sdk</id>
    </components>
  </categories>
  <categories name="Concrete Syntax Development" description="Tools and frameworks to develop dedicated modeling tools. " relevance="4">
    <components name="Extended Editing Framework" provider="Eclipse.org" description="EEF (Extended Editing Framework) is a presentation framework for EMF models. " license="EPL" groups="//@filters.0" image32="images/eef.png" incubation="true">
      <sitesURLS>http://download.eclipse.org/releases/helios/</sitesURLS>
      <overview summary="The Extended Editing Framework aims at giving another way to improve the EMF model creation phase by providing new services dedicated to editing and using more appealing editing elements. The way to obtain these services and elements is based on a generative approach similar to the EMF.Edit one. The framework provides advanced editing components for the properties of EMF elements and a default generation based on standard metamodels using these components." screenshot="images/eef-screenshot-320x240.png" url="http://www.eclipse.org/modeling/emft/?project=eef"/>
      <id>org.eclipse.emf.eef.edt</id>
      <hiddingFeatureID>org.eclipse.emf.eef.runtime</hiddingFeatureID>
    </components>
    <components name="Graphical Modeling Framework Tooling" provider="Eclipse.org" license="EPL" description="GMF Tooling is a framework to generate functional graphical editors based on the GMF Runtime." image32="images/gmf.png">
      <sitesURLS>http://download.eclipse.org/releases/helios/</sitesURLS>
      <id>org.eclipse.gmf.sdk</id>
    </components>
    <components name="Xtext" provider="Eclipse.org" description="Xtext is a framework for development of programming languages and domain&#xA;specific languages (DSLs). Just describe your very own DSL using Xtext's simple&#xA;EBNF grammar language and the generator will create a parser, an AST-meta model&#xA;(implemented in EMF) as well as a full-featured Eclipse text editor from that.&#xA;&#xA;The Framework integrates with frameworks from Eclipse Modeling such as EMF, GMF&#xA;and M2T as well as other Eclipse based technologies. Development with Xtext is&#xA;optimized for short turn-arounds, so that adding new features to an existing&#xA;DSL is a matter of minutes. Still sophisticated programming languages can be&#xA;implemented." license="EPL" groups="//@filters.0" image32="images/xtext.png">
      <sitesURLS>http://download.eclipse.org/releases/helios/</sitesURLS>
      <overview summary="Xtext is a framework for development of programming languages and domain&#xA;specific languages (DSLs). Just describe your very own DSL using Xtext's simple&#xA;EBNF grammar language and the generator will create a parser, an AST-meta model&#xA;(implemented in EMF) as well as a full-featured Eclipse text editor from that.&#xA;&#xA;The Framework integrates with frameworks from Eclipse Modeling such as EMF, GMF&#xA;and M2T as well as other Eclipse based technologies. Development with Xtext is&#xA;optimized for short turn-arounds, so that adding new features to an existing&#xA;DSL is a matter of minutes. Still sophisticated programming languages can be&#xA;implemented." screenshot="images/xtext-screenshot-320x240.png"/>
      <id>org.eclipse.xtext.sdk</id>
    </components>
  </categories>
  <categories name="Modeler" description="Modeling environment tools." relevance="3">
    <components name="UML2 Tools" provider="Eclipse.org" description="The UML2Tools component is a set of the UML 2.1 compatible diagram editors, based on the Eclipse GMF framework" license="EPL" groups="//@filters.0" image32="" incubation="true" visible="false">
      <sitesURLS>http://download.eclipse.org/releases/helios/</sitesURLS>
      <overview summary="UML2Tools provides support for Class, Composite Structure, Component,&#xA;Deployment, UseCase, Activity and StateMachine diagram. It also contains&#xA;supplementary Profile Definition diagram, enabling the visual integration of&#xA;the custom defined stereotypes with the other supported diagrams." screenshot="images/uml2tools-screenshot-320x240.png"/>
      <id>org.eclipse.uml2tools</id>
    </components>
    <components name="Papyrus" provider="Eclipse.org" description="Papyrus provides an integrated, user-consumable environment for editing models based on UML and other related languages such as SysML." license="EPL" groups="//@filters.0" image32="images/papyrus.png" incubation="true">
      <sitesURLS>http://download.eclipse.org/modeling/mdt/papyrus/updates/nightly/</sitesURLS>
      <sitesURLS>http://download.eclipse.org/releases/helios/</sitesURLS>
      <overview summary="Papyrus is an open source component of the&#xA;Model Development Tools (MDT) subproject to provide an integrated environment&#xA;for editing UML and SysML models. Specially, this project will provide the glue&#xA;around valuable UML and SysML diagram editors (GMF-based or not) and other MDE&#xA;tools. It will also offer support for UML and SysML profiling mechanisms." screenshot="images/papyrus-screenshot-320x240.png" url="http://www.eclipse.org/papyrus"/>
      <id>org.eclipse.papyrus</id>
      <messages title="Early Access" message="Please note that this component is not a participant of the Helios simultaneous release and that it is provided here as an early access."/>
    </components>
  </categories>
  <categories name="Reverse Engineering" description="Tools focused on getting models from source code." relevance="2">
    <components name="MoDisco" provider="Eclipse.org" description="MoDisco is an extensible framework to develop model-driven tools for software modernization projects." license="EPL" groups="//@filters.0" image32="images/modisco.png" incubation="true">
      <sitesURLS>http://download.eclipse.org/releases/helios/</sitesURLS>
      <overview summary="MoDisco provides standard metamodels to describe existing systems, discoverers&#xA;to automaticaly create models from Java and XML source code, and generic tools&#xA;to understand and transform complex models.&#xA;" screenshot="images/modisco-screenshot-320x240.png" url="http://www.eclipse.org/gmt/modisco/"/>
      <id>org.eclipse.gmt.modisco.sdk</id>
       <hiddingFeatureID>org.eclipse.gmt.modisco.infrastructure</hiddingFeatureID>
    </components>
  </categories>
  <categories name="Runtime and Tools" description="Modeling related runtimes and frameworks." relevance="1">
    <components name="Connected Data Objects Repository" provider="Eclipse.org" license="EPL" visible="false">
      <sitesURLS>http://download.eclipse.org/releases/helios/</sitesURLS>
    </components>
    <components name="Model Workflow Engine" provider="Eclipse.org" license="EPL" groups="//@filters.0" incubation="true" visible="false">
      <sitesURLS>http://download.eclipse.org/releases/helios/</sitesURLS>
    </components>
    <components name="Teneo" provider="Eclipse.org" description="Teneo is a Model-Relational mapping and runtime database persistence solution for the Eclipse Modeling Framework (EMF) using Hibernate and EclipseLink." license="EPL">
      <sitesURLS>http://download.eclipse.org/releases/helios/</sitesURLS>
      <overview summary="The EMF &#x2013; Hibernate integration supports all EMF features and standard EclipseLink and Hibernate features. EMF objects can be persisted in most major relational databases and retrieved using an EMF resource approach or HQL/JPA queries. A distinctive feature of Teneo is that you can override/extend the Model-Relational mapping using JPA annotations in the model." screenshot="images/teneo-screenshot-320x240.png" url="http://wiki.eclipse.org/Teneo"/>
      <id>org.eclipse.emf.teneo.hibernate</id>
      <id>org.eclipse.emf.teneo.eclipselink</id>
    </components>
    <components name="OCL Tools" provider="Eclipse.org" description="An evaluation Console for OCL expressions, and Xtext Editors for Complete OCL documents, Combined OCL in Ecore Models and for individual OCL expressions" license="EPL" image32="images/ocl.png">
      <sitesURLS>http://download.eclipse.org/releases/helios/</sitesURLS>
      <overview summary="The Examples for the Object Constraint Language provide&#xA;&#xA;Xtext Editors for&#xA;- CompleteOCL documents to enhance Ecore or UML models&#xA;- OCL in Ecore documents defining OCL and Ecore at once&#xA;- Individual Expressions for use by other tools&#xA;- the OCL Standard Library" screenshot="images/ocl-screenshot-320x240.png" url="http://www.eclipse.org/projects/project_summary.php?projectid=modeling.mdt.ocl"/>
      <id>org.eclipse.ocl.examples</id>
    </components>
    <components name="Agent Modeling Platform" provider="Eclipse.org" description="Agent Modeling Platform (Incubation), including Agent Modeling Framework, Agent eXecution Framework, Agent Graphics and Visualization Framework, and Escape." license="EPL" groups="//@filters.0" image32="images/amp.png" incubation="true" visible="false">
      <sitesURLS>http://download.eclipse.org/releases/helios/</sitesURLS>
      <overview summary="The Agent Modeling Platform (AMP) provides extensible frameworks&#xA;and exemplary tools for representing, editing, generating, executing and&#xA;visualizing agent-based models (ABMs) and any other domain requiring spatial,&#xA;behavioral and functional features. AMP has two parts: 1) The Agent Modeling&#xA;Framework (AMF) which provides an Agent-Based Model (ABM) meta-model&#xA;representation, editor, development environment and code generators for popular&#xA;ABM platforms. 2) The AMP platform tools. The Agent Execution Framework (AXF)&#xA;provides services and UI for model management, execution, and views. The Agent&#xA;Graphics Framework (AGF) extends GEF, GEF3D, Zest, and the BIRT charting engine&#xA;to support real-time visualization of and interaction with agent models. Escape&#xA;is a complete ABM environment for Eclipse." screenshot="images/amp-screenshot-320x240.png" url="http://www.eclipse.org/amp"/>
      <id>org.eclipse.amp.all</id>
      <messages title="Early Access" message="Please note that this component is not a participant of the Helios simultaneous release and that it is provided here as an early access."/>
    </components>
  </categories>
  <filters name="Incubation"/>
</discovery:DiscoveryDefinition>
