FOUNDATION FOR INTELLIGENT PHYSICAL AGENTS

 

 

FIPA Device Ontology Specification

 

 

Document title

FIPA Device Ontology Specification

Document number

XC00091C

Document source

FIPA Gateways TC

Document status

Experimental

Date of this status

2002/05/10

Supersedes

None

Contact

fab@fipa.org

Change history

2002/05/10

Approved for Experimental

 

 

 

 

 

 

 

 

 

 

© 2001 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     Scope. 1

2     Overview. 2

3     Device Ontology. 3

3.1      Object Descriptions. 3

3.1.1      Relationships between Frames. 4

3.1.2      Device Description. 5

3.1.3      Product Info Description. 5

3.1.4      Hardware Description. 6

3.1.5      Connection Type Description. 6

3.1.6      User Interface Description. 7

3.1.7      Screen Description. 7

3.1.8      Resolution Description. 8

3.1.9      Memory Description. 8

3.1.10    Memory Type Description. 8

3.1.11    Software Properties Description. 9

4     References. 10

5     Informative Annex A — Profile of a Hypothetical Smart Phone. 11

5.1      Profile Description. 11

5.1.1      SmartPhone xyz. 12

6     Informative Annex B — Examples. 13

6.1      Content Adaptation I 13

6.2      Content Adaptation II 17

6.3      Content Adaptation III 18

6.4      Service Advertisement and Software Updates. 18

7     Informative Annex C — Usage of FIPA Device Ontology through CC/PP. 19


1         Scope

This document is part of the FIPA specifications and deals with device ontology. This document contains specifications for properties of devices. Additionally, the document provides an example to illustrate the usage of the ontology via a profile of a hypothetical smartphone, an example of using the ontology through CC/PP, and other informative examples.

 


2         Overview

The capabilities of different devices are best expressed using some ontology, against which the profiles of those devices are validated. This document contains specifications for a device ontology.

 

Provided that two devices D1 and D2 have a connection, they may exchange device profiles (either directly or through a brokering agency) and acquire a list of services provided by the other device. The list of services may include both hardware and software services, for example: a software component that provides access to a hardware component of the device (such as microphone, headset or GPS service).  The profile needs to support the identification of services for various input and output capabilities, such as audio input and output. An informative example of a profile for a hypothetical device is given in Annex A.

 

The Fipa-Device ontology can be used by agents when communicating about devices. Agents pass profiles of devices to each other and validate them against the Fipa-Device ontology. The profiles come in handy for example in a situation where memory- or processing-intensive actions take place; agent A1 can ask agent A2 whether device D has enough capabilities to handle some task A1 has in mind. Annex B gives a set of informative examples showing how profiles based on Fipa-Device ontology can be exploited.

 

Related work is done both in W3C [CC/PP] and WAP Forum [UAProf]. There is an overlap between the definitions found in those documents and this specification. However, direct references to those specifications are not used here. That is because, unlike the ontology presented in this specification, they rely on specific frameworks and languages, namely RDF and XML. Annex C gives an informative example on how to use the Fipa-Device ontology via CC/PP descriptions.

 


3         Device Ontology

3.1        Object Descriptions

This section describes a set of frames that represent the classes of objects in the domain of discourse within the framework of the Fipa-Device ontology.

 

The following terms are used to describe the objects of the domain:

 

·         Frame. This is the mandatory name of this entity that must be used to represent each instance of this class.

 

·         Ontology. This is the name of the ontology, whose domain of discourse includes the parameters described in the table.

 

·         Parameter. This is the mandatory name of a parameter of this frame.

 

·         Description. This is a natural language description of the semantics of each parameter.

 

·         Presence. This indicates whether each parameter is mandatory or optional.

 

·         Type. This is the type of the values of the parameter: Integer, Word, String, URL, Term, Set or Sequence.

 

·         Reserved Values. This is a list of FIPA-defined constants that can assume values for this parameter.


3.1.1          Relationships between Frames

Figure 1 depicts the frames used in this ontology with associations among them.

 

Figure 1: Relationships between Frames in the Fipa-Device ontology



3.1.2          Device Description

This type of object represents the description that can be used to define the device with its most general properties.

 

Frame

Ontology

device

Fipa-Device

 

Parameter

Description

Presence

Type

Reserved Values

info

General information for the device.

Mandatory

info-description

 

type

The type(s) of the device. General type(s) of devices like 3G phones, PDA's etc. To be used as a sequence from general to more specific types.

Optional

Sequence of String

 

agent-compliancy

Capability to host a FIPA-agent platform or participate in a distributed one.

Optional

Boolean

true

false

hw-properties

List of properties describing the hardware features of the device in question.

Optional

hw-description

 

sw-properties

List of properties describing the software features of the device in question.

Optional

sw-description

 

 

3.1.3          Product Info Description

This type of object represents the description that can be used to define the name, vendor and version of some product.

 

Frame

Ontology

info-description

Fipa-Device

 

Parameter

Description

Presence[1]

Type

Reserved Values

name

The name of the product in question.

Optional

String

 

vendor

The vendor of the product in question.

Optional

String

 

version

The version of the product in question.

Optional

String

 

 


3.1.4          Hardware Description

This type of object represents the description that can be used to define the hardware capabilities of a given device.

 

Frame

Ontology

hw-description

Fipa-Device

 

Parameter

Description

Presence[2]

Type

Reserved Values

connection

The type of the connection the device uses.

Optional

Set of connection-description

 

ui

List of the user interfaces that the device offers.

Optional

Set of ui-description

 

memory

The amount of memory that the device has.

Optional

Set of memory-description

 

cpu

The type of the central processing unit that the device has.

Optional

Set of String

 

 

3.1.5          Connection Type Description

This type of object represents the description that can be used to define the connection-related details of a given device.

 

Frame

Ontology

connection-description

Fipa-Device

 

Parameter

Description

Presence[3]

Type

Reserved Values

information

General information for the connection.

Optional

info-description

 

qos-information

Detailed information about the Quality of Service of this connection type

Optional

qos[4]

 

 


3.1.6          User Interface Description

This type of object represents the description that can be used to define the user interface(s) of a given device.

 

Frame

Ontology

ui-description

Fipa-Device

 

Parameter

Description

Presence[5]

Type

Reserved Values

screen

Information characterizing the screen of the device.

Optional

screen-description

 

audio-input

Specifies whether the device in question is capable of receiving audio input.

Optional

Boolean

true

false

audio-output

Specifies whether the device in question is capable of producing audio output.

Optional

Boolean

true

false

 

3.1.7          Screen Description

This type of object represents the description that can be used to define the screen of a given device.

 

Frame

Ontology

screen-description

Fipa-Device

 

Parameter

Description

Presence[6]

Type

Reserved Values

width

The width of the screen. This value must be positive.

Optional

Integer

 

height

The height of the screen. This value must be positive.

Optional

Integer

 

unit

The unit for the width and height parameters of this frame.

Optional

String

mm

cm

inch[7]

resolution

The resolution description for the screen.

Optional

Set of resolution-description

 

color

Has the value true if the device has a color screen; false if it has a monochrome screen.

Optional

Boolean

true

false

 


3.1.8          Resolution Description

This type of object represents the description that can be used to define the resolution-details of a given display.

 

Frame

Ontology

resolution-description

Fipa-Device

 

Parameter

Description

Presence[8]

Type

Reserved Values

width

Number of resolution units horizontally. This value must be positive.

Optional

Integer

 

height

Number of resolution units vertically. This value must be positive.

Optional

Integer

 

unit

The unit for the resolution.

Optional

String

pixels

characters

bpp

Bits per pixel.

Optional

Integer

 

graphics

Has the value true if the device is capable of displaying graphics; false if the device is capable of displaying only characters.

Optional

Boolean

true

false

 

3.1.9          Memory Description

This type of object represents the description that can be used to define the maximum memory of a given device, as well as the memory available at the time of query.

 

Frame

Ontology

memory-description

Fipa-Device

 

Parameter

Description

Presence[9]

Type

Reserved Values

available

The amount of memory available.

Optional

memory-type-description

 

maximum

The maximum amount of memory.

Optional

memory-type-description

 

 

3.1.10      Memory Type Description

This type of object represents the description that can be used to define the amount, unit, and usage type of some memory.

 

Frame

Ontology

memory-type-description

Fipa-Device

 

Parameter

Description

Presence[10]

Type

Reserved Values

amount

The amount of memory. This value must not be negative.

Optional

Integer

 

unit

The unit used to express the amount of memory.

Optional