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
.