@conference {PachecoCunha:12a, title = {Multifocal: A Strategic Bidirectional Transformation Language for XML Schemas}, booktitle = {Proceedings of the 5th International Conference on Model Transformation - ICMT}, series = {LNCS}, volume = {7307}, year = {2012}, month = {May}, pages = {89{\textendash}104}, publisher = {Springer-Verlag}, organization = {Springer-Verlag}, address = {Prague, Czech Republic}, abstract = {

Lenses are one of the most popular approaches to define bidirectional transformations between data models. However, writing a lens transformation typically implies describing the concrete steps that convert values in a source schema to values in a target schema. In contrast, many XML-based languages allow writing structure-shy programs that manipulate only specific parts of XML documents without having to specify the behavior for the remaining structure. In this paper, we propose a structure-shy bidirectional two-level transformation language for XML Schemas, that describes generic type-level transformations over schema representations coupled with value-level bidirectional lenses for document migration. When applying these two-level programs to particular schemas, we employ an existing algebraic rewrite system to optimize the automatically-generated lens transformations, and compile them into Haskell bidirectional executables. We discuss particular examples involving the generic evolution of recursive XML Schemas, and compare their performance gains over non-optimized definitions.

}, attachments = {https://haslab.uminho.pt/sites/default/files/alcino/files/icmt12.pdf}, author = {Alcino Cunha and Hugo Pacheco} }