Bidirectionalizing tree transformation languages: a case study

A transformation from the source data to a target view is said to be bidirectional if, when the target is altered, the transformation somehow induces a way to reflect the changes back to the source, with
the updated source satisfying certain healthiness conditions. Several bidirectional transformation languages have been proposed. In this paper, on the other hand, we aim at making existing transformations bidirectional.
As a case study we chose the Haskell combinator library, HaXML, and embed it into Inv, a language the authors
previously developed to deal with bidirectional updating. With the embedding, existing HaXML transformations gain bidirectionality.