Appendix 9. Glossary

Abstract data type
An abstract data type specifies the operations which are applicable to its values (and its type expressions ). This enables TROEPS to manipulate values which are not objects in a safe way (i.e. that it is able to type and sub-type, to print and to compare them).
ADT
See Abstract data type .
Annotation
Any piece of data attached to a field value or an entity which is not part of the knowledge model but used by super layers of the TROEPS system. A.k.a. meta-values (because they are values about the field value). It can be a comment about the source, confidence or validity range of the value. It can also be service information such as hypertext link or graphic display dependence.
API
Application Programming Interface. A set of primitives which allow to manipulate the implementation of the TROEPS model.
Atomicity
The API is designed in order to implement atomic actions, i.e. actions which turn a valid knowledge base into another valid knowledge base when succeed and leave the initial knowledge base unaltered when fail.
Attached
Said of an object by reference to the class to which it is attached under a particular viewpoint. This class is the more specialised class to which the object belongs (is member of).
Bridge
A bridge is a constraint on the attachement classes of the objects. It constrains the objects member of a particular set of classes to be member of a particular class of another viewpoint.
Bridge inference
The bridge inference mechanisms allow to find all the maximal bridges that can exists between a set of viewpoints and another viewpoint. These inference can be based either on the type of the classes to compare or the set of objects which are their members.
Categorisation (class classification)
Finds the set of classes which can have a particular class as sub-class or super-class.
CGI (script)
CGI (Common Gateway Interface) is a technique for generating dynamic HTML pages in a HTTP server. A program called CGI script is launched by the HTTP server when particular URLs are requested and its output is a HTML page which is redirected on the server output.
Class
A class is a conceptual entity which group instances of a concept sharing some characteristics under a particular viewpoint. It specifies the characteristics to be shared by constraints on the fields of these objects. It is made up of a name and of a set of fields. Each field has a name and a set of descriptors. These descriptors associate to a field its type and, more generally, constraints on the field values for the members of the class. Classes are organised into hierarchies through the specialisation relation.
Classification (instance)
Finds the set of classes to which an object can be attached (i.e. for which the object does not violate some of their constraints). Classification is used to select a method for an elementary task and to characterise a task in order to select a decomposition which is adapted to the context, i.e. the input data of the task.
Classification (taxonomy)
Hierarchy of classes along the specialisation relation. See taxonomy.
Clustering
Clustering is an inference mechanism able to build an entire taxonomy of classes (including the constraints on classes) from the set of objects in the concept.
Co4
Co4 is a system and protocol allowing several users to modify concurrently a knowledge base . It modifies the knowledge base only when all its subscribers have decided to do so.
Component
Object which is also the value of a field of another object whose nature is component.
Composite (object)
Object with at least one field whose nature is component.
Concept
Definition of the ontological aspect of a family of objects. More precisely, the concept deals with the structure and the identity of objects. A concept is described by concept fields descriptors and viewpoints. It also determines the key used in order to identify the objects.
Constructor
In TROEPS, each value is subject to a constructor which allows to gather several simple values into a maybe more complex one. In TROEPS, these constructors can be "un" (which returns the simple data), set and list.
CSP
CSP stands for constraints satisfaction problem. Such a problem consists in finding the possible values in the domain of a set of variables satisfying a set of constraints.
Constraint
Constraint has two meaning in TROEPS. The usual meaning denotes the fact that some constraints apply to objects which are members of classes. The specialised meaning refers to the CSP framework. It allows to set constraints on concepts, classes and objects and to rely on a constraint solver in order to restrict the possible values of the fields on which the constraints applies.
Decomposition
A complex task must be recursively decomposed into sub-tasks, down to elementary tasks. A task is described by a class, the fields of which are associated with its input and output parameters. Its decomposition is described by an operator (sequence, selection, etc.) and the list of tasks on which this operator applies. The decomposition of a task into sub-tasks depends on the type of its input data. Thus, the decomposition step is preceded by a classification step, during which the task is first characterised according to its known input values.
Default value
A default value is an inference mechanism which provides a (constant) hypothetical value for a field to the members of a classes.
Document type description (DTD)
Definition of a set of tags or element by specifying their content (a regular expression based on the other tags which specify a sub-tree), their attributes.
Exclusive
A set of classes is exclusive if any object belonging to one of them does not belong to any other of them. TROEPS is subjectively exclusive.
Exhaustive
A set of classes exhaust their common super-class (which is thus exhaustive) if every object attached to the super-class belongs to one of its sub-classes. TROEPS does not require exhaustiveness.
eXtensible Markup Language
A successor of both HTML and SGML which is a general markup language (without semantics). Its first use is in exchanging structured data. The syntax of particular documents can be specified in a DTD.
Field
A field (a.k.a. slot, feature, attribute) represents an attribute of an object.
Filter
A filter is a shape of class which is used in order to screen the objects, instance of particular classes, which satisfies particular constraints. It can be used as an inference mechanism in order to obtain the value of a field.
HTML
Hyper-text mark-up language. A format for encoding hypertext documents so that they are visible and accessible through a network. HTML is based on the SGML (standard generalised mark-up language) syntax.
HTTP
Hyper-text transmission protocol. The protocol used for dealing with HTML documents through TCP/IP networks.
Hypothetical value
A hypothetical value is a value for a field, returned by an inference mechanism , which is by no mean the real value of the field but some plausible value which has been computed from the inference mechanisms described in classes.
Implicit value
An implicit value is a value for a field, returned by an inference mechanism , which has the same status as the values that have been explicitly put in the object description. The value is computed by an inference mechanism described in concept.
Inference
An inference is a computation which can either provide the value for a field or the attachment classes for an object. It can correspond to an implicit computation (providing the true value) or a hypothetical computation (trying to guess what the true value could be).
Instance
Said of an object by reference to its concept (see also attached).
Instanciation
The mechanism which creates an object. It includes the indexing of the object in its concept under its key and the type checking of field values with regard to the type of all the classes to which it belongs.
IP
Stands for Internet protocol.
Key
Set of fields which identifies uniquely the instances of a concept .
Knowledge base
A knowledge base is a set of concepts and instances of these concepts. It is stored in a file and can import TALK modules, lexicons, other knowledge bases and modules describing types. It can be saved in a textual format, TALK or HTML.
Knowledge server
A knowledge server is an application which distributes the knowledge contained in one or more knowledge bases . TROEPS uses the World-wide web in order to distribute the knowledge across a network.
Label
A tag under which an annotation can be stored and retrieved.
Lexicon
A lexicon is a set of definitions of terms. Each definition corresponds to a particular term and is described in a lexitem. A lexitem provides a definition for the term together with links to other lexitems and TROEPS object.
Lexitem
A lexicon item, that is a computer structure representing a term.
Meta-value
See Annotation.
Method (1)
Knowledge expressing how to obtain new knowledge from the available knowledge. Basically, a method is the way to infer the value of a field. It makes a link between the object aspect of the knowledge base and its task aspect.
Method (2)
An external module implementing an executable task. A method is externally described by a class, the fields of which are associated with the input and output parameters of the module. To process a method, an instance of the class is created and the fields associated with the input arguments are filled in. This instance is then transmitted to the module, the execution of which allows to fill in the output fields. Since methods are modelled as classes, they can be organised into hierarchies in which general methods dominate more specific ones. A method is more specific (resp. more general) than another one if the types of its input arguments are subtypes (resp. super-types) of the types of the arguments of the other one.
Membership (of an object to a class)
An object is a member of a class when it is attached to that class or to one of its sub-classes. It must satisfy all the constraints of the class and can benefit from all inference mechanisms attached to it.
Nature
The nature of a field gives it a particular semantics (and is thus tied to a particular implementation).
Object
The beginning of the whole story. An object is made up of a name and of the list of the known values of the fields of the concept to which it is instance. It can be seen under the concept viewpoints as belonging to some classes. Missing values can be determined using methods declared in the concept field and guessed using the knowledge attached to the class field : functions or default values.
Objective property
A property whose satisfaction can be checked by the system. It can, in particular, reject any operation which would result in a knowledge base not satisfying this property. An example of such a property is the impossibility to create a class which cannot be attached any object.
Path
A path is an expression for describing how to access a value from an object (or from the instances of a concept or the members of a class) through a sequence of field values.
Problem solving process
The process through which a task is solved by either calling a method, or by decomposing recursively the task into sub-tasks.
Revision
The procedure which suggests corrections when an error is raised.
Root class
A class which is the root of a taxonomy. Any instance of a concept is member of the root class in each of its viewpoints. There is a two-way bridge between any two root classes of any viewpoint of the same concept.
Server
See Knowledge server .
Slot
See Field.
Specialisation
Relation from a class to another one of the same viewpoint of a concept which indicates that the objects members to the former are also members to the latter. To that extent, the constraints attached to the former can only be more constraining than those of the latter.
Subjective property
A property whose satisfaction must be considered by the system, but that the system cannot check. However, it is sometime possible that the system can detect a violation of the property. An example of a subjective property is the assertion that procedural attachments do not have side-effects.
Talk
Programming language of the Lisp family developed by the company Ilog. It translates modules into C, so can be compiled into libraries. The libraries are free of charge as far as they do not contain elements of the programming environment.
Task
The task represents procedural knowledge. It is characterised by a goal to be achieved and a set of knowledge that can be used in order to achieve it. It can be implemented by either a procedure to be called or a set of sub-tasks which constitutes the concurrent or dependant ways to achieve it. A task is associated with a problem. To solve the task is then to solve the problem. An elementary task is solved by the execution of a method. The selection of the adapted method among the set of available methods which is attached to the elementary task results from a classification process. A terminal task is executed as a method while a non-terminal one is decomposed.
Taxonomy
A taxonomy is a partially ordered set of entities (here the classes ordered by specialisation) which are interpreted as sets of other entities (here the objects attached to each class) such that the partial order is compatible with the inclusion of interpretations.
Troeps
Has no particular meaning.
Tropes
The previous name of the TROEPS system. Changed for juridical reason.
Type
See Type expression and Abstract data type .
Type expression
The domain of value of a particular role to be played by an entity of the system. The type is defined with the help of descriptors for field values and by the definitions of concepts and classes.
URL
A URL (Uniform Resource Locator) is the address by which the documents are identified in the World-wide web .
Value passing
Value passing is an inference mechanism which provides a value for a field to the members of a class through the specification of a path which allows to access the value.
Viewpoint
Conceptual position from which only a projection of the knowledge base is available. This position enables to access only to certain fields of the objects of a concept. It also organises classes in concurrent hierarchies. These hierarchies differ in the description of the classes they incorporate and/or in the way classes and sub-classes are related. An object may belong to one class on each viewpoint. It is thus possible to see an object from a single viewpoint or from several viewpoints simultaneously. Different fields will then be available.
Visibility
The fact that a field of an object can be seen (queried, modified, etc.) under a particular viewpoint.
WWW
Acronym of World-wide web.
XML
Acronym of eXtensible Markup Language .