Skip to main content

Mappings Make Data Processing Go ’Round

An Inter-paradigmatic Mapping Tutorial

  • Chapter
Book cover Generative and Transformational Techniques in Software Engineering (GTTSE 2005)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 4143))

Abstract

Whatever programming paradigm for data processing we choose, data has the tendency to live on the other side or to eventually end up there. The major paradigms for data processing are Cobol, object, relational and XML; each paradigm offers many facets and many versions; each paradigm provides specific forms of data models (object models, relational schemas, XML schemas, etc.). Each data-processing application depends on a horde of interrelated data models and artifacts that are derived from data models (such as data-access layers). Such conglomerations of data models are challenging due to paradigmatic impedance mismatches, performance requirements, loose-coupling requirements, and others. This ubiquitous problem calls for a good understanding of techniques for mappings between data models, actual data, and operations on data. This tutorial lists and discusses mapping scenarios, mapping techniques, impedance mismatches and research challenges regarding mappings.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Achten, P., van Eekelen, M.C.J.D., Plasmeijer, M.J.: Compositional Model-Views with Generic Graphical User Interfaces. In: Jayaraman, B. (ed.) PADL 2004. LNCS, vol. 3057, pp. 39–55. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  2. Achten, P., van Eekelen, M.C.J.D., Plasmeijer, M.J.: Generic Graphical User Interfaces. In: Trinder, P., Michaelson, G.J., Peña, R. (eds.) IFL 2003. LNCS, vol. 3145, pp. 152–167. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  3. Aho, A., Sethi, R., Ullman, J.: Compilers. In: Principles, Techniques and Tools. Addison-Wesley, Reading (1986)

    Google Scholar 

  4. Aiken, P., Muntz, A.H., Richards, R.: Dod legacy systems: Reverse engineering data requirements. Communications of the ACM 37(5), 26–41 (1994)

    Article  Google Scholar 

  5. Aitken, W., Dickens, B., Kwiatkowski, P., de Moor, O., Richter, D., Simonyi, C.: Transformation in intentional programming. In: Devanbu, P., Poulin, J. (eds.) Proceedings, Fifth International Conference on Software Reuse, pp. 114–123. IEEE Computer Society Press, Los Alamitos (1998)

    Google Scholar 

  6. Alves, T.L., Silva, P.F., Visser, J., Oliveira, J.N.: Strategic Term Rewriting and Its Application to a VDMSL to SQL Conversion. In: Fitzgerald, J.S., Hayes, I.J., Tarlecki, A. (eds.) FM 2005. LNCS, vol. 3582, pp. 399–414. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  7. Ambler, S.W.: The Object-Relational Impedance Mismatch (2002–2005) Amysoft Inc., Online article: http://www.agiledata.org/essays/impedanceMismatch.html

  8. ANSI. Information Technology — Programming languages, their environments and system software interfaces — Native COBOL Syntax for XML Support (February 2005), J4/05-0049, WG4n0229, ISO/IEC JTC 1/SC 22/WG4, ISO/IEC TR 24716:200x(E)

    Google Scholar 

  9. Aycock, J.: Extending Old Compiler Tools with Meta-Tools. In: Arabnia, H.R., Reza, H. (eds.) Proceedings of the International Conference on Software Engineering Research and Practice, SERP 2004, Las Vegas, Nevada, USA, June 21-24, vol. 2, pp. 841–845. CSREA Press (2004)

    Google Scholar 

  10. Bancilhon, F., Spyratos, N.: Update semantics of relational views. ACM Transactions on Database Systems 6(4), 557–575 (1981)

    Article  MATH  Google Scholar 

  11. Banerjee, J., Kim, W., Kim, H.-J., Korth, H.F.: Semantics and implementation of schema evolution in object-oriented databases. In: SIGMOD 1987: Proceedings of the 1987 ACM SIGMOD International conference on management of data, pp. 311–322. ACM Press, New York (1987)

    Chapter  Google Scholar 

  12. Bierman, G.M., Meijer, E., Schulte, W.: The Essence of Data Access in Cω. In: Black, A.P. (ed.) ECOOP 2005. LNCS, vol. 3586, pp. 287–311. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  13. Bohannon, A., Vaughan, J.A., Pierce, B.C.: Relational Lenses: A Language for Updateable Views. In: Principles of Database Systems (PODS) (2006), Extended version available as University of Pennsylvania technical report MS-CIS-05-27

    Google Scholar 

  14. Boyapati, C., Liskov, B., Shrira, L., Moh, C.-H., Richman, S.: Lazy modular upgrades in persistent object stores. In: OOPSLA 2003: Proceedings of the 18th annual ACM SIGPLAN conference on object-oriented programing, systems, languages, and applications, pp. 403–417. ACM Press, New York (2003)

    Chapter  Google Scholar 

  15. Brookes, A.: XML data binding. Dr. Dobb’s Journal of Software Tools 28(3), 26, 28, 30, 32, 35–36 (March 2003)

    Google Scholar 

  16. Burton, F., Cameron, R.: Pattern Matching with Abstract Data Types. Journal of Functional Programming 3(2), 171–190 (1993)

    Article  MathSciNet  Google Scholar 

  17. Clarke, D., Drossopoulou, S.: Ownership, encapsulation and the disjointness of type and effect. In: OOPSLA 2002: Proceedings of the 17th ACM SIGPLAN conference on object-oriented programming, systems, languages, and applications, pp. 292–310. ACM Press, New York (2002)

    Chapter  Google Scholar 

  18. Clarke, D.G., Potter, J.M., Noble, J.: Ownership types for flexible alias protection. In: OOPSLA 1998: Proceedings of the 13th ACM SIGPLAN conference on object-oriented programming, systems, languages, and applications, pp. 48–64. ACM Press, New York (1998)

    Chapter  Google Scholar 

  19. Codd, E.F.: A Relational Model of Data for Large Shared Data Banks. Communications of the ACM 13(6), 377–387 (1970); Also published in/as: Stonebraker, M.: Readings in Database Systems, pp. 5–15. Morgan-Kaufmann, San Francisco (1988)

    Google Scholar 

  20. Cytron, R., Ferrante, J., Rosen, B., Wegman, M., Zadeck, F.: Efficiently computing static single assignment form and the control dependence graph. ACM Transactions on Programming Languages and Systems 13(4), 451–490 (1991)

    Article  Google Scholar 

  21. Date, C.J.: A formal definition of the relational model. SIGMOD Rec. 13(1), 18–29 (1982)

    Article  Google Scholar 

  22. van Deursen, A., Klint, P., Tip, F.: Origin Tracking. Journal of Symbolic Computation 15, 523–545 (1993)

    Article  MATH  Google Scholar 

  23. Eisenecker, U., Czarnecki, K.: Generative Programming: Methods, Tools, and Applications. Addison-Wesley, Reading (2000)

    Google Scholar 

  24. Ellis, C., Gibbs, S., Rein, G.: Groupware: some issues and experiences. Communications of the ACM 34(1), 39–58 (1991)

    Article  Google Scholar 

  25. Fagan, M.: Soft typing: an approach to type checking for dynamically typed languages. PhD thesis, Rice University (1991)

    Google Scholar 

  26. Favre, J.-M.: Meta-models and Models Co-Evolution in the 3D Software Space. In: Proceedings of International Workshop on Evolution of Large-scale Industrial Software Applications (ELISA 2003) (2003)

    Google Scholar 

  27. Fernandez, M., Kadiyska, Y., Suciu, D., Morishima, A., Tan, W.-C.: Silkroute: A framework for publishing relational data in xml. ACM Transactions on Database Systems 27(4), 438–493 (2002)

    Article  Google Scholar 

  28. Ferrante, J., Ottenstein, K., Warren, J.: The Program Dependence Graph and Its Use in Optimization. ACM Transactions on Programming Languages and Systems 9(3), 319–349 (1987)

    Article  MATH  Google Scholar 

  29. Findler, R.B., Felleisen, M.: Contracts for higher-order functions. In: ICFP 2002: Proceedings of the seventh ACM SIGPLAN international conference on Functional programming, pp. 48–59. ACM Press, New York (2002)

    Chapter  Google Scholar 

  30. Fitzgerald, J., Larsen, P.G., Mukherjee, P., Plat, N., Verhoef, M.: Validated Designs for Object-Oriented Systems. Springer, Heidelberg (2005)

    MATH  Google Scholar 

  31. Fowler, M.: Refactoring: Improving the Design of Existing Code. Addison-Wesley, Reading (1999)

    Google Scholar 

  32. Funderburk, J.E., Malaika, S., Reinwald, B.: XML programming with SQL/XML and XQuery. IBM Systems Journal 41(4), 642–665 (2002)

    Article  Google Scholar 

  33. Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, Reading (1994)

    Google Scholar 

  34. Gottlob, G., Paolini, P., Zicari, R.: Properties and update semantics of consistent views. ACM Transactions on Database Systems 13(4), 486–524 (1988)

    Article  MATH  MathSciNet  Google Scholar 

  35. Gray, R., Heuring, V., Levi, S., Sloane, A., Waite, W.: Eli: A complete, flexible compiler construction system. Communications of the ACM 35(2), 121–130 (1992)

    Article  Google Scholar 

  36. Greenwald, M.B., Moore, J.T., Pierce, B.C., Schmitt, A.: A language for bi-directional tree transformations. Technical Report MS-CIS-03-08, University of Pennsylvania (2003) (revised, April 2004)

    Google Scholar 

  37. Hainaut, J.-L., Tonneau, C., Joris, M., Chandelon, M.: Schema Transformation Techniques for Database Reverse Engineering. In: Proceedings, 12th Int. Conf. on ER Approach, Arlington-Dallas, E/R Institute (1993)

    Google Scholar 

  38. Hannemann, J., Kiczales, G.: Design pattern implementation in Java and AspectJ. In: Norris, C., Fenwick, J.J.B. (eds.) Proceedings of the 17th ACM conference on object-oriented programming, systems, languages, and applications, OOPSLA 2002. ACM SIGPLAN Notices, vol. 37(11), pp. 161–173. ACM Press, New York (2002)

    Chapter  Google Scholar 

  39. Henrad, J., Hick, J.-M., Thiran, P., Hainaut, J.-L.: Strategies for Data Reengineering. In: Proceedings, Working Conference on Reverse Engineering (WCRE 2002), pp. 211–220. IEEE Computer Society Press, Los Alamitos (2002)

    Chapter  Google Scholar 

  40. Herranz, A., Nogueira, P.: More Than Parsing. In: Fraguas, F.J.L. (ed.) Spanish V Conference on Programming and Languages (PROLE 2005), Thomson-Paraninfo, September 14–16, pp. 193–202 (2005)

    Google Scholar 

  41. Hirschfeld, R., Lämmel, R.: Reflective Designs. IEE Proceedings Software 152(1), 38–51 (2005), Special Issue on Reusable Software Libraries

    Article  Google Scholar 

  42. Hoare, C.A.R.: Proof of Correctness of Data Representations. Acta Informatic 1, 271–281 (1972)

    Article  MATH  Google Scholar 

  43. Hogshead Davis, K., Aiken, P.: Data Reverse Engineering: A Historical Survey. In: Working Conference on Reverse Engineering, WCRE 2000, pp. 70–78. IEEE Computer Society Press, Los Alamitos (2000)

    Chapter  Google Scholar 

  44. Holt, R., Winter, A., Schürr, A.: GXL: Toward a Standard Exchange Format. In: Proceedings of the Seventh Working Conference on Reverse Engineering (WCRE 2000), pp. 162–171. IEEE Computer Society Press, Los Alamitos (2000)

    Chapter  Google Scholar 

  45. Hu, Z., Mu, S.-C., Takeichi, M.: A programmable editor for developing structured documents based on bidirectional transformations. In: Proceedings of ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation, pp. 178–189. ACM Press, New York (2004)

    Chapter  Google Scholar 

  46. Huzar, Z., Kuzniarz, L., Reggio, G., Sourrouille, J., Staron, M.: Consistency Problems in UML-based Software Development II. In: Workshop proceedings; Research Report 2003:06 (2003)

    Google Scholar 

  47. ISO. ISO/IEC 14977:1996(E), Information technology — Syntactic metalanguage — Extended BNF (1996) (International Organization for Standardization)

    Google Scholar 

  48. ISO/IEC. Information technology — Programming languages — COBOL (2002); Reference number ISO/IEC 1989:2002(E)

    Google Scholar 

  49. Johnson, S.: YACC - Yet Another Compiler-Compiler. Technical Report Computer Science No. 32, Bell Laboratories, Murray Hill, New Jersey (1975)

    Google Scholar 

  50. de Jonge, M., Visser, J.: Grammars as Contracts. In: Butler, G., Jarzabek, S. (eds.) GCSE 2000. LNCS, vol. 2177, pp. 85–99. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  51. Kadhim, B., Waite, W.: Maptool—supporting modular syntax development. In: Gyimóthy, T. (ed.) CC 1996. LNCS, vol. 1060, pp. 268–280. Springer, Heidelberg (1996)

    Google Scholar 

  52. Kiczales, G.: The Fun has Just Begun. In: AOSD 2003 Keynote Address (2003), available from: http://www.cs.ubc.ca/~gregor

  53. Kiczales, G., Hilsdale, E., Hugunin, J., Kersten, M., Palm, J., Griswold, W.G.: An Overview of AspectJ. In: Knudsen, J.L. (ed.) ECOOP 2001. LNCS, vol. 2072, pp. 327–353. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  54. Klint, P., Lämmel, R., Verhoef, C.: Toward an engineering discipline for grammarware. ACM Transactions on Software Engineering and Methodology 14(3), 331–380 (2005)

    Article  Google Scholar 

  55. Knuth, D.: Semantics of context-free languages. Mathematical Systems Theory 2, 127–145 (1968); Corrections 5, 95–96 (1971)

    Article  MATH  MathSciNet  Google Scholar 

  56. Kort, J., Lämmel, R.: Parse-Tree Annotations Meet Re-Engineering Concerns. In: Proceedings, Source Code Analysis and Manipulation (SCAM 2003), Amsterdam, pp. 161–172. IEEE Computer Society Press, Los Alamitos (2003)

    Google Scholar 

  57. Kort, J., Lämmel, R., Verhoef, C.: The Grammar Deployment Kit. In: van den Brand, M., Lämmel, R. (eds.) Proceedings, Language Descriptions, Tools, and Applications (LDTA 2002). ENTCS, vol. 65, p. 7. Elsevier Science, Amsterdam (2002)

    Google Scholar 

  58. Koschke, R., Girard, J.-F.: An intermediate representation for reverse engineering analyses. In: Proceedings, Working Conference on Reverse Engineering (WCRE 1998), pp. 241–250. IEEE Computer Society Press, Los Alamitos (1998)

    Google Scholar 

  59. Krasner, G.E., Pope, S.T.: A cookbook for using the model-view-controller user interface paradigm in Smalltalk-80. Journal of Object-Oriented Programming 1(3), 26–49 (1988)

    Google Scholar 

  60. Kuzniarz, L., Reggio, G., Sourrouille, J., Huzar, Z.: Consistency Problems in UML-based Software Development. In: Workshop proceedings; Research Report 2002:06 (2002)

    Google Scholar 

  61. Lämmel, R.: Coupled Software Transformations (extended Abstract). In: Proceedings of the First International Workshop on Software Evolution Transformations, p. 5 (November 2004), Online proceedings available at: http://banff.cs.queensu.ca/set2004/

  62. Lämmel, R., Peyton Jones, S.: Scrap your boilerplate: a practical design pattern for generic programming. ACM SIGPLAN Notices 38(3), 26–37 (2003); Proceedings of the ACM SIGPLAN Workshop on Types in Language Design and Implementation, TLDI 2003 (2003)

    Article  Google Scholar 

  63. Lämmel, R., Peyton Jones, S.: Scrap more boilerplate: reflection, zips, and generalised casts. In: ACM SIGPLAN International Conference on Functional Programming (ICFP 2004), Snowbird, Utah, pp. 244–255. ACM Press, New York (2004)

    Chapter  Google Scholar 

  64. Lämmel, R., Wachsmuth, G.: Transformation of SDF syntax definitions in the ASF+SDF Meta-Environment. In: van den Brand, M., Parigot, D. (eds.) Proceedings, Language Descriptions, Tools and Applications (LDTA 2001). ENTCS, vol. 44. Elsevier Science, Amsterdam (2001)

    Google Scholar 

  65. Lerner, B.S.: A model for compound type changes encountered in schema evolution. ACM Transactions on Database Systems 25(1), 83–127 (2000)

    Article  Google Scholar 

  66. Liskov, B.: Keynote address - data abstraction and hierarchy. In: OOPSLA 1987: Addendum to the proceedings on object-oriented programming systems, languages and applications (Addendum), pp. 17–34. ACM Press, New York (1987)

    Chapter  Google Scholar 

  67. Liu, C.-T., Chrysanthis, P.K., Chang, S.-K.: Database Schema Evolution through the Specification and Maintenance of Changes on Entities and Relationships. In: Loucopoulos, P. (ed.) ER 1994. LNCS, vol. 881, pp. 132–151. Springer, Heidelberg (1994)

    Google Scholar 

  68. Lohmann, W., Riedewald, G., Stoy, M.: Semantics-preserving migration of semantic rules after left recursion removal in attribute grammars. In: Proceedings of 4th Workshop on Language Descriptions, Tools and Applications (LDTA 2004). ENTCS, vol. 110, pp. 133–148. Elsevier Science, Amsterdam (2004)

    Google Scholar 

  69. Mamas, E., Kontogiannis, K.: Towards portable source code representations using XML. In: Proceedings, Working Conference on Reverse Engineering (WCRE 2000), pp. 172–182. IEEE Computer Society Press, Los Alamitos (2000)

    Chapter  Google Scholar 

  70. McLaughlin, B.: Java and XML data binding. In: Nutshell handbook. O’Reilly & Associates Inc., Sebastopol (2002)

    Google Scholar 

  71. Meijer, E., Schulte, W.: Unifying tables, objects and documents. In: Proceedings of Declarative Programming in the Context of OO Languages (DP-COOL) (September 2003)

    Google Scholar 

  72. Meijer, E., Schulte, W., Bierman, G.: Programming with circles, triangles and rectangles. In: XML Conference and Exposition (December 2003)

    Google Scholar 

  73. Microsoft Corp., http://msdn.microsoft.com/netframework/future/linq/

  74. Morgan, C.: Programming from Specifications. Prentice Hall International, Englewood Cliffs (1990)

    MATH  Google Scholar 

  75. Noble, J.: Basic relationship patterns. In: Second European Conference on Pattern Languages of Programming (1997); Siemens Technical Report

    Google Scholar 

  76. Noble, J., Grundy, J.: Explicit Relationships in Object Oriented Development. In: Mingins, C., Duke, R., Meyer, B. (eds.) Proceedings of TOOLS 18: Technology of Object-Oriented Languages and Systems Conference, pp. 211–225. Prentice Hall, Englewood Cliffs (1995)

    Google Scholar 

  77. Novak Jr., G.S.: Creation of views for reuse of software with different data representations. IEEE Transactions on Software Engineering 21(12), 993–1005 (1995)

    Article  Google Scholar 

  78. Oliveira, J.: Software Reification using the SETS Calculus. In: Proceedings of the BCS FACS 5th Refinement Workshop, Theory and Practice of Formal Software Development, London, UK, pp. 140–171. Springer, Heidelberg (1992)

    Google Scholar 

  79. Oliveira, J.: Calculate databases with ’simplicity’ (September 2004), Presentation at the IFIP WG 2.1 #59 Meeting, Nottingham, UK (2004)

    Google Scholar 

  80. Opdyke, W.: Refactoring Object-Oriented Frameworks. PhD thesis, University of Illinois at Urbana-Champaign (1992)

    Google Scholar 

  81. Paakki, J.: Attribute Grammar Paradigms — A High-Level Methodology in Language Implementation. ACM Computing Surveys 27(2), 196–255 (1995)

    Article  Google Scholar 

  82. Park, J., Ram, S.: Information systems interoperability: What lies beneath? ACM Transactions on Information Systems 22(4), 595–632 (2004)

    Article  Google Scholar 

  83. Purtilo, J., Callahan, J.: Parse tree annotations. Communications of the ACM 32(12), 1467–1477 (1989)

    Article  Google Scholar 

  84. Sattler, K.-U., Geist, I., Schallehn, E.: Concept-based querying in mediator systems. The VLDB Journal 14(1), 97–111 (2005)

    Article  Google Scholar 

  85. Selic, B.: The Pragmatics of Model-Driven Development. IEEE Software, 19–25 (September/October 2003) (Special Issue on Model-Driven Development)

    Google Scholar 

  86. Shanmugasundaram, J., Shekita, E.J., Barr, R., Carey, M.J., Lindsay, B.G., Pirahesh, H., Reinwald, B.: Efficiently Publishing Relational Data as XML Documents. In: VLDB 2000: Proceedings of the 26th International Conference on Very Large Data Bases, pp. 65–76. Morgan Kaufmann Publishers Inc., San Francisco (2000)

    Google Scholar 

  87. Sheard, T.: Generic unification via two-level types and parameterized modules. In: ICFP 2001: Proceedings of the sixth ACM SIGPLAN International Conference on Functional Programming, pp. 86–97. ACM Press, New York (2001)

    Chapter  Google Scholar 

  88. Simonyi, C.: The death of programming languages, the birth of intentional programming. Technical report, Microsoft, Inc. (September 1995), Available from: http://citeseer.nj.nec.com/simonyi95death.html

  89. Spitta, T., Werner, F.: Die Wiederverwendung von Daten in SAP R/3. Information Management & Consulting (IM) 15, 51–56 (2000) (in German)

    Google Scholar 

  90. Sun, C., Jia, X., Zhang, Y., Yang, Y., Chen, D.: Achieving convergence, causality preservation, and intention preservation in real-time cooperative editing systems. ACM Transactions on Computer-Human Interaction 5(1), 63–108 (1998)

    Article  Google Scholar 

  91. Sun Microsystems. The Java architecture for XML binding (JAXB) (2001), http://java.sun.com/xml/jaxb

  92. Thomas, D.: The Impedance Imperative Tuples + Objects + Infosets = Too Much Stuff! Journal of Object Technology 2(5), 7–12 (2003), Online available at: http://www.jot.fm/jot/issues/issue_2003_09/column1/

    Article  Google Scholar 

  93. Van De Vanter, M.: Preserving the documentary structure of source code in language-based transformation tools. In: Proceedings, Source Code Analysis and Manipulation (SCAM 2001). IEEE Computer Society Press, Los Alamitos (2001)

    Google Scholar 

  94. W3C. Document Object Model (DOM) (1997–2003), http://www.w3.org/DOM/

  95. W3C. XML Information Set (2nd edn.) (1999–2004), http://www.w3.org/TR/xml-infoset/

  96. W3C. Extensible Markup Language (XML) 1.0 (3rd edn.) W3C Recommendation (February 2004), http://www.w3.org/TR/2004/REC-xml-20040204/

  97. W3C. XML Schema: Component Designators, W3C Working Draft, March 29 (2005), http://www.w3.org/TR/xmlschema-ref/

  98. Wadler, P.: Views: a way for pattern matching to cohabit with data abstraction. In: POPL 1987: Proceedings of the 14th ACM SIGACT-SIGPLAN symposium on Principles of programming languages, pp. 307–313. ACM Press, New York (1987)

    Chapter  Google Scholar 

  99. Wadler, P.: Deforestation: transforming programs to eliminate trees. Theor. Comput. Sci. 73(2), 231–248 (1990)

    Article  MATH  MathSciNet  Google Scholar 

  100. Walmsley, P.: Definitive XML Schema, 1st edn., p. 556. Prentice Hall, Englewood Cliffs (2001)

    Google Scholar 

  101. Wright, A.K., Cartwright, R.: A practical soft type system for Scheme. ACM Transactions on Programming Languages and Systems 19(1), 87–152 (1997)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2006 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Lämmel, R., Meijer, E. (2006). Mappings Make Data Processing Go ’Round. In: Lämmel, R., Saraiva, J., Visser, J. (eds) Generative and Transformational Techniques in Software Engineering. GTTSE 2005. Lecture Notes in Computer Science, vol 4143. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11877028_6

Download citation

  • DOI: https://doi.org/10.1007/11877028_6

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-45778-7

  • Online ISBN: 978-3-540-46235-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics