{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,11,18]],"date-time":"2025-11-18T12:12:06Z","timestamp":1763467926705,"version":"3.40.3"},"publisher-location":"Berlin, Heidelberg","reference-count":20,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"type":"print","value":"9783642030123"},{"type":"electronic","value":"9783642030130"}],"license":[{"start":{"date-parts":[[2009,1,1]],"date-time":"2009-01-01T00:00:00Z","timestamp":1230768000000},"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":[[2009]]},"DOI":"10.1007\/978-3-642-03013-0_3","type":"book-chapter","created":{"date-parts":[[2009,7,30]],"date-time":"2009-07-30T10:30:01Z","timestamp":1248949801000},"page":"27-51","source":"Crossref","is-referenced-by-count":19,"title":["Checking Framework Interactions with Relationships"],"prefix":"10.1007","author":[{"given":"Ciera","family":"Jaspan","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Jonathan","family":"Aldrich","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","reference":[{"key":"3_CR1","doi-asserted-by":"crossref","unstructured":"Johnson, R.E.: Frameworks = (components + patterns). Commun. ACM 40 (1997)","DOI":"10.1145\/262793.262799"},{"key":"3_CR2","doi-asserted-by":"crossref","unstructured":"Jaspan, C., Aldrich, J.: Checking semantic usage of frameworks. In: Proc. of the symposium on Library Centric Software Design (2007)","DOI":"10.1145\/1512762.1512763"},{"key":"3_CR3","unstructured":"Fowler, M.: Inversion of control containers and the dependency injection pattern (2004), http:\/\/www.martinfowler.com\/articles\/injection.html"},{"key":"3_CR4","doi-asserted-by":"crossref","unstructured":"Leavens, G.T., Baker, A.L., Ruby, C.: Preliminary design of JML: a behavioral interface specification language for Java. SIGSOFT Softw. Eng. Notes 31(3) (2006)","DOI":"10.1145\/1127878.1127884"},{"key":"3_CR5","doi-asserted-by":"crossref","unstructured":"Jaspan, C., Aldrich, J.: Checking framework interactions with relationships: Extended. Technical Report CMU-ISR-140-08, Institute for Software Research, Carnegie Mellon University (December 2008)","DOI":"10.21236\/ADA492512"},{"issue":"6","key":"3_CR6","doi-asserted-by":"publisher","first-page":"1811","DOI":"10.1145\/197320.197383","volume":"16","author":"B.H. Liskov","year":"1994","unstructured":"Liskov, B.H., Wing, J.M.: A behavioral notion of subtyping. ACM Trans. Program. Lang. Syst.\u00a016(6), 1811\u20131841 (1994)","journal-title":"ACM Trans. Program. Lang. Syst."},{"key":"3_CR7","doi-asserted-by":"crossref","unstructured":"Parkinson, M.J., Bierman, G.M.: Separation logic, abstraction and inheritance. In: Proc. of the symposium on Principles of Programming Languages (2008)","DOI":"10.1145\/1328438.1328451"},{"key":"3_CR8","doi-asserted-by":"crossref","unstructured":"Dhara, K.K., Leavens, G.T.: Forcing behavioral subtyping through specification inheritance. In: Proc. of the International Conference on Software Engineering (1996)","DOI":"10.1109\/ICSE.1996.493421"},{"key":"3_CR9","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"465","DOI":"10.1007\/978-3-540-24851-4_21","volume-title":"ECOOP 2004 \u2013 Object-Oriented Programming","author":"R. DeLine","year":"2004","unstructured":"DeLine, R., F\u00e4hndrich, M.: Typestates for objects. In: Odersky, M. (ed.) ECOOP 2004. LNCS, vol.\u00a03086, pp. 465\u2013490. Springer, Heidelberg (2004)"},{"key":"3_CR10","doi-asserted-by":"crossref","unstructured":"Kuncak, V., Lam, P., Zee, K., Rinard, M.: Modular Pluggable Analyses for Data Structure Consistency. IEEE Trans. Softw. Eng.\u00a032(12) (2006)","DOI":"10.1109\/TSE.2006.125"},{"key":"3_CR11","doi-asserted-by":"crossref","unstructured":"Nanda, M.G., Grothoff, C., Chandra, S.: Deriving object typestates in the presence of inter-object references. In: Proc. of the Conference on Object Oriented Programming, Systems, Languages, and Applications (2005)","DOI":"10.1145\/1094811.1094818"},{"key":"3_CR12","doi-asserted-by":"crossref","unstructured":"Bierhoff, K., Aldrich, J.: Modular typestate checking of aliased objects. In: Proc. of the Conference on Object Oriented Programming, Systems, Languages, and Applications (2007)","DOI":"10.1145\/1297027.1297050"},{"key":"3_CR13","doi-asserted-by":"crossref","unstructured":"Walker, R.J., Viggers, K.: Implementing Protocols via Declarative Event Patterns. In: Proc. of the symposium on Foundations of Software Engineering (2004)","DOI":"10.1145\/1029894.1029918"},{"key":"3_CR14","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"525","DOI":"10.1007\/978-3-540-73589-2_25","volume-title":"ECOOP 2007 \u2013 Object-Oriented Programming","author":"E. Bodden","year":"2007","unstructured":"Bodden, E., Hendren, L., Lhot\u00e1k, O.: A staged static program analysis to improve the performance of runtime monitoring. In: Ernst, E. (ed.) ECOOP 2007. LNCS, vol.\u00a04609, pp. 525\u2013549. Springer, Heidelberg (2007)"},{"key":"3_CR15","doi-asserted-by":"crossref","unstructured":"Bodden, E., Lam, P., Hendren, L.: Finding programming errors earlier by evaluating runtime monitors ahead-of-time. In: Proc. of the symposium on Foundations of Software Engineering (2008)","DOI":"10.1145\/1453101.1453109"},{"key":"3_CR16","doi-asserted-by":"crossref","unstructured":"Naeem, N.A., Lhot\u00e1k, O.: Typestate-like analysis of multiple interacting objects. In: Proc. of the Conference on Object Oriented Programming, Systems, Languages, and Applications (2008)","DOI":"10.1145\/1449764.1449792"},{"key":"3_CR17","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"262","DOI":"10.1007\/11531142_12","volume-title":"ECOOP 2005 - Object-Oriented Programming","author":"G. Bierman","year":"2005","unstructured":"Bierman, G., Wren, A.: First-class relationships in an object-oriented language. In: Black, A.P. (ed.) ECOOP 2005. LNCS, vol.\u00a03586, pp. 262\u2013286. Springer, Heidelberg (2005)"},{"key":"3_CR18","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"323","DOI":"10.1007\/978-3-540-73589-2_16","volume-title":"ECOOP 2007 \u2013 Object-Oriented Programming","author":"S. Balzer","year":"2007","unstructured":"Balzer, S., Gross, T., Eugster, P.: A relational model of object collaborations and its use in reasoning about relationships. In: Ernst, E. (ed.) ECOOP 2007. LNCS, vol.\u00a04609, pp. 323\u2013346. Springer, Heidelberg (2007)"},{"key":"3_CR19","doi-asserted-by":"crossref","unstructured":"Helm, R., Holland, I.M., Gangopadhyay, D.: Contracts: specifying behavioral compositions in object-oriented systems. In: Proc. of the Conference on Object Oriented Programming, Systems, Languages, and Applications (1990)","DOI":"10.1145\/97945.97967"},{"issue":"3","key":"3_CR20","doi-asserted-by":"publisher","first-page":"217","DOI":"10.1145\/514188.514190","volume":"24","author":"M. Sagiv","year":"2002","unstructured":"Sagiv, M., Reps, T., Wilhelm, R.: Parametric shape analysis via 3-valued logic. ACM Trans. Program. Lang. Syst.\u00a024(3), 217\u2013298 (2002)","journal-title":"ACM Trans. Program. Lang. Syst."}],"container-title":["Lecture Notes in Computer Science","ECOOP 2009 \u2013 Object-Oriented Programming"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-642-03013-0_3","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,5,21]],"date-time":"2019-05-21T15:52:06Z","timestamp":1558453926000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-642-03013-0_3"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2009]]},"ISBN":["9783642030123","9783642030130"],"references-count":20,"URL":"https:\/\/doi.org\/10.1007\/978-3-642-03013-0_3","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2009]]}}}