{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,8,26]],"date-time":"2026-08-26T01:56:25Z","timestamp":1787709385233,"version":"build-2784847793"},"publisher-location":"Berlin, Heidelberg","reference-count":28,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"value":"9783642309816","type":"print"},{"value":"9783642309823","type":"electronic"}],"license":[{"start":{"date-parts":[[2012,1,1]],"date-time":"2012-01-01T00:00:00Z","timestamp":1325376000000},"content-version":"unspecified","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2012]]},"DOI":"10.1007\/978-3-642-30982-3_3","type":"book-chapter","created":{"date-parts":[[2012,6,25]],"date-time":"2012-06-25T22:04:30Z","timestamp":1340661870000},"page":"58-90","source":"Crossref","is-referenced-by-count":95,"title":["Object Constraint Language (OCL): A Definitive Guide"],"prefix":"10.1007","author":[{"given":"Jordi","family":"Cabot","sequence":"first","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Martin","family":"Gogolla","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"297","reference":[{"key":"3_CR1","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"436","DOI":"10.1007\/978-3-540-75209-7_30","volume-title":"Model Driven Engineering Languages and Systems","author":"K. Anastasakis","year":"2007","unstructured":"Anastasakis, K., Bordbar, B., Georg, G., Ray, I.: UML2Alloy: A Challenging Model Transformation. In: Engels, G., Opdyke, B., Schmidt, D.C., Weil, F. (eds.) MoDELS 2007. LNCS, vol.\u00a04735, pp. 436\u2013450. Springer, Heidelberg (2007)"},{"key":"3_CR2","unstructured":"Baar, T.: On the need of user-defined libraries in OCL. ECEASST\u00a036 (2010)"},{"key":"3_CR3","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"76","DOI":"10.1007\/978-3-642-16145-2_6","volume-title":"Model Driven Engineering Languages and Systems","author":"G. Bergmann","year":"2010","unstructured":"Bergmann, G., Horv\u00e1th, \u00c1., R\u00e1th, I., Varr\u00f3, D., Balogh, A., Balogh, Z., \u00d6kr\u00f6s, A.: Incremental Evaluation of Model Queries over EMF Models. In: Petriu, D.C., Rouquette, N., Haugen, \u00d8. (eds.) MoDELS 2010, Part I. LNCS, vol.\u00a06394, pp. 76\u201390. Springer, Heidelberg (2010)"},{"issue":"10","key":"3_CR4","doi-asserted-by":"publisher","first-page":"785","DOI":"10.1109\/32.469460","volume":"21","author":"A. Borgida","year":"1995","unstructured":"Borgida, A., Mylopoulos, J., Reiter, R.: On the frame problem in procedure specifications. IEEE Trans. Software Eng.\u00a021(10), 785\u2013798 (1995)","journal-title":"IEEE Trans. Software Eng."},{"key":"3_CR5","doi-asserted-by":"crossref","unstructured":"Brucker, A.D., Krieger, M.P., Wolff, B.: Extending OCL with null-references. In: Ghosh [15], pp. 261\u2013275","DOI":"10.1007\/978-3-642-12261-3_25"},{"key":"3_CR6","unstructured":"Brucker, A.D., Wolff, B.: The HOL-OCL book. Technical Report 525, ETH Zurich (2006)"},{"key":"3_CR7","doi-asserted-by":"crossref","unstructured":"B\u00fcttner, F., Gogolla, M., Hamann, L., Kuhlmann, M., Lindow, A.: On better understanding OCL collections or an OCL ordered set is not an OCL set. In: Ghosh [15], pp. 276\u2013290","DOI":"10.1007\/978-3-642-12261-3_26"},{"key":"3_CR8","doi-asserted-by":"crossref","unstructured":"Cabot, J., Claris\u00f3, R., Riera, D.: UMLtoCSP: a tool for the formal verification of UML\/OCL models using constraint programming. In: ASE, pp. 547\u2013548. ACM (2007)","DOI":"10.1145\/1321631.1321737"},{"key":"3_CR9","doi-asserted-by":"crossref","unstructured":"Cabot, J., Maz\u00f3n, J.-N., Pardillo, J., Trujillo, J.: Specifying aggregation functions in multidimensional models with OCL. In: Parsons, et al. [22], pp. 419\u2013432","DOI":"10.1007\/978-3-642-16373-9_30"},{"key":"3_CR10","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"256","DOI":"10.1007\/11787044_20","volume-title":"Model Driven Architecture \u2013 Foundations and Applications","author":"J. Cabot","year":"2006","unstructured":"Cabot, J., Teniente, E.: Constraint Support in MDA Tools: A Survey. In: Rensink, A., Warmer, J. (eds.) ECMDA-FA 2006. LNCS, vol.\u00a04066, pp. 256\u2013267. Springer, Heidelberg (2006)"},{"issue":"9","key":"3_CR11","doi-asserted-by":"publisher","first-page":"1459","DOI":"10.1016\/j.jss.2009.03.009","volume":"82","author":"J. Cabot","year":"2009","unstructured":"Cabot, J., Teniente, E.: Incremental integrity checking of UML\/OCL conceptual schemas. Journal of Systems and Software\u00a082(9), 1459\u20131478 (2009)","journal-title":"Journal of Systems and Software"},{"key":"3_CR12","unstructured":"Chimiak-Opoka, J.D., Demuth, B., Awenius, A., Chiorean, D., Gabel, S., Hamann, L., Willink, E.D.: OCL tools report based on the ide4OCL feature model. ECEASST\u00a044 (2011)"},{"key":"3_CR13","doi-asserted-by":"publisher","first-page":"109","DOI":"10.1145\/1125944.1125949","volume":"49","author":"B. Dobing","year":"2006","unstructured":"Dobing, B., Parsons, J.: How UML is used. Commun. ACM\u00a049, 109\u2013113 (2006)","journal-title":"Commun. ACM"},{"key":"3_CR14","unstructured":"Frias, L., Queralt, A., Oliv\u00e9, A.: Eu-rent car rentals specification. Technical Report LSI Research Report. LSI-03-59-R, UPC (2003)"},{"key":"3_CR15","series-title":"Lecture Notes in Computer Science","volume-title":"Models in Software Engineering","year":"2010","unstructured":"Ghosh, S. (ed.): MoDELS 2009. LNCS, vol.\u00a06002. Springer, Heidelberg (2010)"},{"issue":"4","key":"3_CR16","doi-asserted-by":"publisher","first-page":"386","DOI":"10.1007\/s10270-005-0089-y","volume":"4","author":"M. Gogolla","year":"2005","unstructured":"Gogolla, M., Bohling, J., Richters, M.: Validating UML and OCL Models in USE by Automatic Snapshot Generation. Journal on Software and System Modeling\u00a04(4), 386\u2013398 (2005)","journal-title":"Journal on Software and System Modeling"},{"issue":"1-3","key":"3_CR17","doi-asserted-by":"publisher","first-page":"27","DOI":"10.1016\/j.scico.2007.01.013","volume":"69","author":"M. Gogolla","year":"2007","unstructured":"Gogolla, M., B\u00fcttner, F., Richters, M.: Use: A UML-based specification environment for validating UML and OCL. Sci. Comput. Program.\u00a069(1-3), 27\u201334 (2007)","journal-title":"Sci. Comput. Program."},{"key":"3_CR18","unstructured":"Heidenreich, F., Wende, C., Demuth, B.: A framework for generating query language code from OCL invariants. ECEASST\u00a09 (2008)"},{"key":"3_CR19","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"290","DOI":"10.1007\/978-3-642-21952-8_21","volume-title":"Objects, Models, Components, Patterns","author":"M. Kuhlmann","year":"2011","unstructured":"Kuhlmann, M., Hamann, L., Gogolla, M.: Extensive Validation of OCL Models by Integrating SAT Solving into USE. In: Bishop, J., Vallecillo, A. (eds.) TOOLS 2011. LNCS, vol.\u00a06705, pp. 290\u2013306. Springer, Heidelberg (2011)"},{"key":"3_CR20","unstructured":"Object\u00a0Management\u00a0Group. OCL 2.3.1 Specification (2010)"},{"key":"3_CR21","unstructured":"Object\u00a0Management\u00a0Group. UML 2.4.1 Superstructure Specification (2011)"},{"key":"3_CR22","series-title":"Lecture Notes in Computer Science","volume-title":"Conceptual Modeling \u2013 ER 2010","year":"2010","unstructured":"Parsons, J., Saeki, M., Shoval, P., Woo, C.C., Wand, Y. (eds.): ER 2010. LNCS, vol.\u00a06412. Springer, Heidelberg (2010)"},{"key":"3_CR23","doi-asserted-by":"crossref","unstructured":"Queralt, A., Rull, G., Teniente, E., Farr\u00e9, C., Urp\u00ed, T.: Aurus: Automated reasoning on UML\/OCL schemas. In: Parsons, et al. [22], pp. 438\u2013444","DOI":"10.1007\/978-3-642-16373-9_32"},{"key":"3_CR24","doi-asserted-by":"crossref","unstructured":"Soeken, M., Wille, R., Kuhlmann, M., Gogolla, M., Drechsler, R.: Verifying UML\/OCL models using boolean satisfiability. In: DATE, pp. 1341\u20131344. IEEE (2010)","DOI":"10.1109\/DATE.2010.5457017"},{"key":"3_CR25","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"32","DOI":"10.1007\/978-3-642-24485-8_4","volume-title":"Model Driven Engineering Languages and Systems","author":"M. Tisi","year":"2011","unstructured":"Tisi, M., Mart\u00ednez, S., Jouault, F., Cabot, J.: Lazy Execution of Model-to-Model Transformations. In: Whittle, J., Clark, T., K\u00fchne, T. (eds.) MoDELS 2011. LNCS, vol.\u00a06981, pp. 32\u201346. Springer, Heidelberg (2011)"},{"key":"3_CR26","unstructured":"Warmer, J., Kleppe, A.: The Object Constraint Language: Getting Your Models Ready for MDA. Addison-Wesley (2003)"},{"issue":"4","key":"3_CR27","doi-asserted-by":"publisher","first-page":"459","DOI":"10.1145\/299917.299919","volume":"30","author":"R. Wieringa","year":"1998","unstructured":"Wieringa, R.: A survey of structured and object-oriented software specification methods and techniques. ACM Comput. Surv.\u00a030(4), 459\u2013527 (1998)","journal-title":"ACM Comput. Surv."},{"key":"3_CR28","unstructured":"Willink, E.D.: Modeling the OCL standard library. ECEASST\u00a044 (2011)"}],"container-title":["Lecture Notes in Computer Science","Formal Methods for Model-Driven Engineering"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-642-30982-3_3","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,5,19]],"date-time":"2019-05-19T20:35:47Z","timestamp":1558298147000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-642-30982-3_3"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2012]]},"ISBN":["9783642309816","9783642309823"],"references-count":28,"URL":"https:\/\/doi.org\/10.1007\/978-3-642-30982-3_3","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"value":"0302-9743","type":"print"},{"value":"1611-3349","type":"electronic"}],"subject":[],"published":{"date-parts":[[2012]]}}}