View Javadoc

1   /***
2    * ***************************************************************
3    * JADE - Java Agent DEvelopment Framework is a framework to develop
4    * multi-agent systems in compliance with the FIPA specifications.
5    * Copyright (C) 2000 CSELT S.p.A.
6    * 
7    * GNU Lesser General Public License
8    * 
9    * This library is free software; you can redistribute it and/or
10   * modify it under the terms of the GNU Lesser General Public
11   * License as published by the Free Software Foundation,
12   * version 2.1 of the License.
13   * 
14   * This library is distributed in the hope that it will be useful,
15   * but WITHOUT ANY WARRANTY; without even the implied warranty of
16   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
17   * Lesser General Public License for more details.
18   * 
19   * You should have received a copy of the GNU Lesser General Public
20   * License along with this library; if not, write to the
21   * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
22   * Boston, MA  02111-1307, USA.
23   * **************************************************************
24   */
25  package JADE_SL.onto;
26  
27  import JADE_SL.abs.AbsObject;
28  
29  /***
30   * @author Giovanni Caire - TILAB
31   */
32  public interface Introspectable {
33  
34      /***
35       * Externalise this object into the given abstract descriptor
36       * @param abs The abstract descriptor this object must externalise 
37       * itself into.
38       * @param onto The reference ontology 
39       * @throws OntologyException If some error occurs during the externalisation
40       */
41      public void externalise(AbsObject abs, Ontology onto) throws OntologyException; 
42  
43      /***
44       * Internalise this object from a given abstract descriptor 
45       * @param abs The abstract descriptor this object must internalise 
46       * itself from
47       * @param onto The reference ontology 
48       * @throws UngroundedException If the abstract descriptor  
49       * contains a variable
50       * @throws OntologyException If some error occurs during the internalisation
51       */
52      public void internalise(AbsObject abs, Ontology onto) throws UngroundedException, OntologyException; 
53  }