These are notes intended for developers and technical users.


File syntaxes
Describes the syntaxes supported by I-X, says how to find which syntaxes are available in an I-X Process Panel, and describes some of the file-syntax utilities that I-X provides for Java code.

Aspects of Process Panels

Explains options -- alternative plans or courses of actions -- and how they can be used in an I-X Process Panel.
Test menus
How to write test menus for an I-X Process Panel. A test menu typically specifies items such as issues and activities that, when selected, are sent to your panel or to another agent. This allows you to set up items in advance for demonstration, testing, training, and other purposes.
Object-Viewing "Whiteboards"
Describes a viewing tool that represents objects and their properties as an HTML table and allows editing of a reasonably intuitive sort.
Synchronized state
Describes a way for agents to keep their world-state models in sync with each other.
Exporting state
Describes an experimental mechanism that can be used to tell an I-X Process Panel to automatically send some of its world-state changes to other agents.

Domain modelling

LTF syntax for domains
Describes a language (List Task Formalism, or LTF) for defining domains. It has a Lisp-like syntax that is more compact and readable than the XML alternative.
Using checklists as domains
Describes how to use a "checklist" syntax for I-X domains.
I-DE object models
Describes how to define and use object classes and properties in the domain editor I-DE.
Object classes
Describes how object classes and properties are represented in domain definitions in XML and LTF syntax.


Notes on using an I-Plan panel; also describes the annotations that affect planning.
Compute conditions
Explains "compute" conditions: constraints that are evaluated by calling functions and hence can be used to perform calculations, manipulate data structures, etc.
A programming language that can be used to define funtions that are called by compute conditions.
LTF syntax for plans
Describes how plans can be represented as domains and the how LTF (List Task Formalism) language can be used to describe such domains.

Other I-X agents

An I-X HTTP server.

Utility programs

BNF-generator for the XML syntax
An interactive utility that asks the user for a class name and outputs a BNF-like description of the I-X XML syntax for that class and any related classes that it knows about.
Standalone file-to-file planner
A non-interactive utility that runs I-Plan on a planning problem specified by an initial plan and a domain.
Translates files from one I-X syntax to another.
I-Script interpretor (Lisp syntax)
A standalone interpretor for the I-Script language. The interpreter can be used to test code that's meant to support "compute" conditions and that's attached to domains or defined by extension classes.

Notes on writing plug-in modules and extensions

Writing a communication strategy
Describes how to write a mechanism for sending objects between I-X agents.
Writing a state viewer
Describes how to write a viewer for the world-state model in an I-X process panel.
Writing an agent extension
Describes how to use a general-purpose mechanism for adding features to I-X agents. In effect, it lets you specify some Java code that is invoked when the agent starts up and can then take advanatge of any points the agent has for adding or plugging-in new abilities. It also describes two such cases: adding a tool in an agent that has a "Tools" menu, and defining functions that can be called in "compute" conditions.

See also

I-X XML Syntax
Gives several different descriptions of the way I-X represents information in XML, including an XML schema and a Relax NG schema as well as a BNF-like grammar and a less formal description. The close correspondence between the XML and the classes used to represent the same information in I-X means that the XML descriptions also serve as descriptions of the classes.
Describes the parameters than can be given via command-line arguments or property files to the main types of I-X agent.

Jeff Dalton <>