|
Obje™ Meta-interfaces
The Obje™ software
architecture uses several generic meta-interfaces
to reduce the number of agreements that must be
made between
communicating entities. All Obje-enabled
devices or services, which are called “components,” implement
and make use of one or more of the following meta-interfaces.
Devices use The Obje interoperability platform's four meta-interfaces
to communicate and exchange data.
 |
Aggregation/Discovery
One of the basic interfaces
allows a component to represent a collection of
other components. For example, a file system component
is an aggregation of the components that are its
directories and files. The aggregation interface
is also used for discovery, i.e., to find other
components on the network. Obje discovery
components can “wrap” the
discovery mechanisms of other standards such as
Jini or Bluetooth,
thus unifying them.
Once discovered, another basic
agreement is how to negotiate a connection. The
discovery component includes the ability for third
party Obje components to serve as
bridges. This means that two devices
can
interoperate
without
direct physical connectivity if they can find a
device with connectivity to both or a chain of
devices that can connect them.
Data transfer
The Obje platform's basic view of interoperation is
(1) send data, (2) do
something
to data, and (3) sometimes, return a result. It
allows data transfer between components to occur
in ways that are not only independent of the underlying
wire protocol, but also independent of the format
of the data being transferred.
In the Obje platform,
components that are capable of sending data provide "custom
objects" that extend the behavior of potential
receivers in specific ways. While the Obje platform defines
the interface common to all custom objects, the
implementations of these objects can leverage mobile
code to provide dynamic, runtime extensibility
to new wire protocols and data formats.
User Interface/Control
Critical to successful interoperation
is that the "something" that is done
to the data depends on what component it is sent
to. The control meta-interface allows the user
to provide application semantics by directing the
interoperation.
Instead of having different
agreements for showing a picture on a display or
printing a page on a printer, the Obje platform needs
only the data transfer agreement. The user making
the connection provides the semantics by sending
the data, and adds additional information such
as size of print or number of copies. This is key
to allowing end-user assembly of solutions.
Metadata/Context
The final Obje component
interface returns a custom object that provides
contextual metadata about a component. The context
custom object returned by this interface provides
access to a set of attributes describing the component
that returns it: name, location, administrative
domain, and so on. The goal of this interface is
primarily to allow sense making by users, and secondarily
to allow programs to use metadata in their interactions.
Expressing functionality in
terms of these meta-interfaces allows entities
to use new components that appear in their environment
without explicit rewriting, updates, or installation
of drivers.
|
 |
| BUSINESS
CONTACT |
Mark Grandcolas
Director of Business Development, Computing Science Laboratory
650-812-4429 |
 |
|