{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,3,7]],"date-time":"2026-03-07T18:02:20Z","timestamp":1772906540783,"version":"3.50.1"},"publisher-location":"Cham","reference-count":31,"publisher":"Springer International Publishing","isbn-type":[{"value":"9783030337018","type":"print"},{"value":"9783030337025","type":"electronic"}],"license":[{"start":{"date-parts":[[2019,1,1]],"date-time":"2019-01-01T00:00:00Z","timestamp":1546300800000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"},{"start":{"date-parts":[[2019,1,1]],"date-time":"2019-01-01T00:00:00Z","timestamp":1546300800000},"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":[[2019]]},"DOI":"10.1007\/978-3-030-33702-5_1","type":"book-chapter","created":{"date-parts":[[2019,10,25]],"date-time":"2019-10-25T19:45:48Z","timestamp":1572032748000},"page":"3-19","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":26,"title":["An Empirical Study of GraphQL Schemas"],"prefix":"10.1007","author":[{"given":"Erik","family":"Wittern","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Alan","family":"Cha","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"James C.","family":"Davis","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Guillaume","family":"Baudart","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Louis","family":"Mandel","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2019,10,22]]},"reference":[{"key":"1_CR1","unstructured":"APIs-guru\/graphql-apis: A collective list of public GraphQL APIs. https:\/\/github.com\/APIs-guru\/graphql-apis"},{"key":"1_CR2","unstructured":"GraphiQL: An in-browser IDE for exploring GraphQL. https:\/\/github.com\/graphql\/graphiql"},{"key":"1_CR3","unstructured":"GraphQL Faker. https:\/\/github.com\/APIs-guru\/graphql-faker"},{"key":"1_CR4","unstructured":"GraphQL Style conventions. https:\/\/www.apollographql.com\/docs\/apollo-server\/essentials\/schema.html#style"},{"key":"1_CR5","unstructured":"Introduction to GraphQL. https:\/\/graphql.org\/learn\/"},{"key":"1_CR6","unstructured":"JavaScript reference implementation for GraphQL. https:\/\/github.com\/graphql\/graphql-js"},{"key":"1_CR7","unstructured":"Pagination. http:\/\/graphql.github.io\/learn\/pagination\/"},{"key":"1_CR8","unstructured":"Schemas and Types. https:\/\/graphql.org\/learn\/schema"},{"key":"1_CR9","unstructured":"Who\u2019s using GraphQL? http:\/\/graphql.org\/users"},{"key":"1_CR10","unstructured":"Introducing Yelp\u2019s Local Graph (2017). https:\/\/engineeringblog.yelp.com\/2017\/05\/introducing-yelps-local-graph.html"},{"key":"1_CR11","unstructured":"React, Relay and GraphQL: Under the Hood of The Times Website Redesign (2017). https:\/\/open.nytimes.com\/react-relay-and-graphql-under-the-hood-of-the-times-website-redesign-22fb62ea9764"},{"key":"1_CR12","unstructured":"GitHub GraphQL API v4 (2019). https:\/\/developer.github.com\/v4\/"},{"key":"1_CR13","unstructured":"GraphQL and Shopify (2019). https:\/\/help.shopify.com\/en\/api\/custom-storefronts\/storefront-api\/graphql\/"},{"key":"1_CR14","unstructured":"GraphQL Current Working Draft: Schema (2019). https:\/\/facebook.github.io\/graphql\/draft\/#sec-Executable-Definitions"},{"key":"1_CR15","unstructured":"GraphQL Current Working Draft: Schema (2019). https:\/\/facebook.github.io\/graphql\/draft\/#sec-Schema"},{"key":"1_CR16","doi-asserted-by":"crossref","unstructured":"Brito, G., Mombach, T., Valente, M.T.: Migrating to GraphQL: a practical assessment. In: 2019 IEEE 26th International Conference on Software Analysis, Evolution and Reengineering (SANER), pp. 140\u2013150. IEEE (2019)","DOI":"10.1109\/SANER.2019.8667986"},{"key":"1_CR17","unstructured":"Facebook Inc.: GraphQL. Working Draft, June 2018. https:\/\/facebook.github.io\/graphql\/"},{"key":"1_CR18","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"589","DOI":"10.1007\/978-3-319-69035-3_43","volume-title":"Service-Oriented Computing","author":"A Gamez-Diaz","year":"2017","unstructured":"Gamez-Diaz, A., Fernandez, P., Ruiz-Cortes, A.: An analysis of RESTful APIs offerings in the industry. In: Maximilien, M., Vallecillo, A., Wang, J., Oriol, M. (eds.) ICSOC 2017. LNCS, vol. 10601, pp. 589\u2013604. Springer, Cham (2017). https:\/\/doi.org\/10.1007\/978-3-319-69035-3_43"},{"key":"1_CR19","unstructured":"Hartig, O., P\u00e9rez, J.: An initial analysis of Facebook\u2019s GraphQL language. In: CEUR Workshop Proceedings (2017)"},{"key":"1_CR20","doi-asserted-by":"crossref","unstructured":"Hartig, O., P\u00e9rez, J.: Semantics and complexity of GraphQL. In: Conference on World Wide Web (WWW) (2018)","DOI":"10.1145\/3178876.3186014"},{"key":"1_CR21","unstructured":"Kim, Y.W., Consens, M.P., Hartig, O.: An empirical analysis of GraphQL API schemas in open code repositories and package registries. In: Proceedings of the 13th Alberto Mendelzon International Workshop on Foundations of Data Management (AMW), June 2019"},{"key":"1_CR22","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"171","DOI":"10.1007\/978-3-662-48616-0_11","volume-title":"Service-Oriented Computing","author":"F Palma","year":"2015","unstructured":"Palma, F., Gonzalez-Huerta, J., Moha, N., Gu\u00e9h\u00e9neuc, Y.-G., Tremblay, G.: Are RESTful APIs well-designed? Detection of their linguistic (Anti)Patterns. In: Barros, A., Grigori, D., Narendra, N.C., Dam, H.K. (eds.) ICSOC 2015. LNCS, vol. 9435, pp. 171\u2013187. Springer, Heidelberg (2015). https:\/\/doi.org\/10.1007\/978-3-662-48616-0_11"},{"key":"1_CR23","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"157","DOI":"10.1007\/978-3-319-46295-0_10","volume-title":"Service-Oriented Computing","author":"F Petrillo","year":"2016","unstructured":"Petrillo, F., Merle, P., Moha, N., Gu\u00e9h\u00e9neuc, Y.-G.: Are REST APIs for cloud computing well-designed? An exploratory study. In: Sheng, Q.Z., Stroulia, E., Tata, S., Bhiri, S. (eds.) ICSOC 2016. LNCS, vol. 9936, pp. 157\u2013170. Springer, Cham (2016). https:\/\/doi.org\/10.1007\/978-3-319-46295-0_10"},{"key":"1_CR24","unstructured":"Rinquin, A.: Avoiding n+1 requests in GraphQL, including within subscriptions"},{"key":"1_CR25","unstructured":"Stoiber, M.: Securing your GraphQL API from malicious queries"},{"key":"1_CR26","unstructured":"Vargas, D.M., et al.: Deviation testing: a test case generation technique for GraphQL APIs (2018)"},{"key":"1_CR27","doi-asserted-by":"crossref","unstructured":"V\u00e1zquez-Ingelmo, A., Cruz-Benito, J., Garc\u00eda-Pe\u00f1alvo, F.J.: Improving the OEEU\u2019s data-driven technological ecosystem\u2019s interoperability with GraphQL. In: Proceedings of the 5th International Conference on Technological Ecosystems for Enhancing Multiculturality - TEEM 2017, pp. 1\u20138 (2017)","DOI":"10.1145\/3144826.3145437"},{"key":"1_CR28","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"283","DOI":"10.1007\/978-3-319-91764-1_23","volume-title":"Service-Oriented Computing \u2013 ICSOC 2017 Workshops","author":"M Vogel","year":"2018","unstructured":"Vogel, M., Weber, S., Zirpins, C.: Experiences on migrating RESTful web services to GraphQL. In: Braubach, L., et al. (eds.) ICSOC 2017. LNCS, vol. 10797, pp. 283\u2013295. Springer, Cham (2018). https:\/\/doi.org\/10.1007\/978-3-319-91764-1_23"},{"key":"1_CR29","doi-asserted-by":"publisher","unstructured":"Wittern, E., Cha, A., Davis, J.C., Baudart, G., Mandel, L.: GraphQL schema collector. https:\/\/doi.org\/10.5281\/zenodo.3352421, accessible at https:\/\/github.com\/ErikWittern\/graphql-schema-collector","DOI":"10.5281\/zenodo.3352421"},{"key":"1_CR30","doi-asserted-by":"publisher","unstructured":"Wittern, E., Cha, A., Davis, J.C., Baudart, G., Mandel, L.: GraphQL Schemas. https:\/\/doi.org\/10.5281\/zenodo.3352419, accessible at https:\/\/github.com\/ErikWittern\/graphql-schemas","DOI":"10.5281\/zenodo.3352419"},{"key":"1_CR31","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"65","DOI":"10.1007\/978-3-319-91662-0_5","volume-title":"Web Engineering","author":"E Wittern","year":"2018","unstructured":"Wittern, E., Cha, A., Laredo, J.A.: Generating GraphQL-Wrappers for REST(-like) APIs. In: Mikkonen, T., Klamma, R., Hern\u00e1ndez, J. (eds.) ICWE 2018. LNCS, vol. 10845, pp. 65\u201383. Springer, Cham (2018). https:\/\/doi.org\/10.1007\/978-3-319-91662-0_5"}],"container-title":["Lecture Notes in Computer Science","Service-Oriented Computing"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-030-33702-5_1","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2024,10,24]],"date-time":"2024-10-24T23:05:09Z","timestamp":1729811109000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-3-030-33702-5_1"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2019]]},"ISBN":["9783030337018","9783030337025"],"references-count":31,"URL":"https:\/\/doi.org\/10.1007\/978-3-030-33702-5_1","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"value":"0302-9743","type":"print"},{"value":"1611-3349","type":"electronic"}],"subject":[],"published":{"date-parts":[[2019]]},"assertion":[{"value":"22 October 2019","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"ICSOC","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"International Conference on Service-Oriented Computing","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Toulouse","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"France","order":4,"name":"conference_country","label":"Conference Country","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2019","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"28 October 2019","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"31 October 2019","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"17","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"icsoc2019","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"https:\/\/icsoc-laas.fr\/","order":11,"name":"conference_url","label":"Conference URL","group":{"name":"ConferenceInfo","label":"Conference Information"}}]}}