publications: - title: "Type-Safe Two-Level Data Transformation" author: - name: "Alcino Cunha" link: "http://www.di.uminho.pt/~mac/" - name: "José Nuno Oliveira" link: "http://www.di.uminho.pt/~jno/" - name: "Joost Visser" link: "http://www.di.uminho.pt/~joost.visser/" year: "2006" doi: "http://dx.doi.org/10.1007/11813040_20" abstract: "A two-level data transformation consists of a type-level transformation of a data format coupled with value-level transformations of data instances corresponding to that format. Examples of two-level data transformations include XML schema evolution coupled with document migration, and data mappings used for interoperability and persistence. We provide a formal treatment of two-level data transformations that is type-safe in the sense that the well-formedness of the value-level transformations with respect to the type-level transformation is guarded by a strong type system. We rely on various techniques for generic functional programming to implement the formalization in Haskell. The formalization addresses various two-level transformation scenarios, covering fully automated as well as user-driven transformations, and allowing transformations that are information-preserving or not. In each case, two-level transformations are disciplined by one-step transformation rules and type-level transformations induce value-level transformations. We demonstrate an example hierarchical-relational mapping and subsequent migration of relational data induced by hierarchical format evolution." links: doi: "http://dx.doi.org/10.1007/11813040_20" tags: - "rule-based" - "generic programming" - "XML" - "XML Schema" - "coupled evolution" - "functional programming" - "Haskell" - "type system" - "data-flow programming" - "data-flow" - "format evolution" - "rules" - "migration" - "transformation system" - "programming" - "2LT" - "transformation" - "program transformation" researchr: "https://researchr.org/publication/CunhaOV06" cites: 0 citedby: 0 pages: "284-299" booktitle: "FM 2006: Formal Methods, 14th International Symposium on Formal Methods, Hamilton, Canada, August 21-27, 2006, Proceedings" editor: - name: "Jayadev Misra" link: "https://www.cs.utexas.edu/~misra/" - name: "Tobias Nipkow" link: "https://researchr.org/alias/tobias-nipkow" - name: "Emil Sekerinski" link: "https://researchr.org/alias/emil-sekerinski" volume: "4085" series: "Lecture Notes in Computer Science" publisher: "Springer" isbn: "3-540-37215-6" kind: "inproceedings" key: "CunhaOV06"