# Linked Data Aware Agent Development Framework for Mobile Devices
## 2 Architecture of LDAF-M
### FIPA Compliant Architecture  
FIPA (Foundation for Intelligent Physical Agents) is an IEEE Computer Society standards organization that issues a set of specifications about agents and multi-agent systems. These specifications, which mainly aim to promote interoperability among agent systems, can be classified in terms of different categories. Agent communication, agent management, agent message transport and abstract architecture are the main categories of FIPA specifications [20]. During the design and implementation of LDAF-M, one of the specifications that we have followed to a great extend was the FIPA agent management specification [27]. FIPA agent management specification introduces the \"agent management reference model\", using which we could have mapped the central P2P communication infrastructure into a FIPA compliant architecture. The agent management reference model introduced by the FIPA agent management specification [24] consists of the following components:  
Directory Facilitator (DF), provides yellow page services to other agents. Agents register their services with the DF using a specific registration template or ontology and may query the DF to find out the required services offered by other agents. Agent Management System (AMS), manages the life cycle of agents. Tasks such as creation, termination and suspension of agents are under the responsibility of the AMS. The AMS also keeps the Agent Identifiers (AIDs) which contain transport addresses of agents that registered with the platform. Initially, each agent registers with the AMS to get an AID for itself. Message Transport Service (MTS), is responsible for delivering messages among agents residing on the same or remote agent platforms. Agents exchange messages expressed in an agent communication language and use transport addresses in delivering messages. Agent Platform (AP), provides the physical environment on which agents can run properly. It consists of DF, AMS, MTS and agents. The mapping made to a FIPA compliant architecture following the FIPA agent management reference model is shown in Figure 3. The index server and the peers (i.e., mobile devices), which are the main components of the central P2P communication infrastructure, have been implemented as different FIPA agent platforms, as shown in Figure 3.  
Each of the agent platforms that reside on the mobile devices (peers) contains its own Agent Management System (AMS) as the managing authority in the agent platform. An AMS neither has any knowledge about other agent platforms, nor communicates with an AMS located in a different agent platform. Information about agents on remote platforms can be accessed through DF (Directory Facilitator) located in the agent platform that contains the index server. The tasks such as the creation of a new agent, handling the changes in the life cycle of an agent and the killing of an agent are under the responsibility of the AMS. When a new agent is created, Agent Identifier (AID) information that includes transport address(es) for that agent are recorded by the AMS. These records are kept within the AMS during the lifetime of the agent. More than one agent can run on an AP, and AIDs of the agents located within an AMS, can be queried by other agents which run on the same AMS. The DF is in charge of providing yellow page services to all of the agents. Agents from different platforms can publish through the DF the services that they provide and these services are searchable from all of the mobile device agent platforms. Unlike similar frameworks such as Jade LEAP [11], LDAF-M contains only one DF and it is located in the agent platform that contains the index server. There does not exist an AMS in the index server's agent platform, rather there is an AMS in each mobile device agent platform. Since AMS manages life cycles and naming of agents in the system, it is obvious that placing a single AMS in the index server's agent platform may cause overloading of this single AMS.