Negotiation Instead of Legislation

John F. Sowa

Abstract.  For years, the Holy Grail of IT has been a magical solution to the problem of making incompatible systems interoperable. The most common approach is to legislate some new kind of language, framework, schema, vocabulary, terminology, nomenclature, ontology, or metadata. Whatever it is called, the legislators promise that it will somehow convert the knowledge cacophony of the World Wide Web into a knowledge symphony.

Yet for any given task, people manage to work together without reorganizing the totality of all the knowledge soup in their heads. Instead of legislation, they use negotiation to make the minimal adjustments needed to get the job done. To make negotiation possible among computer systems, several processes must be accomplished:  defining the task to be done, mapping the task-related concepts to the available structures of each system, and making adjustments only when necessary. This talk discusses the mechanisms of negotiation, analyzes their implications for system design, and shows how they can enable legacy systems to interoperate in dynamically changing environments.

These slides were prepared for a keynote presentation to be given at the Knowledge Technologies Conference on March 13, 2002, in Seattle, Washington.

Knowledge Soup

Fundamental problem:


Proposed solution:  Edict a standard that every implementation shall obey.


Conceptual Schema


ISO Standards Project, R.I.P. 1999.

Born again as the Semantic Web.


Foundations for Interoperability


How can independently developed computer systems


Use automated or semi-automated tools that can

  1. Determine the significant canonical graphs
    — patterns of concepts and relations that are central to the given task.

  2. Map the canonical graphs to the syntax and vocabulary used by each of the systems that must interoperate.

  3. Analyze all available information with a shallow syntactic and semantic parser.

  4. Use the canonical graphs to extend the shallow analysis to a deeper semantic interpretation for those passages that mention the significant concepts and relations.

  5. Negotiate revisions and adjustments only when different systems use incompatible representations.

Implementing the Answer

The fundamental research as been done:

Applied R & D to put it all together:

Representing a Physical Structure

CG Derived from Relational DB

CG Derived from English

"A red pyramid A, a green pyramid B, and a yellow pyramid C
support a blue block D, which supports an orange pyramid E."

The Two CGs Look Very Different

Finding Analogies


A CG-based analogy finder developed by Arun Majumdar:

Structural Mappings

VivoMind uses multiple algorithms to find analogies at different levels of complexity:

Mappings Found by VivoMind

These mappings can be also be used to translate other graphs that use the same two ontologies.

VivoMind for Legacy Re-engineering




Study Project


Much more than a study — they finished everything in 6 weeks.

Canonical Graphs

Same task-oriented canonical graphs for interpreting the semantics of English, COBOL, and JCL:




With subtypes for all the kinds of processes and data, including files and records, of COBOL and JCL.

Task-Oriented Semantic Interpreter

Broad-coverage syntax and semantics:

TOSI supplements the lexicon with canonical graphs for the specific task:


Conceptual graphs represent

CG tools support

Together, the theory and the tools enable negotiated agreements instead of legislated edicts.

For Further Reading

A textbook on knowledge representation that covers all the above topics:

A guided tour of ontology, conceptual structures, and logic:

An article about the templates used for information extraction, their use in shallow parsing, and their relationship to conceptual graphs:

A philosophical analysis of the problems and issues underlying ontology and knowledge representation:

A proposed architecture for intelligent systems that are designed to handle the problems and issues discussed in this talk:

Copyright ©2002, John F. Sowa