Node:Mapping Local to Global Text Numbers, Next:Server Information, Previous:Archaic way to list conferences, Up:LysKOM Data Types
Text-Mapping ::=
( range-begin : Local-Text-No;
range-end : Local-Text-No;
later-texts-exists : BOOL;
block : Local-To-Global-Block;
)
Local-To-Global-Block ::= SELECTION
( 0=sparse sparse-block : ARRAY Text-Number-Pair;
1=dense dense-block : Text-List;
)
Text-Number-Pair ::=
( local-number : Local-Text-No;
global-number : Text-No;
)
A Text-Mapping is used when the client needs to look up which
global Text-No that corresponds to a Local-Text-No. The
client uses local-to-global to ask for information about a few
texts starting a a certain local text number, and the server returns the
information in a Text-Mapping.
range-begin
range-end
Text-Mapping tells the client about all existing texts from
range-begin to (but not including) range-end.
later-texts-exists
block
0 that indicates that the sparse format
is used, and is followed by an array of Text-Number-Pair. The
array will always be sorted so that local-number always
increases.
1 that indicates that the dense format
is used, and is followed by a Text-List. The Text-List
contains first-local-no and an array of Text-No.
The local text number first-local-no corresponds to the first
Text-No in the array, first-local-no + 1 corresponds to
the second entry in the array, and so on. The array contains a zero to
indicate that a certain local text number doesn't exist.