Implementing agent communication languages directly from UML specifications

Stephen Cranefield, Mariusz Nowostawski, Martin Purvis
2002 Proceedings of the first international joint conference on Autonomous agents and multiagent systems part 2 - AAMAS '02  
The Department of Information Science is one of six departments that make up the School of Business at the University of Otago. The department offers courses of study leading to a major in Information Science within the BCom, BA and BSc degrees. In addition to undergraduate teaching, the department is also strongly involved in postgraduate research programmes leading to MCom, MA, MSc and PhD degrees. Research projects in spatial information processing, connectionist-based information systems,
more » ... ftware engineering and software development, information engineering and database, software metrics, distributed information systems, multimedia information systems and information systems security are particularly well supported. ABSTRACT This paper proposes the use of the Unified Modelling Language (UML) as a formalism for defining an abstract syntax for Agent Communication Languages (ACLs) and their associated content languages. It describes an approach supporting an automatic mapping from high-level abstract specifications of language structures to specific computer language bindings that can be directly used by an agent platform. Some advantages of this approach are that it provides a framework for specifying and experimenting with alternative agent communication languages and reduces the error-prone manual process of generating compatible bindings and grammars for different syntaxes. A prototype implementation supporting an automatic conversion from an abstract communication language expressed in UML to a native Java API and a Resource Description Framework (RDF) serialisation format is described. Keywords Agent communication languages, abstract syntax, UML, XMI, Java binding, marshalling, RDF This technique also allows descriptions of domain objects that are instances of an ontology expressed in UML to be marshalled and sent by value within the content of messages, however a discussion of the application of this idea is beyond the scope of this paper. The structure of the paper is as follows: Section 2 describes how agent communication and content languages can be given an abstract syntax using UML [14] . Section 3 briefly summarizes the implications of using abstract syntax, and discusses the major benefits of such a modelling technique. Section 4 presents a proof-ofconcept infrastructure for automatic generation of a concrete representation from abstract syntax (UML), and gives an example of a mapping to an object-oriented language (Java). Section 5 uses the same framework to generate a message serialisation format based on RDF, used for marshalling and unmarshalling in-memory object structures. Section 6 briefly discusses the marshalling support provided and Section 7 provides a summary and suggestions for future work. AGENT COMMUNICATION LANGUAGES AND UML Agent communication languages such as KQML and the FIPA ACL are based on the notion of exchanging information represented as sentences in a logic-based content language such as the Knowledge Interchange Language (KIF) [11] or FIPA's Semantic Lan-
doi:10.1145/544862.544871 dblp:conf/atal/CranefieldNP02 fatcat:ns5wdoqkzvhj5p2fodo6twonwm