FOUNDATION FOR INTELLIGENT PHYSICAL AGENTS

 

 

FIPA Abstract Architecture Specification

 

 

Document title

FIPA Abstract Architecture Specification

Document number

PC00001C

Document source

FIPA TC Architecture

Document status

Preliminary

Date of this status

2000/08/03

Supersedes

None

Contact

arch@fipa.org

Change history

2000/02/15

While this is the first version of this document published under the new document control system, it an update from earlier drafts of this document. The changes are Agent-directory-entry becomes directory-entry, Agent-name becomes FIPA-Entity-name, added Transform-service for gateway support, new entity FIPA-Entity-Attributes and made Agent-platform a FIPA-Service; Remove references to future work. These will be published as soon as the FAB assigns a number for that document.

2000/04/04

Removed all agent-platform constructs; Cleaned up various hanging references; Added service-references.

2000/07/31

This revision restores the definitions of the actions supported by the directory and communication services. The Transform-service material is withdrawn, since it seems premature (and possibly wrong) to assume that gateways are explicitly addressable entities.

2000/08/03

Editorial changes for consistency with FIPA 2000 specifications

 

 

 

İ 2000 Foundation for Intelligent Physical Agents - http://www.fipa.org/

Geneva, Switzerland

Notice

Use of the technologies described in this specification may infringe patents, copyrights or other intellectual property rights of FIPA Members and non-members. Nothing in this specification should be construed as granting permission to use any of the technologies described. Anyone planning to make use of technology covered by the intellectual property rights of others should first obtain permission from the holder(s) of the rights. FIPA strongly encourages anyone implementing  any part of this specification to determine first whether part(s) sought to be implemented are covered by the intellectual property of others, and, if so, to obtain appropriate licenses or other permission from the holder(s) of such intellectual property prior to implementation. This specification is subject to change without notice. Neither FIPA nor any of its Members accept any responsibility whatsoever for damages or liability, direct or consequential, which may result from the use of this specification.

Foreword

The Foundation for Intelligent Physical Agents (FIPA) is an international organization that is dedicated to promoting the industry of intelligent agents by openly developing specifications supporting interoperability among agents and agent-based applications. This occurs through open collaboration among its member organizations, which are companies and universities that are active in the field of agents. FIPA makes the results of its activities available to all interested parties and intends to contribute its results to the appropriate formal standards bodies.

The members of FIPA are individually and collectively committed to open competition in the development of agent-based applications, services and equipment. Membership in FIPA is open to any corporation and individual firm, partnership, governmental body or international organization without restriction. In particular, members are not bound to implement or use specific agent-based standards, recommendations and FIPA specifications by virtue of their participation in FIPA.

The FIPA specifications are developed through direct involvement of the FIPA membership. The status of a specification can be either Preliminary, Experimental, Standard, Deprecated or Obsolete. More detail about the process of specification may be found in the FIPA Procedures for Technical Work. A complete overview of the FIPA specifications and their current status may be found in the FIPA List of Specifications. A list of terms and abbreviations used in the FIPA specifications may be found in the FIPA Glossary.

FIPA is a non-profit association registered in Geneva, Switzerland. As of January 2000, the 56 members of FIPA represented 17 countries worldwide. Further information about FIPA as an organization, membership information, FIPA specifications and upcoming meetings may be found at http://www.fipa.org/.

Contents

1     Introduction. 1

1.1      Contents. 1

1.2      Audience. 1

1.3      Acknowledgements. 2

2     Scope and Methodology. 3

2.1      Background. 3

2.2      Why an Abstract Architecture?. 4

2.3      Scope of the Abstract Architecture. 4

2.3.1      Areas that are not Sufficiently Abstract 5

2.3.2      Areas to be Considered in the Future. 5

2.4      Going From Abstract to Concrete Specifications. 5

2.5      Methodology. 7

2.6      Status of the Abstract Architecture. 8

3     Architectural Overview. 9

3.1      FIPA Entities, FIPA Services and Agents. 10

3.2      Directory Services. 10

3.2.1      Starting an Agent 10

3.2.2      Finding an Agent 11

3.2.3      Starting a FIPA Service. 11

3.3      Agent Messages. 12

3.3.1      Message Structure. 12

3.3.2      Message Transport 12

3.4      Agents Send Messages to Other Agents. 13

3.5      Providing Message Validity and Encryption. 15

3.6      Providing Interoperability. 16

4     Agent and Agent Information Model 17

4.1      Agent Relationships. 17

4.2      Transport Message Relationships. 18

4.3      Directory Entry Relationships. 18

4.4      FIPA Message Elements. 19

4.5      Message Transport Elements. 19

4.6      FIPA Entity Relationships. 20

5     Architectural Elements. 21

5.1      Introduction. 21

5.1.1      Classification of Elements. 21

5.1.2      Key-Value Tuples. 22

5.1.3      Services. 22

5.1.4      Format of Element Description. 22

5.1.5      Abstract Elements. 22

5.2      Agent 24

5.2.1      Summary. 24

5.2.2      Relationships to Other Elements. 24

5.2.3      Relationship to Concrete Specification. 24

5.2.4      Description. 24

5.3      Agent Communication Language. 24

5.3.1      Summary. 24

5.3.2      Relationships to Other Elements. 25

5.3.3      Relationship to Concrete Specification. 25

5.3.4      Description. 25

5.4      Content 25

5.4.1      Summary. 25

5.4.2      Relationships to Other Elements. 25

5.4.3      Relationship to Concrete Specification. 25

5.5      Content Language. 25

5.5.1      Relationships to Other Elements. 25

5.5.2      Relationship to Concrete Specification. 26

5.5.3      Description. 26

5.6      Directory Entry. 26

5.6.1      Summary. 26

5.6.2      Relationships to Other Elements. 26

5.6.3      Relationship to Concrete Specification. 26

5.6.4      Description. 26

5.7      Directory Service. 26

5.7.1      Summary. 26

5.7.2      Relationships to Other Elements. 26

5.7.3      Relationship to Concrete Specification. 27

5.7.4      Actions. 27

5.7.5      Description. 29

5.8      Envelope. 29

5.8.1      Summary. 29

5.8.2      Relationship to Other Elements. 29

5.8.3      Relationship to Concrete Specification. 29

5.8.4      Description. 30

5.9      FIPA Entity. 30

5.9.1      Summary. 30

5.9.2      Relationships to Other Elements. 30

5.9.3      Relationship to Concrete Specification. 30

5.9.4      Description. 30

5.10       FIPA Entity Attributes. 30

5.10.1    Summary. 30

5.10.2    Relationships to Other Elements. 30

5.10.3    Relationship to Concrete Specification. 30

5.10.4    Detailed Description. 31

5.11       FIPA Entity Name. 31

5.11.1    Summary. 31

5.11.2    Relationships to Other Elements. 31

5.11.3    Relationship to Concrete Specification. 31

5.11.4    Description. 31

5.12       FIPA Message. 32

5.12.1    Summary. 32

5.12.2    Relationships to other elements. 32

5.12.3    Relationship to Concrete Specification. 32

5.12.4    Description. 32

5.13       FIPA Service. 32

5.13.1    Summary. 32

5.13.2    Relationships to Other Elements. 32

5.13.3    Relationship to Concrete Specification. 33

5.13.4    Description. 33

5.14       Locator 33

5.14.1    Summary. 33

5.14.2    Relationships to Other Elements. 33

5.14.3    Relationship to Concrete Specification. 33

5.14.4    Description. 33

5.15       Message Encoding Representation. 33

5.15.1    Summary. 33

5.15.2    Relationships to Other Elements. 33

5.15.3    Relationship to Concrete Specification. 34

5.15.4    Description. 34

5.16       Message Transport Service. 34

5.16.1    Summary. 34

5.16.2    Relationships to Other Elements. 34

5.16.3    Relationship to Concrete Specification. 34

5.16.4    Actions. 34

5.16.5    Description. 36

5.17       Ontology. 36

5.17.1    Summary. 36

5.17.2    Relationships to Other Elements. 36

5.17.3    Relationship to Concrete Specification. 36

5.17.4    Description. 36

5.18       Payload. 36

5.18.1    Summary. 36

5.18.2    Relationships to Other Elements. 36

5.18.3    Relationship to Concrete Specification. 36

5.18.4    Description. 36

5.19       Transport 37

5.19.1    Summary. 37

5.19.2    Relationships to Other Elements. 37

5.19.3    Relationship to Concrete Specification. 37

5.19.4    Description. 37

5.20       Transport Description. 37

5.20.1    Summary. 37

5.20.2    Relationships to Other Elements. 37

5.20.3    Relationship to Concrete Specification. 37

5.20.4    Description. 37

5.21       Transport Message. 38

5.21.1    Summary. 38

5.21.2    Relationships to Other Elements. 38

5.21.3    Relationship to Concrete Specification. 38

5.21.4    Description. 38

5.22       Transport Specific Properties. 38

5.22.1    Summary. 38

5.22.2    Relationships to Other Elements. 38

5.22.3    Relationship to Concrete Specification. 38

5.22.4    Description. 38

5.23       Transport Type. 38

5.23.1    Summary. 38

5.23.2    Relationships to Other Elements. 39

5.23.3    Relationship to Concrete Specification. 39

5.23.4    Description. 39

6     Evolution of the Architecture. 40

7     Informative Annex A: Goals of Message Transport Abstractions. 41

7.1      Scope. 41

7.2      Variety of Transports. 41

7.3      Support for Alternative Transports Within a Single System.. 41

7.4      Desirability of Transport Agnosticism.. 42

7.5      Desirability of Selective Specificity. 42

7.6      Connection-Based, Connectionless and Store-and-Forward Transports. 42

7.7      Conversation Policies and Interaction Protocols. 42

7.8      Point-to-Point and Multiparty Interactions. 42

7.9      Durable Messaging. 43

7.10       Quality of Service. 43

7.11       Anonymity. 43

7.12       Message Encoding. 43

7.13       Interoperability and Gateways. 43

7.14       Reasoning about Agent Communications. 44

7.15       Testing, Debugging and Management 44

8     Informative Annex B: Goals of Directory Service Abstractions. 45

8.1      Scope. 45

8.2      Variety of directory services. 45