{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,19]],"date-time":"2025-06-19T04:35:12Z","timestamp":1750307712912,"version":"3.41.0"},"reference-count":62,"publisher":"Association for Computing Machinery (ACM)","issue":"2","license":[{"start":{"date-parts":[[2009,2,1]],"date-time":"2009-02-01T00:00:00Z","timestamp":1233446400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"DOI":"10.13039\/100000143","name":"Division of Computing and Communication Foundations","doi-asserted-by":"publisher","award":["CCF-0427202CCF-0545850"],"award-info":[{"award-number":["CCF-0427202CCF-0545850"]}],"id":[{"id":"10.13039\/100000143","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Program. Lang. Syst."],"published-print":{"date-parts":[[2009,2]]},"abstract":"<jats:p>\n            <jats:italic>Predicate dispatch<\/jats:italic>\n            is an object-oriented (OO) language mechanism for determining the method implementation to be invoked upon a message send. With predicate dispatch, each method implementation includes a predicate guard specifying the conditions under which the method should be invoked, and logical implication of predicates determines the method overriding relation. Predicate dispatch naturally unifies and generalizes several common forms of dynamic dispatch, including traditional OO dispatch, multimethod dispatch, and functional-style pattern matching. Unfortunately, prior languages supporting predicate dispatch have had several deficiencies that limit the practical utility of this language feature.\n          <\/jats:p>\n          <jats:p>We describe JPred, a backward-compatible extension to Java supporting predicate dispatch. While prior languages with predicate dispatch have been extensions to toy or nonmainstream languages, we show how predicate dispatch can be naturally added to a traditional OO language. While prior languages with predicate dispatch have required the whole program to be available for typechecking and compilation, JPred retains Java's modular typechecking and compilation strategies. While prior languages with predicate dispatch have included special-purpose algorithms for reasoning about predicates, JPred employs general-purpose, off-the-shelf decision procedures. As a result, JPred's type system is more flexible, allowing several useful programming idioms that are spuriously rejected by those other languages. After describing the JPred language informally, we present an extension to Featherweight Java that formalizes the language and its modular type system, which we have proven sound. Finally, we discuss two case studies that illustrate the practical utility of JPred, including its use in the detection of several errors.<\/jats:p>","DOI":"10.1145\/1462166.1462168","type":"journal-article","created":{"date-parts":[[2009,2,25]],"date-time":"2009-02-25T14:44:30Z","timestamp":1235573070000},"page":"1-54","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":15,"title":["Expressive and modular predicate dispatch for Java"],"prefix":"10.1145","volume":"31","author":[{"given":"Todd","family":"Millstein","sequence":"first","affiliation":[{"name":"University of California, Los Angeles, Los Angeles, CA"}]},{"given":"Christopher","family":"Frost","sequence":"additional","affiliation":[{"name":"University of California, Los Angeles, Los Angeles, CA"}]},{"given":"Jason","family":"Ryder","sequence":"additional","affiliation":[{"name":"University of California, Los Angeles, Los Angeles, CA"}]},{"given":"Alessandro","family":"Warth","sequence":"additional","affiliation":[{"name":"University of California, Los Angeles, Los Angeles, CA"}]}],"member":"320","published-online":{"date-parts":[[2009,2,20]]},"reference":[{"key":"e_1_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1023\/A:1010051815785"},{"key":"e_1_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1145\/117954.117963"},{"key":"e_1_2_1_3_1","unstructured":"Arnold K. Gosling J. and Holmes D. 2005. The Java Programming Language 4th ed. Prentice Hall.   Arnold K. Gosling J. and Holmes D. 2005. The Java Programming Language 4th ed. Prentice Hall."},{"key":"e_1_2_1_4_1","volume-title":"Tech. Rep. 01-11, Department of Computer Science","author":"Assaad M. G.","year":"2001","unstructured":"Assaad , M. G. and Leavens , G. T . 2001 . Alias-Free parameters in C for better reasoning and optimization. Tech. Rep. 01-11, Department of Computer Science , Iowa State University , Ames, Iowa . November. Assaad, M. G. and Leavens, G. T. 2001. Alias-Free parameters in C for better reasoning and optimization. Tech. Rep. 01-11, Department of Computer Science, Iowa State University, Ames, Iowa. November."},{"key":"e_1_2_1_5_1","volume-title":"Proceedings of the 16th International Conference on Computer Aided Verification (CAV'04)","volume":"3114","author":"Barrett C.","unstructured":"Barrett , C. and Berezin , S . 2004. CVC Lite: A new implementation of the cooperating validity checker . In Proceedings of the 16th International Conference on Computer Aided Verification (CAV'04) , R. Alur and D. A. Peled, Eds. Lecture Notes in Computer Science , vol. 3114 . Springer, 515--518. Barrett, C. and Berezin, S. 2004. CVC Lite: A new implementation of the cooperating validity checker. In Proceedings of the 16th International Conference on Computer Aided Verification (CAV'04), R. Alur and D. A. Peled, Eds. Lecture Notes in Computer Science, vol. 3114. Springer, 515--518."},{"key":"e_1_2_1_6_1","volume-title":"revised","author":"Baumgartner G.","year":"2002","unstructured":"Baumgartner , G. , Jansche , M. , and Laufer , K . revised March 2002 . Half &amp; Half : Multiple dispatch and retroactive abstraction for Java. Tech. rep. OSU-CISRC-5\/01-TR08, Department of Computer and Information Science, The Ohio State University . Baumgartner, G., Jansche, M., and Laufer, K. revised March 2002. Half &amp; Half: Multiple dispatch and retroactive abstraction for Java. Tech. rep. OSU-CISRC-5\/01-TR08, Department of Computer and Information Science, The Ohio State University."},{"key":"e_1_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1145\/944705.944711"},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/28697.28700"},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/263700.263721"},{"key":"e_1_2_1_10_1","unstructured":"Bray T. Paoli J. Sperberg-McQueen C. M. Maler E. and Yergeau F. 2006. eXtensible markup language (XML) 1.0 (4th Edition). World Wide Web Consortium recommendation http:\/\/www.w3.org\/TR\/REC-xml.  Bray T. Paoli J. Sperberg-McQueen C. M. Maler E. and Yergeau F. 2006. eXtensible markup language (XML) 1.0 (4th Edition). World Wide Web Consortium recommendation http:\/\/www.w3.org\/TR\/REC-xml."},{"key":"e_1_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1145\/203095.203096"},{"volume-title":"Object-Oriented Programming: A Unified Foundation. Progress in Theoretical Computer Science","author":"Castagna G.","key":"e_1_2_1_12_1","unstructured":"Castagna , G. 1997. Object-Oriented Programming: A Unified Foundation. Progress in Theoretical Computer Science . Birkhauser , Boston . Castagna, G. 1997. Object-Oriented Programming: A Unified Foundation. Progress in Theoretical Computer Science. Birkhauser, Boston."},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1006\/inco.1995.1033"},{"key":"e_1_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.5555\/646150.679216"},{"key":"e_1_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.5555\/646151.679360"},{"key":"e_1_2_1_16_1","unstructured":"Chambers C. 1997. The Cecil language specification and rationale: Version 2.1. www.cs.washington.edu\/research\/projects\/cecil\/pubs\/cecil-spec.html.  Chambers C. 1997. The Cecil language specification and rationale: Version 2.1. www.cs.washington.edu\/research\/projects\/cecil\/pubs\/cecil-spec.html."},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/320384.320407"},{"volume-title":"Department of Computer Science","author":"Clifton C.","key":"e_1_2_1_18_1","unstructured":"Clifton , C. 2001. MultiJava: Design, implementation, and evaluation of a Java-compatible language supporting modular open classes and symmetric multiple dispatch. Tech. rep. 01-10 , Department of Computer Science , Iowa State University , Ames, Iowa . November. Clifton, C. 2001. MultiJava: Design, implementation, and evaluation of a Java-compatible language supporting modular open classes and symmetric multiple dispatch. Tech. rep. 01-10, Department of Computer Science, Iowa State University, Ames, Iowa. November."},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1145\/354222.353181"},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/1133651.1133655"},{"key":"e_1_2_1_21_1","unstructured":"CVC3. 2009. The CVC3 home page. http:\/\/www.cs.nyu.edu\/acsys\/cvc3.  CVC3. 2009. The CVC3 home page. http:\/\/www.cs.nyu.edu\/acsys\/cvc3."},{"key":"e_1_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/1066100.1066102"},{"key":"e_1_2_1_23_1","unstructured":"Eclipse. 2007. Eclipse home page. http:\/\/www.eclipse.org.  Eclipse. 2007. Eclipse home page. http:\/\/www.eclipse.org."},{"key":"e_1_2_1_24_1","volume-title":"Proceedings of the European Conference on Object-Oriented Programming (ECOOP), E. Ernst, Ed. Lecture Notes in Computer Science","volume":"4609","author":"Emir B.","unstructured":"Emir , B. , Odersky , M. , and Williams , J . 2007. Matching objects with patterns . In Proceedings of the European Conference on Object-Oriented Programming (ECOOP), E. Ernst, Ed. Lecture Notes in Computer Science , vol. 4609 . Springer, 273--298. Emir, B., Odersky, M., and Williams, J. 2007. Matching objects with patterns. In Proceedings of the European Conference on Object-Oriented Programming (ECOOP), E. Ernst, Ed. Lecture Notes in Computer Science, vol. 4609. Springer, 273--298."},{"key":"e_1_2_1_25_1","volume-title":"Proceedings of the European Conference on Object-Oriented Programming (ECOOP'98)","volume":"1445","author":"Ernst M.","unstructured":"Ernst , M. , Kaplan , C. , and Chambers , C . 1998. Predicate dispatching: A unified theory of dispatch . In Proceedings of the European Conference on Object-Oriented Programming (ECOOP'98) , E. Jul, Ed. Lecture Notes in Computer Science , vol. 1445 . Springer, 186--211. Ernst, M., Kaplan, C., and Chambers, C. 1998. Predicate dispatching: A unified theory of dispatch. In Proceedings of the European Conference on Object-Oriented Programming (ECOOP'98), E. Jul, Ed. Lecture Notes in Computer Science, vol. 1445. Springer, 186--211."},{"volume-title":"the International Conference on Computer Aided Verification (CAV).","author":"Flanagan C.","key":"e_1_2_1_26_1","unstructured":"Flanagan , C. , Joshi , R. , Ou , X. , and Saxe , J. B . 2003. Theorem proving using lazy proof explication . In the International Conference on Computer Aided Verification (CAV). Flanagan, C., Joshi, R., Ou, X., and Saxe, J. B. 2003. Theorem proving using lazy proof explication. In the International Conference on Computer Aided Verification (CAV)."},{"key":"e_1_2_1_27_1","unstructured":"Frost C. and Millstein T. 2005. Featherweight JPred. Tech. rep. CSD-TR-050038 UCLA Computer Science Department. ftp:\/\/ftp.cs.ucla.edu\/tech-report\/2005-reports\/050038.pdf.  Frost C. and Millstein T. 2005. Featherweight JPred. Tech. rep. CSD-TR-050038 UCLA Computer Science Department. ftp:\/\/ftp.cs.ucla.edu\/tech-report\/2005-reports\/050038.pdf."},{"volume-title":"the International Workshop on Foundations and Developments of Object-Oriented Languages(FOOL\/WOOD).","author":"Frost C.","key":"e_1_2_1_28_1","unstructured":"Frost , C. and Millstein , T . 2006. Modularly typesafe interface dispatch in JPred . In the International Workshop on Foundations and Developments of Object-Oriented Languages(FOOL\/WOOD). Frost, C. and Millstein, T. 2006. Modularly typesafe interface dispatch in JPred. In the International Workshop on Foundations and Developments of Object-Oriented Languages(FOOL\/WOOD)."},{"key":"e_1_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1145\/114669.114671"},{"key":"e_1_2_1_30_1","volume-title":"Design Patterns: Elements of Reusable Object-Oriented Software","author":"Gamma E.","year":"1995","unstructured":"Gamma , E. , Helm , R. , Johnson , R. E. , and Vlissides , J . 1995 . Design Patterns: Elements of Reusable Object-Oriented Software . Addison-Wesley , MA. Gamma, E., Helm, R., Johnson, R. E., and Vlissides, J. 1995. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, MA."},{"key":"e_1_2_1_31_1","volume-title":"Proceedings of the European Conference on Object-Oriented Programming. Lecture Notes in Computer Science","volume":"2743","author":"Gapeyev V.","unstructured":"Gapeyev , V. and Pierce , B. C . 2003. Regular object types . In Proceedings of the European Conference on Object-Oriented Programming. Lecture Notes in Computer Science , vol. 2743 . Springer. Gapeyev, V. and Pierce, B. C. 2003. Regular object types. In Proceedings of the European Conference on Object-Oriented Programming. Lecture Notes in Computer Science, vol. 2743. Springer."},{"key":"e_1_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1145\/781131.781133"},{"key":"e_1_2_1_33_1","unstructured":"Gosling J. Joy B. Steele G. and Bracha G. 2005. The Java Language Specification 3rd Ed. Prentice Hall.   Gosling J. Joy B. Steele G. and Bracha G. 2005. The Java Language Specification 3rd Ed. Prentice Hall."},{"key":"e_1_2_1_35_1","doi-asserted-by":"publisher","DOI":"10.1145\/1035582.1035584"},{"key":"e_1_2_1_36_1","doi-asserted-by":"publisher","DOI":"10.1145\/378993.379006"},{"volume-title":"Proceedings of the International Conference on Technology of Obeject-Oriented Languages and Systems TOOLS Pacific, 345--355","author":"Hosking J. G.","key":"e_1_2_1_37_1","unstructured":"Hosking , J. G. , Hamer , J. , and Mugridge , W . 1990. Integrating functional and object-oriented programming . In Proceedings of the International Conference on Technology of Obeject-Oriented Languages and Systems TOOLS Pacific, 345--355 . Hosking, J. G., Hamer, J., and Mugridge, W. 1990. Integrating functional and object-oriented programming. In Proceedings of the International Conference on Technology of Obeject-Oriented Languages and Systems TOOLS Pacific, 345--355."},{"key":"e_1_2_1_38_1","doi-asserted-by":"publisher","DOI":"10.1145\/503502.503505"},{"key":"e_1_2_1_39_1","doi-asserted-by":"publisher","DOI":"10.1145\/28697.28732"},{"key":"e_1_2_1_40_1","volume-title":"Proceedings of the 11th European Conference on Object-Oriented (ECOOP'97)","volume":"1241","author":"Kiczales G.","unstructured":"Kiczales , G. , Lamping , J. , Menhdhekar , A. , Maeda , C. , Lopes , C. , Loingtier , J.-M. , and Irwin , J . 1997. Aspect-Oriented programming . In Proceedings of the 11th European Conference on Object-Oriented (ECOOP'97) , M. Ak\u015fit and S. Matsuoka, Eds. Lecture Notes on Computer Science , vol. 1241 . Springer, 220--242. Kiczales, G., Lamping, J., Menhdhekar, A., Maeda, C., Lopes, C., Loingtier, J.-M., and Irwin, J. 1997. Aspect-Oriented programming. In Proceedings of the 11th European Conference on Object-Oriented (ECOOP'97), M. Ak\u015fit and S. Matsuoka, Eds. Lecture Notes on Computer Science, vol. 1241. Springer, 220--242."},{"key":"e_1_2_1_41_1","unstructured":"Leavens G. T. and Antropova O. 1999. ACL \u2014 Eliminating parameter aliasing with dynamic dispatch. Tech. rep. 98-08a Department of Computer Science Iowa State University Ames Iowa. February.  Leavens G. T. and Antropova O. 1999. ACL \u2014 Eliminating parameter aliasing with dynamic dispatch. Tech. rep. 98-08a Department of Computer Science Iowa State University Ames Iowa. February."},{"key":"e_1_2_1_42_1","doi-asserted-by":"publisher","DOI":"10.1145\/949305.949324"},{"key":"e_1_2_1_43_1","volume-title":"Proceedings of the International Symposium on Practical Aspects of Declarative Languages (PADL), V. Dahl and P. Wadler, Eds. Lecture Notes in Computer Science","volume":"2562","author":"Liu J.","unstructured":"Liu , J. and Myers , A. C . 2003. JMatch: Iterable abstract pattern matching for Java . In Proceedings of the International Symposium on Practical Aspects of Declarative Languages (PADL), V. Dahl and P. Wadler, Eds. Lecture Notes in Computer Science , vol. 2562 . Springer, 110--127. Liu, J. and Myers, A. C. 2003. JMatch: Iterable abstract pattern matching for Java. In Proceedings of the International Symposium on Practical Aspects of Declarative Languages (PADL), V. Dahl and P. Wadler, Eds. Lecture Notes in Computer Science, vol. 2562. Springer, 110--127."},{"key":"e_1_2_1_45_1","doi-asserted-by":"publisher","DOI":"10.1145\/1028976.1029006"},{"key":"e_1_2_1_46_1","doi-asserted-by":"publisher","DOI":"10.1145\/583852.581489"},{"key":"e_1_2_1_47_1","doi-asserted-by":"publisher","DOI":"10.1145\/1018203.1018207"},{"key":"e_1_2_1_48_1","doi-asserted-by":"publisher","DOI":"10.1006\/inco.2002.3103"},{"key":"e_1_2_1_49_1","doi-asserted-by":"crossref","unstructured":"Milner R. Tofte M. Harper R. and MacQueen D. 1997. The Definition of Standard ML (Revised). The MIT Press.   Milner R. Tofte M. Harper R. and MacQueen D. 1997. The Definition of Standard ML (Revised). The MIT Press.","DOI":"10.7551\/mitpress\/2319.001.0001"},{"key":"e_1_2_1_50_1","doi-asserted-by":"publisher","DOI":"10.1145\/28697.28698"},{"key":"e_1_2_1_51_1","doi-asserted-by":"publisher","DOI":"10.1145\/357073.357079"},{"key":"e_1_2_1_52_1","volume-title":"Polyglot: An extensible compiler framework for Java. In Proceedings of the 12th International Conference on Compiler Construction (CC)","author":"Nystrom N.","year":"2003","unstructured":"Nystrom , N. , Clarkson , M. R. , and Myers , A. C . 2003 . Polyglot: An extensible compiler framework for Java. In Proceedings of the 12th International Conference on Compiler Construction (CC) . Springer . Nystrom, N., Clarkson, M. R., and Myers, A. C. 2003. Polyglot: An extensible compiler framework for Java. In Proceedings of the 12th International Conference on Compiler Construction (CC). Springer."},{"key":"e_1_2_1_53_1","unstructured":"oneworld. 2008. one.world home page. http:\/\/cs.nyu.edu\/rgrimm\/one.world.  oneworld. 2008. one.world home page. http:\/\/cs.nyu.edu\/rgrimm\/one.world."},{"key":"e_1_2_1_54_1","doi-asserted-by":"publisher","DOI":"10.1145\/508386.508393"},{"volume-title":"Proceedings of the USENIX Annual Technical Conference (USENIX-99)","author":"Pai V. S.","key":"e_1_2_1_55_1","unstructured":"Pai , V. S. , Druschel , P. , and Zwaenepoel , W . 1999. Flash: An efficient and portable Web server . In Proceedings of the USENIX Annual Technical Conference (USENIX-99) . USENIX Association, 199--212. Pai, V. S., Druschel, P., and Zwaenepoel, W. 1999. Flash: An efficient and portable Web server. In Proceedings of the USENIX Annual Technical Conference (USENIX-99). USENIX Association, 199--212."},{"key":"e_1_2_1_56_1","unstructured":"Polyglot for Java 5. Polyglot for Java 5 homepage. http:\/\/www.cs.ucla.edu\/~milanst\/projects\/polyglot5.  Polyglot for Java 5. Polyglot for Java 5 homepage. http:\/\/www.cs.ucla.edu\/~milanst\/projects\/polyglot5."},{"key":"e_1_2_1_57_1","doi-asserted-by":"publisher","DOI":"10.1002\/(SICI)1096-9942(1998)4:1%3C27::AID-TAPO3%3E3.0.CO;2-4"},{"volume-title":"International Workshop on Foundations of Object-Oriented Languages.","author":"Richard A.","key":"e_1_2_1_58_1","unstructured":"Richard , A. and Lhotak , O . 2008. OOMatch: Pattern matching as dispatch in Java . In International Workshop on Foundations of Object-Oriented Languages. Richard, A. and Lhotak, O. 2008. OOMatch: Pattern matching as dispatch in Java. In International Workshop on Foundations of Object-Oriented Languages."},{"key":"e_1_2_1_59_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-30579-8_14"},{"key":"e_1_2_1_60_1","doi-asserted-by":"publisher","DOI":"10.5555\/1098646"},{"volume-title":"The C++ Programming Language","author":"Stroustrup B.","key":"e_1_2_1_61_1","unstructured":"Stroustrup , B. 1997. The C++ Programming Language : Third Edition. Addison-Wesley, Reading , MA. Stroustrup, B. 1997. The C++ Programming Language: Third Edition. Addison-Wesley, Reading, MA."},{"key":"e_1_2_1_62_1","unstructured":"Ucko A. M. 2001. Predicate dispatching in the common lisp object system. Tech. rep. 2001-006 MIT Artificial Intelligence Laboratory.  Ucko A. M. 2001. Predicate dispatching in the common lisp object system. Tech. rep. 2001-006 MIT Artificial Intelligence Laboratory."},{"key":"e_1_2_1_63_1","doi-asserted-by":"publisher","DOI":"10.1145\/502034.502057"},{"key":"e_1_2_1_64_1","doi-asserted-by":"publisher","DOI":"10.1006\/inco.1994.1093"}],"container-title":["ACM Transactions on Programming Languages and Systems"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1462166.1462168","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/1462166.1462168","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T13:30:14Z","timestamp":1750253414000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1462166.1462168"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2009,2]]},"references-count":62,"journal-issue":{"issue":"2","published-print":{"date-parts":[[2009,2]]}},"alternative-id":["10.1145\/1462166.1462168"],"URL":"https:\/\/doi.org\/10.1145\/1462166.1462168","relation":{},"ISSN":["0164-0925","1558-4593"],"issn-type":[{"type":"print","value":"0164-0925"},{"type":"electronic","value":"1558-4593"}],"subject":[],"published":{"date-parts":[[2009,2]]},"assertion":[{"value":"2007-04-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2008-04-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2009-02-20","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}