[Next] [Previous] [Up] [Top] [Contents]
3 Representation of knowledge in SDML
3.1 Clauses
There are three basic types in SDML, using which all knowledge is represented:
- clause. A clause consists of a keyword plus a number of arguments.
- number (integers or floating point).
- variable, used to represent indefinite information. Variables can be bound to specific clauses or numbers, or to other variables.
SDML provides type hierarchies, which allow other types to be defined in terms of these basic types. For example, symbol is defined as a subtype of clause; a symbol is regarded as a clause with no arguments. Real world objects are typically represented in SDML as instances of subtypes of symbol.
An argument of a clause may be a symbol, number, variable or subclause. Clauses may be nested to an arbitrary depth, enabling a large amount of knowledge to be represented by a single clause. Information is often represented using type list, defined as a subtype of clause. Matrices are regarded as lists of lists of numbers.
Although symbols, lists and matrices are special kinds of clauses from the modeller's point of view, more efficient representations are used in the implementation of SDML. Thus, clauses are simple and uniform, yet powerful and efficient, structures for the representation of knowledge.
Efficient Forward Chaining for Declarative Rules in a Multi-Agent Modelling Language - 16 FEB 95
[Next] [Previous] [Up] [Top] [Contents]
Generated with CERN WebMaker