{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,5,6]],"date-time":"2025-05-06T11:05:13Z","timestamp":1746529513536},"reference-count":35,"publisher":"Cambridge University Press (CUP)","issue":"4-5","license":[{"start":{"date-parts":[[2012,9,5]],"date-time":"2012-09-05T00:00:00Z","timestamp":1346803200000},"content-version":"unspecified","delay-in-days":66,"URL":"https:\/\/www.cambridge.org\/core\/terms"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Theory and Practice of Logic Programming"],"published-print":{"date-parts":[[2012,7]]},"abstract":"<jats:title>Abstract<\/jats:title><jats:p>While past research in answer-set programming (ASP) mainly focused on theory, ASP solver technology, and applications, the present work situates itself in the context of a quite recent research trend: <jats:italic>development support for ASP<\/jats:italic>. In particular, we propose to augment answer-set programs with additional meta-information formulated in a dedicated annotation language, called <jats:sc>Lana<\/jats:sc>. This language allows the grouping of rules into coherent blocks and to specify language signatures, types, pre- and postconditions, as well as unit tests for such blocks. While these annotations are invisible to an ASP solver, as they take the form of program comments, they can be interpreted by tools for documentation, testing, and verification purposes, as well as to eliminate sources of common programming errors by realising syntax checking or code completion features. To demonstrate its versatility, we introduce two such tools, viz. (i) ASP<jats:sc>Doc<\/jats:sc>, for generating an HTML documentation for a program based on the annotated information, and (ii) ASP<jats:sc>Unit<\/jats:sc>, for running and monitoring unit tests on program blocks. <jats:sc>Lana<\/jats:sc> is also exploited in the <jats:monospace>SeaLion<\/jats:monospace> system, an integrated development environment for ASP based on Eclipse.<\/jats:p>","DOI":"10.1017\/s147106841200021x","type":"journal-article","created":{"date-parts":[[2012,9,5]],"date-time":"2012-09-05T11:28:45Z","timestamp":1346844525000},"page":"619-637","source":"Crossref","is-referenced-by-count":11,"title":["Annotating answer-set programs in <scp>Lana<\/scp>"],"prefix":"10.1017","volume":"12","author":[{"given":"MARINA","family":"DE VOS","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"DO\u011eA GIZEM","family":"KISA","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"JOHANNES","family":"OETSCH","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"J\u00d6RG","family":"P\u00dcHRER","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"HANS","family":"TOMPITS","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"56","published-online":{"date-parts":[[2012,9,5]]},"reference":[{"key":"S147106841200021X_ref9","unstructured":"De Vos M. and Schaub T. , Eds. 2009. Second International Workshop on Software Engineering for Answer Set Programming (SEA 2009)."},{"key":"S147106841200021X_ref16","first-page":"386","volume-title":"Proceedings of the IJCAI 2007","author":"Gebser","year":"2007"},{"key":"S147106841200021X_ref5","unstructured":"Brain M. , Gebser M. , P\u00fchrer J. , Schaub T. , Tompits H. and Woltran S. 2007. \u201cThat is illogical captain!\u201d \u2013 The debugging support tool spock for answer-set programs: System description. See De Vos and Schaub, 71\u201385."},{"key":"S147106841200021X_ref10","doi-asserted-by":"publisher","DOI":"10.1007\/s10601-007-9031-y"},{"key":"S147106841200021X_ref22","first-page":"242","volume-title":"Proceedings of the LPNMR 2011","author":"Janhunen","year":"2011"},{"key":"S147106841200021X_ref13","first-page":"406","volume-title":"Proceedings of the KR'98","author":"Eiter","year":"1998"},{"key":"S147106841200021X_ref17","doi-asserted-by":"publisher","DOI":"10.1023\/A:1018938324292"},{"key":"S147106841200021X_ref28","first-page":"420","volume-title":"Proceedings of the LPNMR'97","author":"Niemel\u00e4","year":"1997"},{"key":"S147106841200021X_ref11","first-page":"541","volume-title":"Proceedings of the JELIA 2002","author":"Eiter","year":"2002"},{"key":"S147106841200021X_ref6","doi-asserted-by":"publisher","DOI":"10.1016\/0743-1066(94)90032-9"},{"key":"S147106841200021X_ref34","first-page":"305","volume-title":"Proceedings of the PADL'98","author":"Soininen","year":"1998"},{"key":"S147106841200021X_ref7","first-page":"724","volume-title":"Proceedings of the ICLP 2008","author":"Cliffe","year":"2008"},{"key":"S147106841200021X_ref26","unstructured":"Leavens G. T. and Cheon Y. 2006. Design by contract with JML. ftp:\/\/ftp.cs.iastate.edu\/pub\/leavens\/JML\/jmldbc.pdf."},{"key":"S147106841200021X_ref2","doi-asserted-by":"publisher","DOI":"10.1017\/CBO9780511543357"},{"key":"S147106841200021X_ref24","first-page":"152","volume-title":"Proceedings of the INAP\/WLP 2011","author":"Kloim\u00fcllner","year":"2011"},{"key":"S147106841200021X_ref18","first-page":"1070","volume-title":"Proceedings of the 5th International Conference and Symposium on Logic Programming","author":"Gelfond","year":"1988"},{"key":"S147106841200021X_ref31","first-page":"154","volume-title":"Technical Communications of the 26th International Conference on Logic Programming (ICLP 2010)","author":"Oetsch","year":"2010"},{"key":"S147106841200021X_ref1","unstructured":"Balduccini M. 2007. Modules and signature declarations for A-Prolog: Progress report. See De Vos and Schaub, 41\u201355."},{"key":"S147106841200021X_ref3","volume-title":"Test-Driven Development: By Example","author":"Beck","year":"2003"},{"key":"S147106841200021X_ref8","unstructured":"De Vos M. and Schaub T. , Eds. 2007. First International Workshop on Software Engineering for Answer Set Programming (SEA 2007)."},{"key":"S147106841200021X_ref12","first-page":"290","volume-title":"Proceedings of the LPNMR'97","author":"Eiter","year":"1997"},{"key":"S147106841200021X_ref14","unstructured":"Febbraro O. , Leone N. , Reale K. and Ricca F. 2011. Unit testing in ASPIDE. In Proceedings of the INAP\/WLP 2011. INFSYS Research Report 1843-11-06, 165\u2013176."},{"key":"S147106841200021X_ref15","first-page":"317","volume-title":"Proceedings of the LPNMR 2011","author":"Febbraro","year":"2011"},{"key":"S147106841200021X_ref19","doi-asserted-by":"publisher","DOI":"10.1007\/BF03037169"},{"key":"S147106841200021X_ref20","first-page":"61","volume-title":"Proceedings of the AAAI 2004","author":"Giunchiglia","year":"2004"},{"key":"S147106841200021X_ref21","first-page":"951","volume-title":"Proceedings of the ECAI 2010","author":"Janhunen","year":"2010"},{"key":"S147106841200021X_ref23","doi-asserted-by":"crossref","first-page":"813","DOI":"10.1613\/jair.2810","article-title":"Modularity aspects of disjunctive stable models","volume":"35","author":"Janhunen","year":"2009","journal-title":"Journal Artificial Intelligence Research"},{"key":"S147106841200021X_ref25","doi-asserted-by":"publisher","DOI":"10.1007\/10720327_14"},{"key":"S147106841200021X_ref27","doi-asserted-by":"publisher","DOI":"10.1016\/S0004-3702(02)00186-8"},{"key":"S147106841200021X_ref30","unstructured":"Oetsch J. , Prischink M. , P\u00fchrer J. , Schwengerer M. and Tompits H. 2012. On the small-scope hypothesis for testing answer-set programs. In Proceedings of the KR 2012."},{"key":"S147106841200021X_ref29","first-page":"317","volume-title":"Proceedings of the LPNMR'99","author":"Niemel\u00e4","year":"1999"},{"key":"S147106841200021X_ref32","first-page":"141","volume-title":"Proceedings of the INAP\/WLP 2011","author":"Oetsch","year":"2011"},{"key":"S147106841200021X_ref33","unstructured":"Perri S. , Ricca F. , Terracina G. , Cianni D. and Veltri P. 2007. An integrated graphic tool for developing and testing DLV programs. See De Vos and Schaub, 86\u2013100."},{"key":"S147106841200021X_ref35","unstructured":"Sureshkumar A. , De Vos, M. , Brain M. and Fitch J. 2007. APE: An Ans Prolog* environment. See De Vos and Schaub, 101\u2013115."},{"key":"S147106841200021X_ref4","doi-asserted-by":"publisher","DOI":"10.1017\/S1471068410000530"}],"container-title":["Theory and Practice of Logic Programming"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/www.cambridge.org\/core\/services\/aop-cambridge-core\/content\/view\/S147106841200021X","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,4,25]],"date-time":"2019-04-25T20:26:01Z","timestamp":1556223961000},"score":1,"resource":{"primary":{"URL":"https:\/\/www.cambridge.org\/core\/product\/identifier\/S147106841200021X\/type\/journal_article"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2012,7]]},"references-count":35,"journal-issue":{"issue":"4-5","published-print":{"date-parts":[[2012,7]]}},"alternative-id":["S147106841200021X"],"URL":"https:\/\/doi.org\/10.1017\/s147106841200021x","relation":{},"ISSN":["1471-0684","1475-3081"],"issn-type":[{"value":"1471-0684","type":"print"},{"value":"1475-3081","type":"electronic"}],"subject":[],"published":{"date-parts":[[2012,7]]}}}