Professional Documents
Culture Documents
as an
and
Agent
Fritzson
Communication
Don McKay Valley County Unisys
Language
and Robin Forge Paoli Corporation PA USA .com com
*
McEntire
Richard
Computer
Science MD
Laboratory
of Maryland Baltimore
Abstract
This the and ARPA oping both support focuses the knowledge paper describes Query and This and which format the and design of and for is part Effort experimentation Language exchanging of which for and a larger is aimed building reusable. agents. which use and and agent the the used through to engineering, scheduling. evolving support models for called with (KQML), information effort, the
G G
and wit h.
servers,
depending
on
who
they
are
interacting
forms
need data
e.g. imple-
Manipulation
platforms, technologies
formats,
capabil-
a new
protocol work
of different ation
services,
Sharing
at devellarge-scale KQML protocol KQML defines comprise of inknowlcommof of is to software technologies appfied natur~ language processing, knowledgebased reasoning, advanced information retrieval, speech processing, ment. for building A community etc. have matured there to the point of being type and servers ready to participate However, constructing in and contribute is a lack software agents When their to an to an NII of tools and in general. can abtilt to and local y address to: each these of the agents lancomplex informahandle and clients environor for
knowledge speech acts to such provides which which being which areas are
an extensible on which
permissible
techniques
a substrate teragent In addition, sharing agents are edge other KQML prototype testbeds design and
intelligent
negotiation.
agent-based of we other on their peer Query that together to intelligent above. refer using own agents. and agents.
a special
unication
mentioned
we describe
ideas
communicate
currently
expressive
communication accomplish use local resources Language interactions by It has the 27] and
several intelligent
as concurrent planning
knowledge from
Knowledge
1
The
Introduction
computational as the dynamic, nodes. An must environment National by being and highly which is emerging Infrastructure a large system emerging on the services critical will
part
is a language intelligent in such (NII) of auin such supported implemented cessfully using used different
is designed Sharing
software Knowledge by
developed groups.
several
research architectures.
is characterized
distributed,
to implement software
of information
information handle
an environment
G
The
The tium is to ing and
Knowledge
ARPA to develop
Sharing
conventions and enable functional The KSE and
Effort
Effort sting based to than (KSE) sharing systems. and build could much four is a consorand Its reuse goal facilit test
The
Sharing knowledge
restrictive.
is difficult
material to act
Air USAF
a users clients
of Sci-
infrastructure
want
by under the
Force and
broadly alone.
be achieved
Research
under
F49620-92-J-0174, by Rome
Advanced F30602-
around
monitored
contracts
F30602-93-C-0028
Laboratory,
each in
a complementary representation External a common describing [15] which both to support includes Inter-faces.
Permission to copy without fee all or part of this material is granted provided that the copies are not made or distributed for direct commercial advantage, the ACM copyright notice and the title of the publication and its date appear, and notice is given that copying is by permission of the Association of Computing Machinerv. To corw otherwise, or to republish, requires a fee arrcilor spbcific p9rrnksion. CIKM 94- 11/94 Gaitherburg MD USA O 1994 ACM 0-89791 -674-3/94/001 1..$3.50
Intertingua
content Formalism
of a knowledge-base,
and
definitions.
456
of a syntax semantics. one content language took . I(RSS is families in the The and
for the language KIF between languages. is available can be used agents from language two
as well
B A
to another Information
representation /kse/kif/ Specification) within finished tations information The able edge
//WWH. cs. nmbc, eduSystem constructs has recently represenand other //wwH. Bases) of sharknowldea is availThere Figure ported
Group
x A T
reply
AZD
focussed
1: Several in KQML.
basic
communication
protocols
are
sup-
This .
Agent
protocols. sends waits Figure shown complete for the example tional that a
Communication
are a variety In the to of simplest, another
Protocols
interprocess one agent might C, the which one when which Although some agents. internal involving agent acting between consist In servers allows at a client produces this state, information acts as a server agents A of a single common reply the is not client exchange and then B in case, the to ask a relaof requires individual comcase and an and and as a client
group
is available Reusable
cs. umbc. edu/kse/krss/ Group with bases, topic and is concerned knowledge for particular tools for the scope in
facilitating areas
consensus and
crests It and
cs.
shared
a reply,
answer
velopment repository able over The time been two modules eiven
or a collection answer
another
tools
reply,
a time.
External
Interfaces based
is the
runhas
interactions
between
knowledge environment.
or a reasoner
a run-time
attention
instantiations the server transactions munication occurs indefinite intervals, does may not when
exchange the
to two imDortant systems system [26]. have which KSE. and The General
cases - communication and KQML out communication language of the is a conventional database is one available external
are
A somewhat to a servers replies message other task hosts, arriving and, are replying of these D in Figure will when but arrive
come
interfaces
information
cs .umbc .edu/kqml.
Information
difficulties in In
integration
of communication
variations The
protocols.
Messages broadcast
might
specific
the
asynchronously
a common
linguistic syntax, AI
a common
Facilitators
One guage number is on describe ments tor of agents services, warding on content, providers tion like have about As to services. of the that
and Mediators
design could Our criteria support approach performatives specifying and performs to named and consider truth then for KQML variety this which the to was to produce a lanagent a small to requireclaas A facilitanames, information and translaA would B may F is a query protocol may of agent forbaaed a wide of interesting are used information [16].
is to introduce
such
extended
of KQML
by agents
[22]
have that
meta-data
a strong
communication maintaining
necessary languages
to say that
agents
each or use
is an agent e.g.
representation
language language, it
of service between
are inter-translatable. a common communicating in order to are domains among with and with to be a shared or translatable agents interpret semantics, one euch shared development as planning processes to find (and them an exchange. a set of protocols connecting programs. to but is still share a framework exchange. ontology. but many many. impor-
messages and
Assuming necessary of knowledge This There Shared tant biology ing how cerned mantics). computer changing who is not is not application and Pragmatic
providing clients,
matchmaking
message
they
really likely
a shared in
of a sentence that
ontologies
under
knowledge-base,
it is appropriate to B, as in Figure
medicine. computer and how maintain pragmatic and in identifying, with other
X to B, then aware
2. If, however, or which can the it those subscribe for believes the X
to talk primarily
A is not
to initiate
knowledge-bases, example
to contact uses
secondarily
it is aware,
of approaches
be used.
performative to be true,
F monitor F that
B subsequently
4.57
broker(ask(X))
advertise(ask(X))
n
Figure ateness protocol 2: of When querying be used. can A Figure to find an 4 shows agent matching B the 5, A ative that B independently formatives sages, to A. In inform cruit That ating used was which be learns replies initiate From functions consider is willing Figure perform agents agent. in what it sends F of its interest to receive response Alt bough 3 and would example, F to to with (ask-all(X)).
o
I
performative another and to agent receive is used which and to can ask the a facila reply.
I
9 tell(X) Figure itator is aware of X, B and of the approprigiven 4: The agent
broker to find
process
performative
forward
B about
a simple
point-to-point convention, machine with to the the listening Scaling require Internet yet ternet symbolic can the used which robust a facilitator the standard agent KQML of for new should address port. information techniques. (DNS) use can agent will symbolic enterprise The a very names be used references be involved for such organizing scheme an agent will simple, into inthat is to map current be running facilitator. on domain a host and symbolic
different process an it
A accept
asks
up to a national-scale incorporation Name technique agent Domain Servers mapping into the
is willing F has
Similar
names
process the
information
hierarchical
difference
at or- agent-server.
Figures
a simple
embedded exchange
The
As and should agents,
role of KQML
a communication KQML distributed be useful respect provides agent easily draws AI to language on and both. software system range today, systems, servers, can bases beliefs) of use systems (KBS). including HTML usually one and in general, The KBS used softetc), as the represtanand model. or relainaproLinda, and of a process as an informacommonly work offers for in intelligent both distributed of abstraction information systems that
it would Once
a level
B is willing with
performatives,
to distributed an abstraction
a dialog these
examples,
of the
as a knowledge-based subsumes agent finger etc. virtueJ models demons, Such store (i.e., and built-in of a simple query) agents and standard layer, As and with servers. systems, a broad in mail systems (i.e., goals). very hypertext
of facilitator
is to
information management ware having agents senting dards protocols This models tional truly tions tocols HTTP, formation have will (e.g. two simulations,
database servers,
appropriate clients and servers. The problem of how agents find facilitators in the first place is not strictly an issue for KQML simple was In tact KQML module registered the router removing and has a variety In a central, initialized applications facilitator each itself another When the of possibIe applications PACT when [5], agent to the KQML from common solutions. have project facilitator the of agents and the up, the used [7], for one of two example, location launched. conof it exits, By the is router Current all agents the KQML-based used
server-oriented be modeled representing the that and other future rich call
techniques.
knowledge
information its intentions for interchange will avoid (e.g., database intelligent clients used as a transport and CORBA.
We hope powerful
languages of more
on this
so that
database.
application database.
message
facilitator,
KQML
subscribe(ask(X)) 0
recruit
(tell(X))
advert
ise(ask(X))
I
Figure for that and 3: Agent changes deal in requirements
I
ask facilitator the agent Facilitators information and offer and such F to are monitor agents services services Figure cilitator embedded returned 5: The agent directly recruit to find to performative an the appropriate can original agent. is used agent to to Any ask which reply a faan is
A can knowledge
in its
as forwarding, routing.
brokering,
content-based
performative
be forwarded,
458
advertise(ask(X)) o
I
performative with for the sending is used name a particular to ask perFigure ing how can 7: Some to thus facilitator other act agents agents will specialize other in knowthings) a
of another
formative.
contact
(among
new
that
KQML
imAI that
and
as b<agent-servers~v.
plement research intelligent as well fords our have tool greater of the
to them, receiving of the cent ent: type make though forms a topic it
such
as the
names a unique
and
addresses There
of the identifier,
sendand
and
message
among
agents. the
inafall
features of the some naming tures analyze, even vary, The the
language
which
dependence
ontology
which agent
In designing currently
of more
as a descriptor environments
in the then
If we enable
to be a good
based KQML
on their
widely,
is inaccessible. of the message used which they appear version in an outer from and the For fields core one to act syntax example, use mechanism to carry aa fields of KQML, wrapother conin the
collaboration
researchers,
parts transport In
The
KQML
Language
takes is only and in place engage with a way on several of the which the levels. The content Beyou Packin
streams Communication of the ing want aging able to message to locate communicate message clear KQML, using in the these per fields. tent E-mail agent content transmits choice, written (e.g. message and notations All of the KQM where can content wrapped be exIt in either network except begins to and in KQML The of its own a part communication. of someone process. your purpose of the makes
message.
kept
attention
difference
is a part
transport
mechanisms be different. these the of KQML, forms The the The speech reply
your
of these
communicating When messages, inside pressed ASCII tations the ends. The list. the ple, the Lisp, strate other tations are facditators. KQML. rent emerging The allowing They KQML The syntax initial
implementation mail
are embedded language. have of the to the or that any is, with per-
composed in any
of the can
L message. representation
determines
language binary
a KQML-speaking formatives the message is an would will attaches content mutually sender protocol tive, which ceiver. the price its
independent extent
L implemenit
message
a query,
be followed. a KQML arguments and the a set content of IBM message which of optional and stock perhaps representing might of a performathe real content transport and as: reabout
performatives
keyword/value if necessary
be changed
arguments sender
the turned
example,
a message
a query
to be quite for
of a share
be encoded
(PRICE
IBM
?price)
custom on
environments helper
stock-server LPROLCIG NYSE-TICKS ) performative the ontology nyse-ticks, called standard is ask-one, assumed by the receiver OG. and as the the the the con-
evolve
frameworks, supports
as O MGs widely
In this message, the KQML content is (price :bm ?price), query query query is identified is to is written could by the token message be a server
become to carry
more
of the
implementations information
identified using
in a language
A similar
be conveyed
459
tent as:
language
in a form
that
requests
the
set of all
answers
Basic
G
query
evaluate,
performatives:
ask-if, query stream-all, ask-in, ask-one, ask-all, . . .
Multi-response
performatives: . . .
(ask-all :content :receiver :language :ontology The for a large be sent changing repeat first price(IBM, stock-server standard.prolog NYSE-TICKS) message asks for If instead are the we a single had would (To same posed could reply; ask large above the that we will second which they collection examples. asks had each by [?price, ?time])
stream-in,
Response
G
reply,
Generic
G
tell,
achieve,
a set
as a reply.
a query
Generator
G
of replies, performative.
standby,
no longer )
Capability-definition
G
performatives: subscribe, performatives: unregister, forward, broadcast, route, ., monitor, import, export, . . .
which
advertise,
Networking
is
a large (PRICE
set ?VL
of
symbols
register,
?price)) asks To that exert a set control of answers of this set around Some such of the tell, such to the which be used have reserved deny, performatives communication and more KQML aspects delete, are shown in Figure 8. In addition to standard as subscribe, non-protocol allows to For earlier performatives protocol contains of pragmatic, what and for in the to handle; agents the server oriented performasuch kinds recruit above be of Figure tive 8: There names which are about into two seven dozen basic reserved categories. performa-
faII
messages preceding
another
performative
message. (stream-all :content (PRICE expects the and agent hold them agent The the or either now). stream a discard a rest This ?VL a KQML the and ?price))) language request them next/reply or until (i.e. send disall contake one
(standby :content
as ask, related
to announce
standbgperformative it requests each nest can time continue agent sends replies) replies that the of messages
messages
receiving
particular
release of
messages.
at a time, messages
sending until
a message
announced:
performative.
exchange
(advertise :ontology :language :content NYSE-TIGKS LPROLOG (monitor :content Which is roughly and the inviting advertise monitor equivalent monitor message. is what (PRICE to announcing requests justifies the ?X ?Y))) that it is a stock stock prices. send-
remaining can
message combination
remaining
is so useful
be abbreviated:
(generate :content A different t ained (from set (PRICE ?VL ?price))) to the with same the query can be ob-
concerning
message
subscribers
KQML
Software
Architectures
(subscribe :content (stream-all :content requests i.e. trading price (PRICE IBM ?price))) changes stock to the which is known anare An a KQML particular resent This swer to generated abbreviation monitor. (monitor :content Though tives, one nity they it A KQML or two) of agents agree there agent performative the query, as the for all future of IBM cerned tems. in the cerned CAD/CAM it is a stream of messages combination was not defined by a single research group for a project. It was created by a committee of repfrom different projects, all of which of expert Another distribution was the were conwith One with planning managing and distributed scheduling decomposition A common implementations domain. and concern of syssystems was conin the manage-
atives
collaboration
changes.
subscribe/stream
ment of a collection of cooperating processes and the simplification of the programming requirements for implementing (PRICE IBM ?price))) set required to The handle of reserved set only nor a few performaa closed one. (perhaps a commuif associchooses implea system common is a predefine a minimal may choose does eral not Our written teroperable these grate of this dictate group and type. However, the system evolved. of in together, by the systems KQML. The need into One design to a collabinvolved oriented is inof intethe other used motivated expert C. Both are fully groups As did not share KQML and seva communication systems has two have Lisp, was architecture. a result,
a particular
architecture,
is neither
different
implementations
performatives
interpretation
However, standard
one of the
must
orating group of processes. Most of the systems were never designed to opsrate in a communication
460
to handle their traffic and deal exclusively in routers KQML messages. There is typically one facilitator for each local group of agents. This can translate into one facilitator
KQML per local facilitators starts up, site or one per provide router the project; redundancy. announces router way to be sends the itself there may When to the be multiple each locaf local
to
its exits,
~-~L
,,
Function Calls an application both interactions to the agent to and and points tagging which routing, procedures client simultaneous a single connections, autonomously. application the router messages and for outgoing and interface and The prodelivfor provides commu-
so the
that it is registered in the local database. When the apanother KQML from can maintained find facilitator, database. there removing In this having application a hand
z~
Figure to the ities, handling KRIL vides ers 9: A network, managing
Network connections
applications
router
services.
andservercapabil-
KQML
Since the
KRILs
router is a separate to have and the is called the of the process from the application, between the a programming interface
interface
it is necessary application face (API) brary). KRIL to the each derstanding API is only
incoming
analyzes
router. This application program intera KRIL (KQML Router Interface Lirouter content in for tools is a separate field the of the process, KQML the which KRILs, and with has no unthe While for each access message, content. one
interface
While
application code,
applications process,
analyzing
environment.
grams, routines,
a
The
design
is
built
around and
two
specialized
pro-
there for
of router can
is instantiated language. The to the router as embedded implementation language which in lan-
router called
and
a facilitator,
a library
of interface
be various
a KRIL.
application type and one for each application general goal of the KRIL is to make access simple as possible this end, for the programmer. can the be as tightly applications for the the Prolog for TO the guage, had the would cates mulate the itself ing recovered on a KRIL or even
KQM L Routers
Routers KQML separate
are
router
message is associated
Each own
speaking
programming
as is desirable.
an early
an executing
program.
router handles
process,
all
not
KQML
to
and
its
associated to each
the
programmer. whenever the agent; and they KRIL prediforreturn were gowere in the gena This about and retransa reply was sent. is usuthe should KRILs to acaccording routed KRILs aflows desired
has an associated extensive to for and allow the server it agent for the to
router
programs receive The the network. application with other router agent It
searched
organization
intercept
of independent
appropriate
of contact
functions
from except
program
contained
no mention
simultaneous
connections
router never looks at the content fields of the mesperformatives and sages it handles. It relies on the KQML
its arguments. Internet message to find message If the attempt the If an outgoing the KQML router address message a particular message directs service, for that only specifies the message the router and a dea
to be treated It is not applications erally accepts the turns mission For ally provides transaction message either
necessary two
programming there
language.
is a send-kqml-message as much as can reply process (if the function. to declare arrive. messages or other functions. programming which Depending can features, its destination
service
If the
provides
scription of the content (e.g. query, :ontology geo-domsinS, :language Prolog, etc.) the router may attempt to find a server which can deal with the message and it will deliver it there, or it may choose to forward it to a smarter communication agent which may be willing to route it. Routers can be implemented with they can not guarantee varying to deliver degrees of sophktication
remote
is received) handling
signifying
asynchronous
messages,
all messages.
on the and
be sorted
KQ M L Facilitators
To deliver rely on messages facilitators. that A
are
incompletely is
addressed, a network
routers
interfaces,
facilitator
application
which provides useful network services. It maintains a registry of service names; it will forward messages on request It may provide matchmaking services to named services. between are actual information network providers software and agents consumers. which have Facilitators their own
which alIow them to regfacilitators and contact rethey has are interested Lisp, C, in rea vaProlog, implemented
advise
group for
riet y of experiment
af KRILs,
Common
461
5
The have tems. sign itary ible
Experience
KQML been The and
with
KQML
and implementations prototype have of hardware logistics ranged and planning integration and retrieval. the and and from software and of the demonstration concurrent systems, information and cooperative has and the eftechand enterincluded the as well exfuncKQML interoperability information infrastructure areas and used and have the virtual including Knowledge [21] The and Early scheduling, protocol sysdemilflex-
database. This
A LIM
server was
front-ends
each
different
database.
several
run over the internet involving geographically dispersed sites. Agent-Base Software Integration [18] is an effort
experiment way KQML, phisticated based The used ware view facilitator to process supporting have also at Stanford a federated facilitator of software in this and University for architecture is developed integration architecture reason tighter successfully integrating which Mediators In another for with sources URL within were are not the such World retrieving just about which general applying software incorporating which and is the supports interoperation an intelligent of of in clients from distributed The links easily static lends to with disparate other (in content KQM systems. L framework
three,
underas an Using so[16]. agent KQML softsmaller C) with dawith nature itself to a
engineering for
integrating
transportation architectures agent-based access to significantly of large-scale underway as the health intended Interchange more CORBA, integration. such
a highly
large-scale software
heterogeneous
an agent-
systems, information potential tionahty forts nology OMGS commerce, prise languages Knowledge now
planning
enhance integration
capabilities and
in communication national as well The for information content Format knowledge information as in
systems.
electronic
demonstrations
distributed
database
exchange (KRSL)
we experimented
Representation as other perimentations is a representative developed The tems, both, plines. concurrent tinual ket ability, engineering be distributed KQML tools supporting aries. and across these on what accomplish communicate We Rome military SIPE edge (in have Lab in several supported [30, base Common using design whether today Many
Specification traditional with KQML selection KQML. and engineering multiple systems which
as SQL.
extended
virtual
arbitrary KQML.
1990.
following
as can be supported
experiments 6
Conclusion
paper has described by which share the future. design of KQML and new structures Should of reserved directory any of feedback to use standards are CORBA these KQML protocols, can being has continued is received them for in real sharing and widely its key for support need these to evolve from the testbed persistent and Microsofts used, ideas for new it the will as the ideas prototypes situations. objectOLE be of collecpromulgated, or something distributed information very KQML and much - a language agents it, wiU knowledge. like and can We information associated communithat in
hardware
or software
intelligent
software
developed
believe
be important
consideration
constraints,
agent-oriented
systems
design, bound-
are also likely integration interactions infrastructure communication use of KQML to tools the
explored
attempts
of diverse reducing
developed
specification become so that the the enhance on KQML, to APIs, and be obtained
performatives,
appropriately KQML
reemphasized communication experiments One and linking (in a case of these scheduling
an information
language in the ARPA for (in tool were in agent SIMS acprothe sea a experiments system agent
specifications, cs
world from
.umbc. edu/kqml/
via ftp
Common
a knowl-
edu in pub/kqml/.
components designed
preexisting cooperative consisting cess, cesses query mantics single edge eral and
systems which were not distributed environment. experiment, COBASE [26], into and, [6], mediator an information knowledge if no approximation the query query for responses again. of LIM data
References
In a second
[1] Yigal
edge
Arens.
Planning
and
reformulating
queries
for
semantically-modeled mult id at abase s yst ems. In First International Conference ofi Information and I{nowlJfanagernent, Arens, A. mediator. Workshop, Chin In October Chee, 1992. Chun-Nan processing of the and Hsu, in Hoh In, and Lab Initia-
COBASE
[2] Yigal
Craig tion 1994 tive
Knoblock.
Query Proceedings
an informa-
upon
ARPA/Rome Scheduling
executes
Knowledge-Based February
Planning 1994.
to access, knowledge
query this
[3] External
Sharing http: cember
Interfaces Initiative.
Working Specification
Group Working
ARPA paper.
queries
of the
KQML
a LIM
answers
language.
creating
a relational
cs .umbc. edu/kqml/papers/kqml-spec.
462
[4] Marie
imone. planning.
Bienkowski, SO CAP: In
desJardins, for
and
Desaction 1994
[17]
Mike IEEE
In and
Proceedings Automation,
of the pages
Proceedings
of the ARPA/Rome
Initiative
approach February
interoperability.
Technical Stanford
Report
Logic-91-6,
[5] Mark
Lab Inc., Initiative
Burstein, 199.4
editor.
University,
Cobase: Lab
query ProceedFebru-
[20] Yannis
for on ber
semantics
system and
database Initiative
- a general
ARPA/Rome Scheduling
Knowledge-Based Workshop,
Information 1994.
Available
papers/kqml-semant E. and Engelmore, W. Mark. January R. Fikes, An T. Gruber, IEEE PACT: 1993. for knowledgein COL experiment
ics, The
pa. representation report, 1994. Bates. Also 21-23, T. and Gruber. pact. The LOOM Report in ProWorkshop ISX specificaCorpora-
[7] M.
M.
[21] Nancy
tion tion,
in integrating Computer,
concurrent
engineering
systems.
manual. Oaks,
28-38,
al. Shade: In 1993. al.
[8] D.
Kuokka
Technology Workshop
[22] Robert
knowledge
MacGregor
and USC/ISI,
based
AAAI
on AI
laborative
[9] J. McGuire
based Engineering: September
Shade:
for
knowledge1(2),
engineering.
of Concurrent
(CERA),
[23] M. Tenenbaum,
integration: editor, 1993. Enterprise
Applications
Lessons
from
Integration
Modeling.
[10] William
design Applications [11] Tim level for [12] Tim telligent tional & http: [13] Tim
Cosmos:
for
negotiation.
[24] R.
T. for
R. and
Fikes, W. sharing.
T. AI
Finin,
T.
Gruber,
R.
Patil, Fall
Swartout.
Enabling
technology
McKay. intelligent
Magazine,
12(3):36-56,
1991.
interoperability.
Technologies
[25] Jeff
gent A
Y-C agent
Pan
and
Jay for
M.
Tenenbaum. and on
An
Transactions December
knowledge
query agent
language
inNaCE as
[26]
Jon First
Pastor,
and
Symposium
Engineering,
concepts: Knowledge
access October
CALS
//wnJ. Finin,
Conference,
International
Information
cs .umbc. edu/kqml/papers/cecals. Don KQML: protocol. and Sharing December in and McKay, an In Rich Fritzson, and
[27] R.
T. ples ber
Patil, Finin,
McEntire. exchange Building edge per (Ed.), ing, http: [14] Tim will Bases,
information
knowledge
and
International Conference on of Very Large-Scale Knowl1993. A Fuchi and Press, version and 1994. of Toshio Available .ps. Yesha, editors. this paYokoi Sharas
knowledge ceedings
of Knowledge
Conference,
1992.
Available
Knowledge
papers/kr92.
//uuv. Finin,
cs. umbc. edu/kqml/papers/kbks Charles and Nicholas, Knowledge and Lecture 1993. Yelena Notes (ISBN
[28] R.
T.
P. effort:
Patel-Schneider, R. Neches. report. editors, Reasoning: (KR Kaufmann. and Stefano Progress and
D. The
Gruber, W.
and Swartout,
sharing
Management,
of Database. Springer-Verlag,
0).
[15] M. Genesereth format, Computer and R. Fikes et. al. Knowledge manual. Stanford interTechnicaJ Unichange report, version 3.0 reference Department,
92),
[29] Gio
ward
Ceri.
To-
megaprogramming.
Communications
of the A CM,
Science
33(11):8999,
versit y, 1992.
[30]
[16] Michael ware 147, R. Genesereth and Steven P. Katchpel. Softagents. 1994. Communications of the ACM, 37(7):4853,
David
Wilkins.
Extending Kaufmann
the
ClasPub-
sical lishers,
AI
Planning Inc.,
Paradigm.
463