Domain-based Service Directory
and
Bit-stream Content Handling Interface
for
FIPA CFP 5.4.2: Attachment
to external software, application and services
January 1997, Torino, Italy
Yeun-Bae Kim and Masahiro Shibata
{kimyb,
shibata}@strl.nhk.or.jp
NHK Science and Technical Research Laboratories
Program Production Technology Research Division
1-10-11 Kinuta, Setagaya-ku,
Tokyo 157 Japan
I INTRODUCTION
As the title indicates, this proposal is
concerned with providing the necessary information and interfaces
so an agent can successfully attach to external services (i.e.
FIPA CFP 5.4.2). Figure 1 shows a possible attachment procedure
of an agent to an external service through the following three
phases: (1) the agent must locate a wanted service(s), then (2)
establish a connection to the service via the connection
protocol, and (3) interact with the service to achieve what it
intended to.
Figure 1 Three
phase attachment procedure to an external service
Here, we propose (1) a service directory
information representation scheme to facilitate agents to locate
wanted services and (2) an interface to allow the agents to
handle a bit-stream data which is a crucial component for the
external attachment. We will not touch on connection protocols in
this proposal because they also involve network provision and
management.
II DOMAIN-BASED SERVICE DIRECTORY
Locating and identifying a desired external service by an agent is one of the most important aspects of the attachment. Without any kind of service information that gives direct or indirect clues for the locations and access methods of services (e.g. such as a telephone directory) an agent has no other choices but to try all available services in its external environment to find a suitable one. In such a case, the agent must have a powerful service identification mechanism with a self-guided search strategy.
Taking account of FIPA applications for
1997, we propose a domain-based service directory tree (SDT)
which assists an agent in identifying wanted services. The SDT is
a hierarchy relation between entities (e.g. concepts or
categories) represented in a DAG (directed acyclic graph)
structure as shown in Figure 2. In the example in the figure, the
intermediate nodes represent a class hierarchy in which the leave
nodes carry service access information such as locations,
connection protocols, interface types, and other information.
Figure 2
Domain-based Service Directory Tree
We chose DAG due to its simple structure because there are well established search algorithms and it can easily be converted into other data structures if necessary. In addition to this, the DAG structure is adopted in CORBA (common object request broker architecture) and RM-ODP (reference model of open distributed processing) for their name services. It is extremely difficult to design a generic ontology for service information. We, thus, propose to define service directories for the first four domains of application required for 1997. The definition process involves (a) selection of a set of lexicons and their semantics for each domain and (b) mapping of the lexicons onto nodes of an appropriate hierarchical relation.
We understand that such a static structure
of SDT lacks the flexibility of providing different
interpretations (i.e. relations) of the nodes seen from several different
viewpoints. In order to make SDT more flexible and
view-sensitive, a context-dependent layer (CDL) can be added to
each node as shown in Figure 3. The CDL of each node consists of
"n" windows, in which each window contains a context ID
(e.g. C1, C2, ..., Cn), and a connection pair (i.e. a parent node
and a set of daughter nodes). With CDL, therefore, the same node
can be dynamically shared by different SDTs (i.e. a sort of
semantic network). Figure 2 shows an example of SDT seen from a
window with context ID called "domain", for instance.
Figure 3 A node
with context-dependent layer
Once SDTs are defined, it is the service
providers' responsibility to make their services available to the
agents registering the service access information at the leave
nodes of the appropriate domain SDT. It is also possible to
register a certain service on several different leaves of a
single or multiple SDTs of different domains. Service access
information (lexicon, semantics and access information)
registered in SDT can easily be implemented in CORBA or RM-ODP standards
to allow agents to invoke services offered by applications
running on any machine in a heterogeneous distributed
environment.
III BIT-STREAM CONTENT HANDLING INTERFACE
We propose an interface for an agent to handle a bit-stream with meta-information embedded in it. Here, the word bit-stream means any types of data and information that are encoded in zeros and ones and transmitted in a linearly continuous fashion for a defined time period. Bit-streams, thus, include for instance data read from a CD-ROM, any type of digital broadcast signals, and messages exchanged between an agent and external services. Figure 4 shows an outline of the proposed bit-stream content handling interface (BCHI) that allows an agent to attach itself to various types of external bit-stream sources which include DSM (digital storage media), STUs (set-top units), tuners, etc.
A minimum set of commands for BCHI, which
is built on DSM-CC (U-U) (digital storage media-command &
control user-user) is proposed as the core component of BCHI.
DSM-CC is originally specified by ISO/IEC JTC1/SC29/WG11 as the
standard protocol for communication among digital video servers
and clients. DSM-CC is currently adopted by the DAVIC (Digital
Audio-Visual Council) as part of definition of the emerging
digital audio and video infrastructure. DSM-CC's current
capabilities with an appropriate extension (which is deemed out
of FIPA's scope) can be used as primitives to build higher functionalities
required for a BCHI.
Figure 4 Outline of
proposed bit-stream content handling interface
BCHI commands are provided to perform very basic operations such as bit-stream content access and bit-stream transportation. Parameters and return values of commands necessary for the implementation of the method of interaction can be defined by using OMG-IDL (object management group-interface definition language).
The following commands are responsible for letting an agent access a bit-stream's meta-information, such as content-description index, EPG (electronic program guide) and others, regardless of their formats (e.g. European Telecommunication Standard or Advanced Television Systems Committee Standard). The following commands issued by an agent to a bit-stream content handler (BSCH) are interpreted into DSM-CC primitives.
Figure 5 shows an example of how an agent
can interact with a bit-stream content handler issuing BCHI
commands to obtain necessary information to filter incoming
broadcast programs - a capability required for one of the FIPA
exemplar applications made possible by the '97 specification (6.4
Audio/Visual entertainment and Broadcasting of CFP).
Figure 5 An example
interaction between an agent and BSCH via BCHI
Attachment to other types of services such as databases or other legacy softwares will obviously require different types of interfaces. Although we do not mention an interaction method with other services in the proposal, an interface similar to BCHI consisting of high-level commands written in OMG-IDL and a handler can possibly be formulated for the interaction with the database systems.