Skip to content
Nuno Macedo edited this page May 28, 2018 · 7 revisions

Repository of examples

Object/relational mapping

The object-relational mapping is a classical example on bidirectional transformations, that maps class diagrams to relational database schemes.

Expand/collapse state diagrams

This example relates hierarchical state machines with non-hierarchical state machines, by the expansion/collapsing of the diagrams.

Feature model/configuration selection

This multidirectional example relates multiple configuration models with a feature model that defines valid configuration.

Multiplicity taxonomy

This is a series of toy transformations designed to test the expressibility of Echo, inspired by the taxonomy for binary relations from the Data Transformation by Calculation tutorial by J. N. Oliveira.

  • set-to-set (relation)
  • set-to-lone (simple)
  • set-to-some (entire)
  • set-to-one (function)
  • lone-to-set (injective)
  • lone-to-lone (simple and injective)
  • lone-to-some (representation)
  • lone-to-one (injection)
  • some-to-set (surjective)
  • some-to-lone (abstraction)
  • some2some (surjective and entire)
  • some2one (surjection)
  • one-to-set (injective and surjective)
  • one-to-lone (injective abstraction)
  • one2some (surjective representation)
  • one2one (bijection)
Relation taxonomy