{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,7,1]],"date-time":"2026-07-01T03:57:03Z","timestamp":1782878223395,"version":"3.54.5"},"publisher-location":"Cham","reference-count":30,"publisher":"Springer International Publishing","isbn-type":[{"value":"9783031368882","type":"print"},{"value":"9783031368899","type":"electronic"}],"license":[{"start":{"date-parts":[[2023,1,1]],"date-time":"2023-01-01T00:00:00Z","timestamp":1672531200000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"},{"start":{"date-parts":[[2023,1,1]],"date-time":"2023-01-01T00:00:00Z","timestamp":1672531200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2023]]},"DOI":"10.1007\/978-3-031-36889-9_4","type":"book-chapter","created":{"date-parts":[[2023,7,15]],"date-time":"2023-07-15T21:01:50Z","timestamp":1689454910000},"page":"29-44","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":6,"title":["ExpressO: From Express.js Implementation Code to\u00a0OpenAPI Interface Descriptions"],"prefix":"10.1007","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-8144-2606","authenticated-orcid":false,"given":"Souhaila","family":"Serbout","sequence":"first","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Alessandro","family":"Romanelli","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-2748-9665","authenticated-orcid":false,"given":"Cesare","family":"Pautasso","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"297","published-online":{"date-parts":[[2023,7,16]]},"reference":[{"key":"4_CR1","unstructured":"OpenAPI Initiative. https:\/\/www.openapis.org\/"},{"key":"4_CR2","unstructured":"https:\/\/github.com\/davibaltar\/swagger-autogen"},{"key":"4_CR3","unstructured":"RAML. https:\/\/raml.org\/"},{"key":"4_CR4","unstructured":"I\/O Docs. https:\/\/support.mashery.com\/docs\/read\/IO_Docs"},{"key":"4_CR5","unstructured":"OpenAPI.Tools. https:\/\/openapi.tools\/"},{"key":"4_CR6","unstructured":"https:\/\/www.npmjs.com\/package\/abstract-syntax-tree"},{"key":"4_CR7","unstructured":"https:\/\/github.com\/FIS-Proyecto-Equipo1\/backend-viajes"},{"key":"4_CR8","unstructured":"https:\/\/www.npmjs.com\/package\/expresso-api"},{"key":"4_CR9","doi-asserted-by":"publisher","unstructured":"Beaulieu, N., Dascalu, S.M., Hand, E.: API-first design: a survey of the state of academia and industry. In: Latifi, S. (ed.) 19th International Conference on Information Technology-New Generations, ITNG 2022. AISC, vol. 1421, pp. 73\u201379. Springer, Cham (2022). https:\/\/doi.org\/10.1007\/978-3-030-97652-1_10","DOI":"10.1007\/978-3-030-97652-1_10"},{"key":"4_CR10","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"453","DOI":"10.1007\/978-3-319-69035-3_32","volume-title":"Service-Oriented Computing","author":"H Cao","year":"2017","unstructured":"Cao, H., Falleri, J.-R., Blanc, X.: Automated generation of REST API specification from plain HTML documentation. In: Maximilien, M., Vallecillo, A., Wang, J., Oriol, M. (eds.) ICSOC 2017. LNCS, vol. 10601, pp. 453\u2013461. Springer, Cham (2017). https:\/\/doi.org\/10.1007\/978-3-319-69035-3_32"},{"key":"4_CR11","unstructured":"Christensen, E.: Web services description language (wsdl) 1.1. https:\/\/www.w3.org\/TR\/2001\/NOTE-wsdl-20010315 (2001)"},{"key":"4_CR12","doi-asserted-by":"crossref","unstructured":"Corradini, D., Zampieri, A., Pasqua, M., Ceccato, M.: Restats: a test coverage tool for restful APIS. In: 2021 IEEE International Conference on Software Maintenance and Evolution (ICSME), pp. 594\u2013598. IEEE (2021)","DOI":"10.1109\/ICSME52107.2021.00063"},{"key":"4_CR13","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"124","DOI":"10.1007\/978-3-030-74296-6_10","volume-title":"Web Engineering","author":"F Di Lauro","year":"2021","unstructured":"Di Lauro, F., Serbout, S., Pautasso, C.: Towards large-scale empirical assessment of web APIs evolution. In: Brambilla, M., Chbeir, R., Frasincar, F., Manolescu, I. (eds.) ICWE 2021. LNCS, vol. 12706, pp. 124\u2013138. Springer, Cham (2021). https:\/\/doi.org\/10.1007\/978-3-030-74296-6_10"},{"key":"4_CR14","unstructured":"Fowler, M.: Domain-Specific Languages. Pearson Education, London (2010)"},{"key":"4_CR15","unstructured":"GitHub-Repository: Openapi diff. https:\/\/github.com\/tufin\/oasdiff"},{"key":"4_CR16","unstructured":"GitHub-repository: Openapi diff by microsoft azure. https:\/\/github.com\/Azure\/openapi-diff"},{"key":"4_CR17","unstructured":"Hadley, M.J.: Web application description language (wadl). Technical Report, USA (2006)"},{"key":"4_CR18","doi-asserted-by":"publisher","first-page":"169","DOI":"10.1007\/978-3-319-73897-0_10","volume-title":"The Essence of Software Engineering","author":"W Hasselbring","year":"2018","unstructured":"Hasselbring, W.: Software Architecture: Past, Present, Future. In: The Essence of Software Engineering, pp. 169\u2013184. Springer, Cham (2018). https:\/\/doi.org\/10.1007\/978-3-319-73897-0_10"},{"key":"4_CR19","unstructured":"Initiative, O.: Oas v3.0 petstore example. https:\/\/github.com\/OAI\/OpenAPI-Specification\/blob\/main\/examples\/v3.0\/petstore.json"},{"key":"4_CR20","unstructured":"Initiative, O.: Openapi v3.1.0 specification. https:\/\/spec.openapis.org\/oas\/v3.1.0"},{"key":"4_CR21","series-title":"Communications in Computer and Information Science","doi-asserted-by":"publisher","first-page":"30","DOI":"10.1007\/978-3-030-58167-1_3","volume-title":"Systems Modelling and Management","author":"R Jongeling","year":"2020","unstructured":"Jongeling, R., Fredriksson, J., Ciccozzi, F., Cicchetti, A., Carlson, J.: Towards consistency checking between a\u00a0system model and its implementation. In: Babur, \u00d6., Denil, J., Vogel-Heuser, B. (eds.) ICSMM 2020. CCIS, vol. 1262, pp. 30\u201339. Springer, Cham (2020). https:\/\/doi.org\/10.1007\/978-3-030-58167-1_3"},{"key":"4_CR22","doi-asserted-by":"crossref","unstructured":"Karlsson, S., \u010cau\u0161evi\u0107, A., Sundmark, D.: Quickrest: property-based test generation of openapi-described restful APIS. In: 2020 IEEE 13th International Conference on Software Testing, Validation and Verification (ICST), pp. 131\u2013141. IEEE (2020)","DOI":"10.1109\/ICST46399.2020.00023"},{"key":"4_CR23","doi-asserted-by":"crossref","unstructured":"Koren, I., Klamma, R.: The exploitation of OpenAPI documentation for the generation of web frontends. In: Companion of the The Web Conference 2018 on The Web Conference 2018 - WWW 2018, pp. 781\u2013787 (2018)","DOI":"10.1145\/3184558.3188740"},{"issue":"6","key":"4_CR24","doi-asserted-by":"publisher","first-page":"27","DOI":"10.1109\/MS.2009.193","volume":"26","author":"MP Robillard","year":"2009","unstructured":"Robillard, M.P.: What makes APIS hard to learn? answers from developers. IEEE Softw. 26(6), 27\u201334 (2009)","journal-title":"IEEE Softw."},{"key":"4_CR25","unstructured":"Romanelli, A.: ExpressO. Master\u2019s thesis, Faculty of Informatics, University of Lugano (2022). https:\/\/thesis.bul.sbu.usi.ch\/theses\/2035-2122Romanelli\/pdf?1674133800"},{"key":"4_CR26","doi-asserted-by":"crossref","unstructured":"Serbout, S., Di Lauro, F., Pautasso, C.: Web APIS structures and data models analysis. In: 2022 IEEE 19th International Conference on Software Architecture Companion (ICSA-C), pp. 84\u201391. IEEE (2022)","DOI":"10.1109\/ICSA-C54293.2022.00059"},{"key":"4_CR27","unstructured":"Spencer, J.: Express openapi. https:\/\/github.com\/kogosoftwarellc\/open-api"},{"key":"4_CR28","doi-asserted-by":"publisher","first-page":"106733","DOI":"10.1016\/j.infsof.2021.106733","volume":"142","author":"T Theunissen","year":"2022","unstructured":"Theunissen, T., van Heesch, U., Avgeriou, P.: A mapping study on documentation in continuous software development. Inf. Softw. Technol. 142, 106733 (2022)","journal-title":"Inf. Softw. Technol."},{"key":"4_CR29","unstructured":"TJ Holowaychuk, S., et al.: Express.js documentation. https:\/\/expressjs.com\/en\/5x\/api.html"},{"key":"4_CR30","doi-asserted-by":"crossref","unstructured":"Van Heesch, U., Theunissen, T., Zimmermann, O., Zdun, U.: Software specification and documentation in continuous software development: a focus group report. In: Proceedings of the 22nd European Conference on Pattern Languages of Programs, pp. 1\u201313 (2017)","DOI":"10.1145\/3147704.3147742"}],"container-title":["Lecture Notes in Computer Science","Software Architecture. ECSA 2022 Tracks and Workshops"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-031-36889-9_4","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2023,7,15]],"date-time":"2023-07-15T21:02:19Z","timestamp":1689454939000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-3-031-36889-9_4"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2023]]},"ISBN":["9783031368882","9783031368899"],"references-count":30,"URL":"https:\/\/doi.org\/10.1007\/978-3-031-36889-9_4","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"value":"0302-9743","type":"print"},{"value":"1611-3349","type":"electronic"}],"subject":[],"published":{"date-parts":[[2023]]},"assertion":[{"value":"16 July 2023","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"ECSA","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"European Conference on Software Architecture","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Prague","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Czech Republic","order":4,"name":"conference_country","label":"Conference Country","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2022","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"19 September 2022","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"23 September 2022","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"16","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"ecsa2022","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"https:\/\/conf.researchr.org\/home\/ecsa-2022","order":11,"name":"conference_url","label":"Conference URL","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Single-blind","order":1,"name":"type","label":"Type","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"EasyChair","order":2,"name":"conference_management_system","label":"Conference Management System","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"61","order":3,"name":"number_of_submissions_sent_for_review","label":"Number of Submissions Sent for Review","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"26","order":4,"name":"number_of_full_papers_accepted","label":"Number of Full Papers Accepted","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"4","order":5,"name":"number_of_short_papers_accepted","label":"Number of Short Papers Accepted","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"43% - The value is computed by the equation \"Number of Full Papers Accepted \/ Number of Submissions Sent for Review * 100\" and then rounded to a whole number.","order":6,"name":"acceptance_rate_of_full_papers","label":"Acceptance Rate of Full Papers","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"3","order":7,"name":"average_number_of_reviews_per_paper","label":"Average Number of Reviews per Paper","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"2","order":8,"name":"average_number_of_papers_per_reviewer","label":"Average Number of Papers per Reviewer","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"Yes","order":9,"name":"external_reviewers_involved","label":"External Reviewers Involved","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"2 tutorial papers","order":10,"name":"additional_info_on_review_process","label":"Additional Info on Review Process","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}}]}}