PAMTraM is an Eclipse- and EMF-based modeling workbench that allows developing and running model-to-model transformations between arbitrary source and target modeling languages. It originated from the PhD thesis of Matthias Freund that is available here (German) and was developed as part of the DFG research project KonTrans - Kontextabhängige Transformationsmodelle (Context-dependent Transformation Models) that was conducted at Institute of Automation at TU Dresden.
If you just want to use PAMTraM as is in order to develop and run model-to-model transformations, you can install the current version into your Eclipse instance via the Update Site.
Note: This update site is only available from within the campus network of TU Dresden! If you have no possibility to connect to this network, you need to clone the repository and install the feature manually.
If you want to extend PAMTraM, you should make use of the Setup File for the Eclipse Installer that will automatically:
- Install all required Eclipse features
- Clone the PAMTraM, GenLibrary, and Eclipse Commons Git repositories
- Import all projects
- Add the imported projects to working sets
- Adjust a couple of settings in the Eclipse installation
In order to execute the installer, perform the following steps:
- Download and execute the Eclipse Installer
- Switch to the Advanced Mode (via the hamburger icon at the upper right of the installer)
- Choose the Eclipse Modeling Tools version (any other version should work as well)
- Add the PAMTraM project by
- clicking the small, green '+' icon,
- entering the URL of the Setup File (https://agtele.eats.et.tu-dresden.de/eclipse/setups/PAMTraM.setup),
- confirming with OK and
- selecting the new project with a double click
- Specify the relevant variables on the next screen (especially the install and clone locations)
- Execute the installer
After the installer finished successfully, you should be good to go...
-
The PAMTraM Projects provide an implementation of the PAMTraM modeling language for mapping models and associated tools.
- The Model Project defines the core language model.
See Model Project Readme - The Edit Project provides edit support for PAMTraM that is among others required by the editor.
See Edit Project Readme - The Editor Project defines the Eclipse-based editor for PAMTraM.
See Edit Project Readme - The Generator Project realizes a generator allowing to semi-automatically generate parts of mapping models based on existing source/target models.
See Generator Project Readme - The PAMTraM Project provides non-UI related features to integrate with the Eclipse workbench like a nature definition in order.
See PAMTraM Project Readme - The PAMTraM UI Project provides UI-related features to integrate with the Eclipse workbench such as model wizards, a perspective and a preference page.
See UI Project Readme
- The Model Project defines the core language model.
-
The GenTrans Projects provide the implementation of the generic transformation algorithm and associated tools.
- The Transformation Project contains the actual implementation of the generic transformation algorithm.
See Transformation Readme - The Ambiguity Resolving Strategy Projects provides several strategies that can be used to resolve ambiguities that occur during an execution of the transformation
- The User Strategy Project provides a strategy based on user interaction.
See User Strategy Readme - The History Strategy Project provides a strategy based on reusing previous transformations.
See History Strategy Readme - The Statistics Strategy Project provides a strategy based statistical evaluations.
See Statistics Strategy Readme
- The User Strategy Project provides a strategy based on user interaction.
- The Transformation UI Project provides UI-related features to integrate the transformation with the Eclipse workbench such as a job for launching a transformation.
See Transformation UI Readme - The UI Project provides UI-related features to allow a user to configure/start transformations from within the Eclipse workbench such as a launch configuration.
See UI Readme
- The Transformation Project contains the actual implementation of the generic transformation algorithm.
- The Feature Project provides the PAMTraM Eclipse Feature consisting of the projects that can be deployed as Plugins to an Eclipse.
See Feature Project Readme - The Examples Feature Project provides the feature providing access to the various casestudies for PAMTraM once installed.
See Examples Feature Project Readme - The Examples Project provides tools for provisioning the various casestudies so that they can be used by the Examples Feature Project .
See Examples Project Readme - The Update Site Project provides the Eclispe update site definition in order to build the installable plugins using the feature projects.
See Update Site Project Readme - The Setup Project provides the setup file that allows a quick start for developers by using the Eclipse Installer.
See Setup Project Readme - The Casestudy Tests Project provides a set of tests for PAMTraM that are based on running the casestudies and comparing the actual to the expected results.
See Casestudy Tests Project Readme
- The Standalone Transformation Project helping with standalone execution of GenTrans transformation, i.e. execution that does not require a running Eclipse.
See Examples Feature Project Readme - The Standalone Feature Project defining the all plugins required for standalone execution of GenTrans transformations.
See Examples Feature Project Readme
- AML-OPC UA
- AutoProbe
- AutoProbe Simplified
- Company-Visualization
- CTT-Amino Light
- Disl-Movisa
- Excel-Movisa TDP
- Library
- Models2016 Paper
- Visu+
- W3CAUI-Movisa
- DFD-UML Activity Diagrams
- XML-XML
The AGTele Eclipse Commons Project contains several features that facilitate working with Eclipse and EMF. PAMTraM makes extensive use of many of those features throughout almost all of its sub-projects.
The AGTele GenLibrary Project provides a generic (base) implementation for a model-based library system for MBUID. PAMTraM integrates GenLibrary so that conforming library entries can be integrated into a model transformation, i.e. instantiated in the course of the transformation.
The Platform metamodel project provides generic, extensible, EMF-based platform modeling language for the Model-based Development of User Interfaces (MBUID). It was developed as part of the same research project as PAMTraM.