Data refinement by calculation
Acta Informatica
Communications of the ACM
CPI: constraints-preserving inlining algorithm for mapping XML DTD to relational schema
Data & Knowledge Engineering - ER2000
Introduction to Functional Programming
Introduction to Functional Programming
Scrap your boilerplate: a practical design pattern for generic programming
Proceedings of the 2003 ACM SIGPLAN international workshop on Types in languages design and implementation
Deforestation: Transforming Programs to Eliminate Trees
ESOP '88 Proceedings of the 2nd European Symposium on Programming
Typed Combinators for Generic Traversal
PADL '02 Proceedings of the 4th International Symposium on Practical Aspects of Declarative Languages
Calculating functional programs
Algebraic and coalgebraic methods in the mathematics of program construction
From XML Schema to Relations: A Cost-Based Approach to XML Storage
ICDE '02 Proceedings of the 18th International Conference on Data Engineering
Source-Based Software Risk Assessment
ICSM '03 Proceedings of the International Conference on Software Maintenance
A comprehensive solution to the XML-to-relational mapping problem
Proceedings of the 6th annual ACM international workshop on Web information and data management
Editorial: transformations everywhere
Science of Computer Programming - Special issue on program transformation
Proceedings of the 32nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Designing information-preserving mapping schemes for XML
VLDB '05 Proceedings of the 31st international conference on Very large data bases
Point-free Program Transformation
Fundamenta Informaticae - Program Transformation: Theoretical Foundations and Basic Techniques. Part 1
Strongly Typed Rewriting For Coupled Software Transformation
Electronic Notes in Theoretical Computer Science (ENTCS)
Transformation of structure-shy programs: applied to XPath queries and strategic functions
Proceedings of the 2007 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
LegoDB: customizing relational storage for XML documents
VLDB '02 Proceedings of the 28th international conference on Very Large Data Bases
ICGSE '07 Proceedings of the International Conference on Global Software Engineering
Co-transformations in Information System Reengineering
Electronic Notes in Theoretical Computer Science (ENTCS)
“Scrap your boilerplate” reloaded
FLOPS'06 Proceedings of the 8th international conference on Functional and Logic Programming
Strategic term rewriting and its application to a VDM-SL to SQL conversion
FM'05 Proceedings of the 2005 international conference on Formal Methods
Type-safe two-level data transformation
FM'06 Proceedings of the 14th international conference on Formal Methods
Program optimizations and transformations in calculation form
GTTSE'05 Proceedings of the 2005 international conference on Generative and Transformational Techniques in Software Engineering
Co-transformations in database applications evolution
GTTSE'05 Proceedings of the 2005 international conference on Generative and Transformational Techniques in Software Engineering
A framework for point-free program transformation
IFL'05 Proceedings of the 17th international conference on Implementation and Application of Functional Languages
Coupled schema transformation and data conversion for XML and SQL
PADL'07 Proceedings of the 9th international conference on Practical Aspects of Declarative Languages
From spreadsheets to relational databases and back
Proceedings of the 2009 ACM SIGPLAN workshop on Partial evaluation and program manipulation
Bidirectional Transformations: A Cross-Discipline Perspective
ICMT '09 Proceedings of the 2nd International Conference on Theory and Practice of Model Transformations
Collateral evolution of applications and databases
Proceedings of the joint international and annual ERCIM workshops on Principles of software evolution (IWPSE) and software evolution (Evol) workshops
A requirement-driven approach to enterprise application development
WISM'10 Proceedings of the 2010 international conference on Web information systems and mining
A conceptual approach to database applications evolution
ER'10 Proceedings of the 29th international conference on Conceptual modeling
Transformation of structure-shy programs with application to XPath queries and strategic functions
Science of Computer Programming
Generating database migrations for evolving web applications
Proceedings of the 10th ACM international conference on Generative programming and component engineering
Managing the evolution of data-intensive Web applications by model-driven techniques
Software and Systems Modeling (SoSyM)
Hi-index | 0.00 |
Coupled transformation occurs when multiple software artifacts must be transformed in such a way that they remain consistent with each other. For instance, when a database schema is adapted in the context of system maintenance, the persistent data residing in the system's database needs to be migrated to conform to the adapted schema. Also, queries embedded in the application code and any declared referential constraints must be adapted to take the schema changes into account. As another example, in XML-to-relational data mapping, a hierarchical XML Schema is mapped to a relational SQL schema with appropriate referential constraints, and the XML documents and queries are converted into relational data and relational queries. The 2LT project is aimed at providing a formal basis for coupled transformation. This formal basis is found in data refinement theory, point-free program calculation, and strategic term rewriting. We formalize the coupled transformation of a data type by an algebra of information-preserving data refinement steps, each witnessed by appropriate data conversion functions. Refinement steps are modeled by so-called two-level rewrite rules on type expressions that synthesize conversion functions between redex and reduct while rewriting. Strategy combinators are used to composed two-level rewrite rules into complete rewrite systems. Point-free program calculation is applied to optimized synthesize conversion function, to migrate queries, and to normalize data type constraints. In this paper, we provide an overview of the challenges met by the 2LT project and we give a sketch of the solutions offered.