Servicio de ontología FIPA

Las especificaciones de FIPA también incluyen la Ontology Service Specification. La especificación del servicio de ontología de FIPA no es obligatoria de implementar en una plataforma conforme con FIPA y todavía se encuentra en estado "experimental". Propone que haya disponible un agente de ontología (OA) en una plataforma de agentes FIPA para servicios relacionados con ontologías. El rol de este agente es proporcionar algunos o todos los siguientes servicios:

  • descubrimiento de ontologías públicas para poder acceder a ellas
  • ayuda en la selección de una ontología compartida para la comunicación
  • mantener (por ejemplo, registrar en el DF, cargar, descargar o modificar) un conjunto de ontologías públicas
  • traducir expresiones entre diferentes ontologías y/o diferentes lenguajes de contenido
  • responder consultas sobre relaciones entre términos o entre ontologías
  • facilitar la identificación de una ontología compartida para la comunicación entre dos agentes

No es obligatorio que un agente de ontología proporcione todos estos servicios, pero todo OA debe ser capaz de participar en una comunicación sobre estas tareas utilizando una ontología de servicio de ontología definida. Tampoco es obligatorio que toda plataforma de agentes deba contener un agente de ontología, pero cuando un agente de ontología está presente, debe ser conforme con las especificaciones de FIPA.

Ejemplos de escenarios de uso de servicios particulares del OA son:

  • Consultar al OA por definiciones de términos
    Un agente de interfaz de usuario A quiere recibir imágenes del agente archivador de imágenes B para mostrarlas a un usuario. Le pide al agente B "citrus". Sin embargo, el agente B descubre que no tiene ninguna imagen con esa descripción. Entonces consulta al OA apropiado para obtener subespecies de "citrus" dentro de la ontología dada. El OA responde a B que "orange" y "lemon" son subespecies de "citrus", de modo que el agente B puede enviar imágenes con esas descripciones al agente A y satisfacer así sus requisitos.
  • Encontrar una ontología equivalente
    Un diseñador de ontologías declara la ontología "car-product" al agente de ontología OA2 en EE. UU. con términos en inglés y traduce la misma ontología al francés para el agente de ontología OA1 en Francia. El agente A2 utiliza la ontología de OA2 y quiere comunicarse con el agente A1 sobre automóviles en la ontología mantenida por OA2. Como el agente A1 no conoce la ontología del agente A2, consulta a OA1 por una ontología equivalente a la usada por A2 (y mantenida por OA2; nótese que existe un esquema de nombres de ontologías que permite identificar estas ontologías; por ejemplo, la ontología inglesa de automóviles del agente OA2 puede llamarse OA2@http://makers.ford.com/car-product). OA1 devuelve su ontología francesa sobre automóviles y así A1 puede informar a A2 que estas dos ontologías son equivalentes y que OA1 puede usarse como traductor. Después de eso, puede comenzar un diálogo entre A1 y A2.
  • Traducciones de términos
    Un agente A1 quiere traducir un término dado desde una ontología #1 al término correspondiente en una ontología #2 (por ejemplo, el concepto "the name of a part" puede llamarse name en la ontología #1 y nomenclature en la ontología #2). A1 consulta al DF por un OA que soporte la traducción entre estas ontologías. El DF devuelve el nombre de un OA que conoce el formato de estas ontologías (por ejemplo XML) y tiene capacidades para realizar traducciones entre ellas. A1 puede entonces consultar a este OA y solicitar la traducción de un término de la ontología #1 a la ontología #2.