{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T04:26:49Z","timestamp":1750220809395,"version":"3.41.0"},"publisher-location":"New York, NY, USA","reference-count":26,"publisher":"ACM","license":[{"start":{"date-parts":[[2019,7,3]],"date-time":"2019-07-03T00:00:00Z","timestamp":1562112000000},"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":[],"published-print":{"date-parts":[[2019,7,3]]},"DOI":"10.1145\/3361149.3361175","type":"proceedings-article","created":{"date-parts":[[2019,12,5]],"date-time":"2019-12-05T14:07:37Z","timestamp":1575554857000},"page":"1-13","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":1,"title":["Elementary structural data composition patterns"],"prefix":"10.1145","author":[{"given":"Ruslan","family":"Batdalov","sequence":"first","affiliation":[{"name":"Riga Technical University, Riga, Latvia"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Oksana","family":"Nikiforova","sequence":"additional","affiliation":[{"name":"Riga Technical University, Riga, Latvia"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2019,7,3]]},"reference":[{"key":"e_1_3_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1145\/3011784.3011822"},{"key":"e_1_3_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1145\/3282308.3282341"},{"key":"e_1_3_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1515\/acss-2016-0012"},{"key":"e_1_3_2_1_4_1","volume-title":"Rivest","author":"Cormen Thomas H.","year":"2001","unstructured":"Thomas H. Cormen , Charles E. Leiserson , and Ronald L . Rivest . 2001 . Introduction To Algorithms. MIT Press . Thomas H. Cormen, Charles E. Leiserson, and Ronald L. Rivest. 2001. Introduction To Algorithms. MIT Press."},{"key":"e_1_3_2_1_5_1","unstructured":"ECMA-262 2018. ECMAScript\u00ae 2018 Language Specification (ninth ed.). Standard. Ecma International.  ECMA-262 2018. ECMAScript\u00ae 2018 Language Specification (ninth ed.). Standard. Ecma International."},{"volume-title":"ECMA-334 2017. C# Language Specification","key":"e_1_3_2_1_6_1","unstructured":"ECMA-334 2017. C# Language Specification ( fifth ed.). Standard. Ecma International . ECMA-334 2017. C# Language Specification (fifth ed.). Standard. Ecma International."},{"volume-title":"Common Language Infrastructure (CLI)","key":"e_1_3_2_1_7_1","unstructured":"ECMA-335 2012. Common Language Infrastructure (CLI) ( sixth ed.). Standard. Ecma International . ECMA-335 2012. Common Language Infrastructure (CLI) (sixth ed.). Standard. Ecma International."},{"volume-title":"The JSON Data Interchange Syntax","key":"e_1_3_2_1_8_1","unstructured":"ECMA-404 2017. The JSON Data Interchange Syntax ( second ed.). Standard. Ecma International . ECMA-404 2017. The JSON Data Interchange Syntax (second ed.). Standard. Ecma International."},{"key":"e_1_3_2_1_9_1","unstructured":"\u00c9cole Polytechnique F\u00e9d\u00e9rale de Lausanne 2018. Scala Standard Library. \u00c9cole Polytechnique F\u00e9d\u00e9rale de Lausanne. http:\/\/www.scala-lang.org\/api\/2.12.7\/  \u00c9cole Polytechnique F\u00e9d\u00e9rale de Lausanne 2018. Scala Standard Library. \u00c9cole Polytechnique F\u00e9d\u00e9rale de Lausanne. http:\/\/www.scala-lang.org\/api\/2.12.7\/"},{"key":"e_1_3_2_1_10_1","unstructured":"M. Fowler. 2012. Patterns of Enterprise Application Architecture. Pearson Education.  M. Fowler. 2012. Patterns of Enterprise Application Architecture. Pearson Education."},{"key":"e_1_3_2_1_11_1","volume-title":"Design Patterns: Elements of Reusable Object-Oriented Software","author":"Gamma Erich","year":"1995","unstructured":"Erich Gamma , Richard Helm , Ralph Johnson , and John Vlissides . 1995 . Design Patterns: Elements of Reusable Object-Oriented Software . Addison-Wesley Publishing Company . Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides. 1995. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley Publishing Company."},{"key":"e_1_3_2_1_12_1","unstructured":"James Gosling Bill Joy Guy Steele Gilad Bracha Alex Buckley and Daniel Smith. 2018. The Java Language Specification. Java SE 11 Edition.  James Gosling Bill Joy Guy Steele Gilad Bracha Alex Buckley and Daniel Smith. 2018. The Java Language Specification. Java SE 11 Edition."},{"key":"e_1_3_2_1_13_1","unstructured":"ISO\/IEC 14882:2017 2017. Information technology --- Programming languages --- C++. Standard. ISO\/IEC.  ISO\/IEC 14882:2017 2017. Information technology --- Programming languages --- C++. Standard. ISO\/IEC."},{"key":"e_1_3_2_1_14_1","unstructured":"ISO\/IEC 7185:1990 1990. Information technology --- Programming languages --- Pascal. Standard. ISO\/IEC.  ISO\/IEC 7185:1990 1990. Information technology --- Programming languages --- Pascal. Standard. ISO\/IEC."},{"key":"e_1_3_2_1_15_1","unstructured":"ISO\/IEC 9899:2018 2018. Information technology --- Programming languages --- C. Standard. ISO\/IEC.  ISO\/IEC 9899:2018 2018. Information technology --- Programming languages --- C. Standard. ISO\/IEC."},{"key":"e_1_3_2_1_16_1","unstructured":"Microsoft Corporation 2018. TypeScript Documentation. Microsoft Corporation. http:\/\/www.typescriptlang.org\/docs\/home.html  Microsoft Corporation 2018. TypeScript Documentation. Microsoft Corporation. http:\/\/www.typescriptlang.org\/docs\/home.html"},{"key":"e_1_3_2_1_17_1","unstructured":"Martin Odersky Philippe Altherr Vincent Cremet Gilles Dubochet Burak Emir Philipp Haller St\u00e9phane Micheloud Nikolay Mihaylov Adriaan Moors Lukas Rytz Michel Schinz Erik Stenman and Matthias Zenger. 2016. Scala Language Specification. http:\/\/scala-lang.org\/files\/archive\/spec\/2.12\/  Martin Odersky Philippe Altherr Vincent Cremet Gilles Dubochet Burak Emir Philipp Haller St\u00e9phane Micheloud Nikolay Mihaylov Adriaan Moors Lukas Rytz Michel Schinz Erik Stenman and Matthias Zenger. 2016. Scala Language Specification. http:\/\/scala-lang.org\/files\/archive\/spec\/2.12\/"},{"key":"e_1_3_2_1_18_1","unstructured":"OMG 2017. Unified Modeling Language Version 2.5.1. OMG. https:\/\/www.omg.org\/spec\/UML\/2.5.1\/PDF  OMG 2017. Unified Modeling Language Version 2.5.1. OMG. https:\/\/www.omg.org\/spec\/UML\/2.5.1\/PDF"},{"key":"e_1_3_2_1_19_1","unstructured":"Oracle 2019. Java\u00ae Platform Standard Edition & Java Development Kit Version 12 API Specification. Oracle. https:\/\/docs.oracle.com\/en\/java\/javase\/12\/docs\/api\/index.html  Oracle 2019. Java\u00ae Platform Standard Edition & Java Development Kit Version 12 API Specification. Oracle. https:\/\/docs.oracle.com\/en\/java\/javase\/12\/docs\/api\/index.html"},{"key":"e_1_3_2_1_20_1","unstructured":"Perl 5 Porters 2017. Language Reference: Perl 5 version 26.1 documentation. Perl 5 Porters. http:\/\/perldoc.perl.org\/5.26.1\/index.html [21] Benjamin C. Pierce. 2002. Types and Programming Languages. MIT Press.  Perl 5 Porters 2017. Language Reference: Perl 5 version 26.1 documentation. Perl 5 Porters. http:\/\/perldoc.perl.org\/5.26.1\/index.html [21] Benjamin C. Pierce. 2002. Types and Programming Languages. MIT Press."},{"volume-title":"The Python Language Reference","author":"Python Software","key":"e_1_3_2_1_21_1","unstructured":"Python Software Foundation 2018. The Python Language Reference . Python Software Foundation . Python Software Foundation 2018. The Python Language Reference. Python Software Foundation."},{"key":"e_1_3_2_1_22_1","unstructured":"RFC7540 2015. Hypertext Transfer Protocol Version 2 (HTTP\/2). Proposed standard. Internet Engineering Task Force (IETF).  RFC7540 2015. Hypertext Transfer Protocol Version 2 (HTTP\/2). Proposed standard. Internet Engineering Task Force (IETF)."},{"volume-title":"Extensible Markup Language (XML) 1.1","author":"C","key":"e_1_3_2_1_23_1","unstructured":"W3 C 2006. Extensible Markup Language (XML) 1.1 ( second ed.). W3C. https:\/\/www.w3.org\/TR\/xml11\/ W3C 2006. Extensible Markup Language (XML) 1.1 (second ed.). W3C. https:\/\/www.w3.org\/TR\/xml11\/"},{"key":"e_1_3_2_1_24_1","unstructured":"W3C 2012. XML Schema Definition Language (XSD) 1.1 Part 2: Datatypes. W3C. https:\/\/www.w3.org\/TR\/xmlschema11-2\/  W3C 2012. XML Schema Definition Language (XSD) 1.1 Part 2: Datatypes. W3C. https:\/\/www.w3.org\/TR\/xmlschema11-2\/"},{"key":"e_1_3_2_1_25_1","unstructured":"Philip Wadler. 1992. Comprehending Monads. In Mathematical Structures in Computer Science. 61--78.  Philip Wadler. 1992. Comprehending Monads. In Mathematical Structures in Computer Science. 61--78."},{"key":"e_1_3_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1145\/3147704.3147734"}],"event":{"name":"EuroPLoP '19: 24th European Conference on Pattern Languages of Programs","acronym":"EuroPLoP '19","location":"Irsee Germany"},"container-title":["Proceedings of the 24th European Conference on Pattern Languages of Programs"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3361149.3361175","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3361149.3361175","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,17]],"date-time":"2025-06-17T23:12:51Z","timestamp":1750201971000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3361149.3361175"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2019,7,3]]},"references-count":26,"alternative-id":["10.1145\/3361149.3361175","10.1145\/3361149"],"URL":"https:\/\/doi.org\/10.1145\/3361149.3361175","relation":{},"subject":[],"published":{"date-parts":[[2019,7,3]]},"assertion":[{"value":"2019-07-03","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}