blob: 0f41625820a30bbe4287ab30a4c4f27161cb1e59 [file] [log] [blame]
<?xml version="1.0" encoding="ISO-8859-1"?>
<amwScenarios>
<category>
<name>Matching transformation library</name>
<description>
Matching transformations are used to automatically create weaving models.
The matching transformations below implement heuristics to create links between model elements
or to refine a given similarity estimation.
These transformations take as input weaving models that conform to extensions of the core weaving metamodel.
The two extensions used are "Simple match extension" and "Propagation model". They are available in the
<a href="http://www.eclipse.org/gmt/amw/zoo/">AMW Zoo </a>. These transformations use multiple source pattern matching.
More information can be found in the <a href="http://wiki.eclipse.org/index.php/AMW_Examples_HowTo">Wiki page</a>.
<br/>These matching transformations can be executed directly from the AMW tool. They are encapsulated in the plug-in
"org.eclipse.gmt.weaver.transformation.extension".
</description>
<amwExample>
<shortName>Creation of weaving models</shortName>
<name>Creation of weaving models</name>
<sourceLink>library/CreateWeaving.atl</sourceLink>
<description>
This matching transformation is used to create a weaving model with links between Class x Class
and Structural Features x Structural Features (a restricted cartesian product).
</description>
<pubDate>19/10/2006</pubDate>
</amwExample>
<amwExample>
<shortName>Similarity Flooding</shortName>
<name>Similarity Flooding</name>
<sourceLink>library/SF.atl</sourceLink>
<description>
This transformation is an adapted MDE implementation the Similarity Flooding algorithm
(created by <a href="http://research.microsoft.com/~melnik/">Sergey Melnik</a>).
</description>
<pubDate>19/10/2006</pubDate>
</amwExample>
<amwExample>
<shortName>Propagation model</shortName>
<name>Propagation model</name>
<sourceLink>library/CreatePropagation.atl</sourceLink>
<description>
This transformation creates a propagation model that enables to execute the similarity flooding
algorithm. The propagation model defines the way the similarities are propagated, for example using
containment relationships or the inheritance tree.
</description>
<pubDate>19/10/2006</pubDate>
</amwExample>
<amwExample>
<shortName>Cardinality</shortName>
<name>Cardinality</name>
<docLink></docLink>
<sourceLink>library/Assign_Cardinality_Sim.atl</sourceLink>
<description>
This transformation increases the similarity value of links between elements with the same cardinality (lower or higher bounds).
</description>
<pubDate>19/10/2006</pubDate>
</amwExample>
<amwExample>
<shortName>Name similarity</shortName>
<name>Name similarity</name>
<docLink></docLink>
<sourceLink>library/Assign_NameSim.atl</sourceLink>
<description>
This transformation increases the similarity value of links between elements with the same name.
</description>
<pubDate>19/10/2006</pubDate>
</amwExample>
<amwExample>
<shortName>Link rewriting</shortName>
<name>Link rewriting</name>
<docLink></docLink>
<sourceLink>library/Link_rewriting.atl</sourceLink>
<description>
This transformation analyses a weaving model with previously calculated similarity values and selects
the links with the best values. <br/>
It also transforms simple equality links into type-based links, e.g., AttributeEqual, ReferenceEqual.
</description>
<pubDate>19/10/2006</pubDate>
</amwExample>
<amwExample>
<shortName>Conformance and type</shortName>
<name>Conformance and type</name>
<docLink></docLink>
<sourceLink>library/Assign_Type_Conf_Sim.atl</sourceLink>
<description>
This transformation increases the similarity value of links between elements with the same type.
</description>
<pubDate>19/10/2006</pubDate>
</amwExample>
<amwExample>
<shortName>Model info</shortName>
<name>Model info</name>
<docLink></docLink>
<sourceLink>library/Assign_Model_Sim.atl</sourceLink>
<description>
This matching transformation compares the values of the model elements that conform to the
woven metamodels. If the model elements have the same value, it increases the similary values of
the links between the metamodel elements.
</description>
<pubDate>19/10/2006</pubDate>
</amwExample>
</category>
<category>
<name>Metamodel comparison</name>
<description>
</description>
<amwExample>
<shortName>Scade_compare</shortName>
<name>Scade metamodel comparison</name>
<docLink>../usecases/compare/</docLink>
<sourceLink>Scade/ScadeSimple.zip</sourceLink>
<description>
This example automatically produces a weaving model used to compare two versions of the same Scade
metamodel. A complete description of this example is available in the <a href="../usecases/compare/">
use cases</a> section.
</description>
<pubDate>17/01/2007</pubDate>
</amwExample>
</category>
<category>
<name>Semi-automatic generation of weaving models</name>
<description>
The examples below are complete application scenarios that combine different matching transformations
to produce weaving models for different purposes.
</description>
<amwExample>
<shortName>Sys_of_sys</shortName>
<name>System Architecture (SA) Management</name>
<docLink>System_of_systems/System_of_systems_doc.php</docLink>
<sourceLink>System_of_systems/System_of_systems.zip</sourceLink>
<description>
This is a complex scenario of management of "systems of systems".
It uses many features of AMMA (ATLAS Model Management Architecture) to interoperate between
different views of the same system.
It uses different types of matching transformations to produce weaving models that capture the
overlapping concepts of the different views.
</description>
<pubDate>27/09/2006</pubDate>
</amwExample>
<amwExample>
<shortName>AMW_Match_ATL</shortName>
<name>Generation of ATL after executing equality and structural matchings</name>
<docLink>AMW_Match_ATL/AMW_Match_ATL_doc.php</docLink>
<sourceLink>AMW_Match_ATL/AMW_Match_ATL.zip</sourceLink>
<description>
This example uses matching transformations to produce a weaving model between two versions of
the same metamodel.
It uses the same algorithms from the <a href="#AMW_Match_SF">AMW_Match_SF</a> example (see below). This example automatically produces
an ATL transformation.
</description>
<pubDate>30/08/2006</pubDate>
</amwExample>
<amwExample>
<shortName>AMW_Match_SF</shortName>
<name>Equality matching and similarity flooding</name>
<docLink>AMW_Match_SF/AMW_Match_SF_doc.php</docLink>
<sourceLink>AMW_Match_SF/AMW_Match_SF.zip</sourceLink>
<description>
This example contains a set of matching transformations (in ATL) used to produce a weaving
model. The example contains three transformations:
<ul>
<li>The first transformation calculates similarity
values between model elements.
</li>
<li>
The second transformation propagates the similarity values through neighbor nodes.
</li>
<li>
The third transformation
selects the best similarity values and creates a weaving model.
</li>
</ul>
The example is an implementation of an adapted version of the Similarity
Flooding algorithm (created by <a href="http://research.microsoft.com/~melnik/">Sergey Melnik</a>)
</description>
<pubDate>24/07/2006</pubDate>
</amwExample>
</category>
<category>
<name>Tool Interoperability</name>
<amwExample>
<shortName>AMW_HOT_MantisBugzilla</shortName>
<name>Translating Mantis to Bugzilla using AMW and ATL</name>
<docLink>AMW_HOT_MantisBugzilla/AMW_HOT_MantisBugzilla_doc.php</docLink>
<sourceLink>AMW_HOT_MantisBugzilla/AMW_HOT_MantisBugzilla.zip</sourceLink>
<description>
This example is a complete scenario that uses the weaving model from the example "Weaving Mantis
and Bugzilla bug trackers" to generate an ATL transformation.
This transformation translates a model
conforming to the Mantis.ecore metamodel into a model conforming to the Bugzilla.ecore metamodel.
</description>
<pubDate>15/07/2006</pubDate>
</amwExample>
</category>
<category>
<name>
ModelGen operations
</name>
<amwExample>
<shortName>AMW_KM32SQL</shortName>
<name>Translating KM3 into SQL using AMW and ATL</name>
<docLink>AMW_KM32SQL/AMW_KM32SQL_doc.php</docLink>
<sourceLink>AMW_KM32SQL/AMW_KM32SQL.zip</sourceLink>
<description>
This example is a complete bridge between KM3 and SQL DDL that uses injection, extraction, weaving and transformations.
It is similar to the example that transforms SQL to KM3, but in the opposite direction.
This example uses a weaving model between a KM3 metamodel and a SQL DDL metamodel.
The weaving model is used to produce an ATL transformation that translates KM3 models
into SQL models. <br/>We used an KM3 file generated by the example "Translating SQL into KM3".
</description>
<pubDate>26/06/2006</pubDate>
</amwExample>
<amwExample>
<shortName>AMW_SQL2KM3</shortName>
<name>Translating SQL into KM3 using AMW and ATL</name>
<docLink>AMW_SQL2KM3/AMW_SQL2KM3_doc.php</docLink>
<sourceLink>AMW_SQL2KM3/AMW_SQL2KM3.zip</sourceLink>
<description>
This example is a complete bridge between SQL and KM3 that uses injection, extraction, weaving and transformations.
This example uses a weaving model between a SQL DDL metamodel and a KM3 metamodel.
The weaving model is used to produce an ATL transformation that translates SQL DDL models
into KM3 models. We used an SQL extracted from <a href="http://www.mantisbt.org/">Mantis</a> bug tracker.
</description>
<pubDate>20/06/2006</pubDate>
</amwExample>
</category>
<category>
<name>Data translation</name>
<amwExample>
<shortName>AMW_2ATL_XSLT</shortName>
<name>AMW to ATL and XSLT</name>
<docLink>Keys2Nested_AMW2XSLT/Keys2Nested_AMW2XSLT_doc.php</docLink>
<sourceLink>Keys2Nested_AMW2XSLT/Keys2Nested_AMW2XSLT.zip</sourceLink>
<description>
This example generates XSLT and ATL transformations from the same weaving model.
It contains two ATL HOTs (higher-order transformations).
The first HOT transforms a weaving model into an ATL model.
The second HOT transform a weaving model into an XSLT model.
</description>
<pubDate>19/06/2006</pubDate>
</amwExample>
<amwExample>
<shortName>AMWKey2NestedAMW2ATL</shortName>
<name>AMW to ATL - Foreign key to nested</name>
<docLink>Keys2Nested_AMW2ATL/Keys2Nested_AMW2ATL_doc.php</docLink>
<sourceLink>Keys2Nested_AMW2ATL/Keys2Nested_AMW2ATL.zip</sourceLink>
<description>
This example is an complement that uses the metamodel extension between
foreign keys and nested structures.
It provides a HOT (higher-order transformation) that transforms a weaving model into
a transformation model.
</description>
<pubDate>28/04/2006</pubDate>
</amwExample>
<amwExample>
<shortName>UMLProfiles</shortName>
<name>Bridging UML Profiles and Domain Specific Languages</name>
<docLink>UMLProfiles/ExampleUMLProfiles_DSLs.pdf</docLink>
<sourceLink>UMLProfiles/UMLProfiles_DSLs.zip</sourceLink>
<description>
With UML, it is possible to describe domain specific concepts using Profiles. In the DSL approach, a new metamodel is created for each domain-specific language. This example identifies more precisely the relation between UML profiles and metamodels, and presents a tool enabling to bridge these two approaches. This tool is implemented using two ATL (Atlas Transformation Language) transformations combined with a weaving model. It illustrates an AMW example and the simultaneous use of AMW and ATL..
</description>
<pubDate></pubDate>
</amwExample>
</category>
<category>
<name>Weaving models</name>
<amwExample>
<shortName>AMW_MantisBugzilla</shortName>
<name>Weaving Mantis and Bugzilla bug trackers</name>
<docLink>AMW_MantisBugzilla/AMW_MantisBugzilla_doc.php</docLink>
<sourceLink>AMW_MantisBugzilla/AMW_MantisBugzilla.zip</sourceLink>
<description>
This example contains an extension to the core weaving metamodel to support interoperability between different tools.
The example contains a weaving model that captures links between the metamodels of two bug tracking tools
(<a href="http://www.mantisbt.org/">Mantis</a>
and <a href="http://www.bugzilla.org/">Bugzilla</a>). The metamodels are extracted from the
<a href="http://www.eclipse.org/gmt/am3/zoos/">Atlantic Zoo</a>.
</description>
<pubDate>26/06/2006</pubDate>
</amwExample>
<amwExample>
<shortName>AMWKey2Nested</shortName>
<name>Foreign key to nested</name>
<docLink>Keys2Nested_AMW/Keys2Nested_doc.php</docLink>
<sourceLink>Keys2Nested_AMW/Keys2Nested_AMW.zip</sourceLink>
<description>
This example contains an extension of the core weaving metamodel to create correspondences
between a metamodel with foreign key relationships (as in a relational database) and a metamodel that contains
nested structures (as in XML).
</description>
<pubDate>14/04/2006</pubDate>
</amwExample>
</category>
<category>
<name>Merging</name>
<amwExample>
<shortName>MergeGMLElections</shortName>
<name>Merge Election and GML Data</name>
<docLink>MergeGML_Elections/MergeGML_Elections_doc.php</docLink>
<sourceLink>MergeGML_Elections/MergeGML_Elections.zip</sourceLink>
<description>
Extension to the core weaving metamodel to merge between
elections and geographical data (provided by GML)
into an SVG metamodel.
</description>
<pubDate>14/04/2006</pubDate>
</amwExample>
</category>
<category>
<name>Traceability</name>
<amwExample>
<shortName>ATL2WTracer</shortName>
<name>Generating an ATL Execution Trace as a Traceability Weaving Model</name>
<docLink>ATL2WTracer/Traceability_example[1.0].pdf</docLink>
<sourceLink>ATL2WTracer/ATL2WTracer.zip</sourceLink>
<description>
This example generates an ATL execution trace in a weaving model.
We create a higher-order transformation that takes an ATL transformation as
input (e.g., Class to Relational) and
produces an ATL transformation as output. The output ATL transforms Class to Relational models,
and additionally generates a traceability model.
The traceability model conforms to a traceability model that is an
exentension to the core weaving metamodel.
</description>
<pubDate>19/05/2006</pubDate>
</amwExample>
</category>
</amwScenarios>