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.