{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,19]],"date-time":"2025-06-19T04:15:35Z","timestamp":1750306535996,"version":"3.41.0"},"reference-count":22,"publisher":"Association for Computing Machinery (ACM)","issue":"2","license":[{"start":{"date-parts":[[2014,12,4]],"date-time":"2014-12-04T00:00:00Z","timestamp":1417651200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["SIGMOD Rec."],"published-print":{"date-parts":[[2014,12,4]]},"abstract":"<jats:p>Despite the growing adoption of object-relational mapping frameworks, UML and its most widespread extensions do not represent these mappings in a platform independent way. Maintaining mappings scattered in the code is difficult and error prone, specially if the schema is large and serves several systems. This paper proposes ENORM, a notation that extends class models representing all the essential mappings. ENORM is platform independent, providing a meta-model based on design patterns employed by three frameworks of Java, Ruby, and Python languages. An empirical evaluation indicates that ENORM performs well in comparison to separated models.<\/jats:p>","DOI":"10.1145\/2694413.2694418","type":"journal-article","created":{"date-parts":[[2014,12,8]],"date-time":"2014-12-08T16:17:14Z","timestamp":1418055434000},"page":"23-28","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":3,"title":["ENORM"],"prefix":"10.1145","volume":"43","author":[{"given":"Alexandre","family":"Torres","sequence":"first","affiliation":[{"name":"Instituto de Inform\u00e1tica, UFRGS, Porto Alegre, Brazil"}]},{"given":"Renata","family":"Galante","sequence":"additional","affiliation":[{"name":"Instituto de Inform\u00e1tica, UFRGS, Porto Alegre, Brazil"}]},{"given":"Marcelo","family":"Pimenta","sequence":"additional","affiliation":[{"name":"Instituto de Inform\u00e1tica, UFRGS, Porto Alegre, Brazil"}]}],"member":"320","published-online":{"date-parts":[[2014,12,4]]},"reference":[{"key":"e_1_2_1_1_1","unstructured":"A UML Profile for Data Modeling: 2003. http:\/\/www.agiledata.org\/essays\/umlDataModelingProfile.html. Accessed: 2013-10-01.  A UML Profile for Data Modeling: 2003. http:\/\/www.agiledata.org\/essays\/umlDataModelingProfile.html. Accessed: 2013-10-01."},{"key":"e_1_2_1_2_1","unstructured":"Active Record - Object-relation mapping put on rails: 2012. http:\/\/ar.rubyonrails.org\/. Accessed: 2013-10-01.  Active Record - Object-relation mapping put on rails: 2012. http:\/\/ar.rubyonrails.org\/. Accessed: 2013-10-01."},{"key":"e_1_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1145\/2503792.2503808"},{"key":"e_1_2_1_4_1","volume-title":"et al","author":"Beydeda S.","year":"2005","unstructured":"Beydeda , S. et al . 2005 . Model-Driven Software Development. Springer . Beydeda, S. et al. 2005. Model-Driven Software Development. Springer."},{"key":"e_1_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1145\/1228268.1228275"},{"key":"e_1_2_1_6_1","unstructured":"Brown K. and Whitenack B.G. 1996. Crossing Chasms: a pattern language for object-RDBMS integration: the static patterns. Pattern languages of program design 2. Addison-Wesley Longman Publishing Co. Inc. 227--238.   Brown K. and Whitenack B.G. 1996. Crossing Chasms: a pattern language for object-RDBMS integration: the static patterns. Pattern languages of program design 2. Addison-Wesley Longman Publishing Co. Inc. 227--238."},{"key":"e_1_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1145\/319732.319740"},{"key":"e_1_2_1_8_1","unstructured":"Elmasri R. and Navathe S.B. 2003. Fundamentals of Database Systems. Addison Wesley.   Elmasri R. and Navathe S.B. 2003. Fundamentals of Database Systems. Addison Wesley."},{"volume-title":"2013","author":"Essential ORM","key":"e_1_2_1_9_1","unstructured":"Essential ORM Modeler : 2013 . http:\/\/sourceforge.net\/ projects\/eorm\/. Accessed: 2013-12-05. Essential ORM Modeler: 2013. http:\/\/sourceforge.net\/ projects\/eorm\/. Accessed: 2013-12-05."},{"key":"e_1_2_1_10_1","volume-title":"Analysis Patterns: Reusable Object Models","author":"Fowler M.","year":"1996","unstructured":"Fowler , M. 1996 . Analysis Patterns: Reusable Object Models . Addison-Wesley Professional . Fowler, M. 1996. Analysis Patterns: Reusable Object Models. Addison-Wesley Professional."},{"volume-title":"Patterns of Enterprise Application Architecture","author":"Fowler M.","key":"e_1_2_1_11_1","unstructured":"Fowler , M. 2002. Patterns of Enterprise Application Architecture . Addison-Wesley Longman Publishing Co., Inc. Fowler, M. 2002. Patterns of Enterprise Application Architecture. Addison-Wesley Longman Publishing Co., Inc."},{"key":"e_1_2_1_12_1","unstructured":"JSR-000317 Java Persistence 2.0 - Final Release: 2009. http:\/\/jcp.org\/aboutJava\/communityprocess\/final\/jsr317\/index.html. Accessed: 2013-10-01.  JSR-000317 Java Persistence 2.0 - Final Release: 2009. http:\/\/jcp.org\/aboutJava\/communityprocess\/final\/jsr317\/index.html. Accessed: 2013-10-01."},{"key":"e_1_2_1_13_1","doi-asserted-by":"crossref","unstructured":"Juristo N. and Moreno A.M. 2001. Basics of Software Engineering Experimentation. Springer.   Juristo N. and Moreno A.M. 2001. Basics of Software Engineering Experimentation. Springer.","DOI":"10.1007\/978-1-4757-3304-4"},{"key":"e_1_2_1_14_1","volume-title":"Proceedings of the 1997 European Pattern Languages of Programming Conference","author":"Keller W.","year":"1997","unstructured":"Keller , W. 1997 . Mapping Objects to Tables - A Pattern Language . Proceedings of the 1997 European Pattern Languages of Programming Conference ( Irrsee, Germany , 1997). Keller, W. 1997. Mapping Objects to Tables - A Pattern Language. Proceedings of the 1997 European Pattern Languages of Programming Conference (Irrsee, Germany, 1997)."},{"key":"e_1_2_1_15_1","volume-title":"et al","author":"Ko A.J.","year":"2013","unstructured":"Ko , A.J. et al . 2013 . A practical guide to controlled experiments of software engineering tools with human participants. Empirical Software Engineering . (Sep. 2013), 1--32. Ko, A.J. et al. 2013. A practical guide to controlled experiments of software engineering tools with human participants. Empirical Software Engineering. (Sep. 2013), 1--32."},{"key":"e_1_2_1_16_1","volume-title":"et al","author":"Mellor S.J.","year":"2004","unstructured":"Mellor , S.J. et al . 2004 . MDA Distilled: Principles of Model-Driven Architecture. Addison-Wesley . Mellor, S.J. et al. 2004. MDA Distilled: Principles of Model-Driven Architecture. Addison-Wesley."},{"key":"e_1_2_1_17_1","unstructured":"OMG 2001. OMG's Model Driven Architecture.  OMG 2001. OMG's Model Driven Architecture."},{"key":"e_1_2_1_18_1","unstructured":"OMG 2005. Request For Proposal Information Management Metamodel (IMM).  OMG 2005. Request For Proposal Information Management Metamodel (IMM)."},{"key":"e_1_2_1_19_1","unstructured":"SQLAlchemy - The Database Toolkit for Python: 2012. http:\/\/www.sqlalchemy.org\/. Accessed: 2013-10-01.  SQLAlchemy - The Database Toolkit for Python: 2012. http:\/\/www.sqlalchemy.org\/. Accessed: 2013-10-01."},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.jss.2011.01.027"},{"key":"e_1_2_1_21_1","volume-title":"et al","author":"Torres A.","year":"2013","unstructured":"Torres , A. et al . 2013 . Technical Report - Comparing ENORM and separated modeling using Relational and UML class models: a within-subjects experimental study. http:\/\/www.inf.ufrgs.br\/~atorres\/sigmod2013\/. Torres, A. et al. 2013. Technical Report - Comparing ENORM and separated modeling using Relational and UML class models: a within-subjects experimental study. http:\/\/www.inf.ufrgs.br\/~atorres\/sigmod2013\/."},{"key":"e_1_2_1_22_1","unstructured":"UML 2.4.1 Superstructure: 2011. http:\/\/www.omg.org\/spec\/UML\/2.4.1\/Superstructure\/PDF\/. Accessed: 2013-10-01.  UML 2.4.1 Superstructure: 2011. http:\/\/www.omg.org\/spec\/UML\/2.4.1\/Superstructure\/PDF\/. Accessed: 2013-10-01."}],"container-title":["ACM SIGMOD Record"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2694413.2694418","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/2694413.2694418","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T06:12:20Z","timestamp":1750227140000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2694413.2694418"}},"subtitle":["An Essential Notation for Object-Relational Mapping"],"short-title":[],"issued":{"date-parts":[[2014,12,4]]},"references-count":22,"journal-issue":{"issue":"2","published-print":{"date-parts":[[2014,12,4]]}},"alternative-id":["10.1145\/2694413.2694418"],"URL":"https:\/\/doi.org\/10.1145\/2694413.2694418","relation":{},"ISSN":["0163-5808"],"issn-type":[{"type":"print","value":"0163-5808"}],"subject":[],"published":{"date-parts":[[2014,12,4]]},"assertion":[{"value":"2014-12-04","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}