top - download
⟦dbfeab323⟧ Wang Wps File
Length: 67534 (0x107ce)
Types: Wang Wps File
Notes: CPS/SDS/033
Names: »1779A «
Derivation
└─⟦82445de73⟧ Bits:30006087 8" Wang WCS floppy, CR 0139A
└─ ⟦this⟧ »1779A «
WangText
-…05…,…09…,…0d…,
, ,…07…+…0a…+…0d…+…01…+
+ *…08…*…0c…*…0f…*…02…*…06…*…07…)…0a…)…0e…)…02…)…07…(…0a…(…0f…(…00…( (…86…1
…02…
…02…
…02…
…02…CPS/SDS/033
…02…KNB/831101…02……02…
TRAFFIC HANDLING
DETAILED DESIGN
SPECIFICATION ISSUE
1 CAMPS
4.2.1.4.8 F̲L̲1̲ ̲A̲n̲a̲l̲y̲s̲i̲s̲ ̲M̲o̲d̲u̲l̲e̲
4.2.1.4.8.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The functions of the FL1 ̲analysis module are
- detection of FL1
- detection of FL1 after a pilot
- validation of Transmission Identifier
- detection of an outgoing message entered via a
normal PTR
- updates to IMF
4.2.1.4.8.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
Input: R0 = FL ̲pointer
R1 = Analysis ̲FL
R2 = Previous ̲FL
R3 = FL-area
R4 = FL ̲length
Output: R5 = Result
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) FL1 ̲ANALYSIS (FL ̲POINTER, ANALYSIS ̲FL, PREV ̲FL
FL ̲AREA, FL ̲LENGTH)(RESULT)
b) FL1 ̲ANALYSIS (R0, R1, R2, R3, R4, R5, R6)
4.2.1.4.8.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
See fig. 4.2.1.4-8 for structure FL1 ̲analysis
a) F̲L̲-̲d̲e̲t̲e̲c̲t̲i̲o̲n̲ ̲F̲L̲1̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Detects the SOTF ̲sequence VZCZC and security warning
prosign
ref. 4.2.1.6.2.6.
b) A̲n̲a̲l̲y̲z̲e̲ ̲a̲l̲p̲h̲a̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref. 4.2.1.6.2.1 for description
- validation of Channel-designator
c) A̲n̲a̲l̲y̲z̲e̲ ̲n̲u̲m̲e̲r̲i̲c̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref. 4.2.1.6.2.2 for description
- validation of TSN
d) E̲r̲r̲o̲r̲ ̲C̲o̲l̲l̲e̲c̲t̲i̲o̲n̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref. 4.2.1.6.1.4 for description
Error-codes: INVALID ̲DESIGNATOR
INVALID ̲TSN
e) A̲S̲C̲I̲I̲ ̲t̲o̲ ̲B̲i̲n̲a̲r̲y̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.2.7 for description.
4.2.1.4.8.4 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲
Administration ̲field (DBD/001 10.1.1)
ACP ̲Parameter ̲field (DBD/001 10.2.2)
FL ̲ANALYSIS ̲DATA (4.2.1.5.8)
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
PILOT ̲DETECTED (m)
ADMINISTRATION.CHANNEL ̲DESIGNATOR (m)
ADMINISTRATION.CSN (m)
ACP ̲PARAMS.SECURITY ̲WARNING (m)
INCOMING ̲MSG (m)
DESIGNATOR ̲SIZE
TSN ̲SIZE
QEL ̲HEADER. MAINTYPE
SOTF ̲LENGTH
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
None
4.2.1.4.8.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
The FL1 ̲analysis module is controlled via the procedures
SC ̲analysis control and ACP ̲analysis control of the
Analysis Control Module.
If the previous analyzed FL is FL4 it is assumed that
the FL for analysis is the FL1 after a pilot without
SOTF + TI Based on this the sequence VZCZC or 5 spaces
+ UU/HH is used for format ̲line detection parameter.
A message entered via the normal PTR can contain no
more than the SOTF sequences; if so the message is
flagged outgoing.
Otherwise the Channel ̲designator, the Transmission
serial number and (if present) the security warning
prosign are validated; these parameters should be without
acceptable deviations because the Incoming Transport
Subpackage during reception procedures has corrected
this FL (the TI is vital to the system because of Log,
storage and statistics, and has to be valid).
The only situation where an TI could be corrupted is
if MSO changed a valid TI to a none valid TI during
garble correction.
Fig. 4.2.1.4-8…01…STRUCTURE FL1-analysis
F̲L̲1̲ ̲A̲N̲A̲L̲Y̲S̲I̲S̲ (FL ̲POINTER, PREV ̲FL, ANALYSIS ̲FL
FL ̲AREA, FL ̲LENGTH)(RESULT)
FL = FL ̲POINTER
RESULT = NOT ̲OK
PREV ̲FL = FL4? ANALYZE ̲SECURITY ̲WARNING(FL)(FL,CC)
CC = OK? RESULT = OK
PILOT ̲DETECTED = TRUE
DETECTION ̲FL1 = (FL)(FL, CC)
CC = NOT ̲OK?
FL ̲LENGTH = SOTF ̲LENGTH? QEL ̲HEADER. MAINTYPE
NE FROM ̲NORMAL ̲PTR?
INCOMING ̲MSG = FALSE
ANALYZE ̲ALPHA (FL, DESIGNATOR ̲SIZE)(FL, CC)
CC = NOT ̲OK? ERROR ̲COLLECTION(INVALID DESIGNATOR)
( )
ADMINISTRATION. CH ̲DESIGNATOR = FL(1..3)
ANALYSE ̲NUMERIC (FL, TSN ̲SIZE)(FL, CC)
CC = NOT ̲OK? ERROR ̲COLLECTION (INVALID TSN) (
)
AMINISTRATION.TSN = FL (1..3)
ANALYSE ̲SECURITY ̲WARNING(FL)(FL, CC)
CC = NOT ̲OK?
ACP ̲PARAMS.SECURITY ̲WARNING = FL(1..2)
RESULT = OK
RETURN
4.2.1.4.9 F̲L̲C̲ ̲A̲n̲a̲l̲y̲s̲i̲s̲ ̲M̲o̲d̲u̲l̲e̲
4.2.1.4.9.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The functions of the FLC analysis module are:
- Detection of FLC in SCARS/CCIS format E1
- Validation of classification and special handling
instructions
- Updates to IMF (Administration ̲Field)
4.2.1.4.9.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲ ̲
Input: R0 = FL ̲pointer
R1 = Analysis ̲FL
R2 = Previous ̲FL
R3 = FL ̲area
R4 = FL ̲Lenght
Output: R5 = Result
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲:̲
a) FLC ̲ANALYSIS (FL ̲POINTER, ANALYSIS ̲FL PREV ̲FL,
FL ̲AREA, FL ̲LENGTH)(RESULT)
b) FLC ̲ANALYSIS (R0, R1, R2, R3, R4, R5, R6)
4.2.1.4.9.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
See fig. 4.2.1.4-9 for structure FLC ̲analysis
a) F̲L̲ ̲D̲e̲t̲e̲c̲t̲i̲o̲n̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Detection of the sequence "SPECIAL"
Ref. 4.2.1.6.2.6
b) A̲n̲a̲l̲y̲z̲e̲ ̲C̲l̲a̲s̲s̲i̲f̲i̲c̲a̲t̲i̲o̲n̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref. 4.2.1.6.3.1 for description
c) A̲n̲a̲l̲y̲z̲e̲ ̲S̲p̲e̲c̲i̲a̲l̲ ̲H̲a̲n̲d̲l̲i̲n̲g̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref. 4.2.1.6.3.2 for description
d) L̲o̲c̲a̲t̲e̲ ̲a̲f̲t̲e̲r̲ ̲s̲p̲a̲c̲e̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref. 4.2.1.6.2.4 for description
e) L̲o̲c̲a̲t̲e̲ ̲c̲h̲a̲r̲a̲c̲t̲e̲r̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref. 4.2.1.6.2.5 for description
f) E̲r̲r̲o̲r̲ ̲C̲o̲l̲l̲e̲c̲t̲i̲o̲n̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref. 4.2.1.6.1.4 for description
Error Codes: ILLEGAL ̲CLASSIFICATION
ILLEGAL ̲SPECIAL HANDLING
TOO ̲HICH ̲CLASSIFICATION
g) U̲p̲d̲a̲t̲e̲ ̲S̲p̲e̲c̲i̲a̲l̲ ̲H̲a̲n̲d̲l̲i̲n̲g̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref. 4.2.1.6.4.1 for description
4.2.1.4.9.4 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲:̲
Administration Field (DBD/001 10.1.1)
FL ̲Analysis Data (4.2.1.5.8)
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
ADMINISTRATION.CLASS (m)
-"- .SPEC ̲HANDL ̲INST (m)
QEL ̲ATTRIBUTE
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
None
4.2.1.4.9.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
Having detected the start-sequence for FLC ( = special)
the classification (mandatory) is validated; the result
is placed in the administration field. Finally the
Format ̲Line is searched for special handling designators
(optional); each found special handling designator
results in update of the corresponding type in the
administration field.
FIG. 4.2.1.4-9…01…STRUCTURE FLC ANALYSIS
F̲L̲C̲ ̲A̲N̲A̲L̲Y̲S̲I̲S̲ ̲(FL ̲POINTER, PREV ̲FL, ANALYSIS ̲FL, FL
̲AREA,
FL ̲LENGTH)(RESULT)
RESULT = NOT ̲OK
FL ̲AREA NE HEADER?
FL = FL ̲POINTER
DETECTION ̲FLC (FL)(FL, CC)
CC = NOT ̲OK?
ANALYZE ̲CLASS ̲SPEC (FL)(FL, CLASS, CC),
CC = NOT ̲OK? ERROR ̲COLLECTION(ILLEGAL ̲CLASSIFICATION)(
)
ADMINISTRATION.CLASS = CLASS
LOOP SPECIAL ̲HANDLING:
ANALYZE ̲CLASS ̲SPEC (FL)(FL, SPEC ̲HANDL, CC)
CC = EOLN? EXIT ̲LOOP
CC = NOT ̲OK? ERROR ̲COLLECTION(ILLEGAL ̲SPECIAL ̲HANDLING)()
UPDATE ̲SPEC ̲HANDLING(SPEC ̲HANDL)( )
END SPECIAL ̲HANDLING LOOP
RESULT = OK
RETURN
4.2.1.4.10 F̲L̲D̲1̲ ̲A̲n̲a̲l̲y̲s̲i̲s̲ ̲M̲o̲d̲u̲l̲e̲
4.2.1.4.10.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The functions of the FLD1 ̲analysis module are:
- detection of FLD1 in SCARS/CCIS format E1
- validation of precedence
- updates IMF (administration ̲field)
4.2.1.4.10.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
Input: R0 = FL ̲pointer
R1 = Analysis ̲FL
R2 = Previous ̲FL
R3 = FL ̲area
R4 = FL ̲length
Output: R5 = Result
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) FLD1 ̲ANALYSIS (FL ̲POINTER, NEXT ̲FL, PREV ̲FL
FL ̲AREA, FL ̲LENGTH)(RESULT)
b) FLD1 ̲ANALYSIS(R0, R1, R2, R3, R4, R5, R6)
4.2.1.4.10.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
See fig. 4.2.1.4-10 for structure FLD1 ̲analysis
a) F̲L̲ ̲D̲e̲t̲e̲c̲t̲i̲o̲n̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Detects the start-sequence "PREC" of a FLD1.
Ref. 4.2.1.6.2.6 for description
b) A̲n̲a̲l̲y̲z̲e̲ ̲P̲r̲e̲c̲e̲d̲e̲n̲c̲e̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.3.3 for description
c) L̲o̲c̲a̲t̲e̲ ̲a̲f̲t̲e̲r̲ ̲s̲p̲a̲c̲e̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref. 4.2.1.6.2.4 for description
d) E̲r̲r̲o̲r̲ ̲C̲o̲l̲l̲e̲c̲t̲i̲o̲n̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.1.4 for description
4.2.1.4.10.4 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲
Administration Field (DBD/001 10.1.1)
ACP ̲parameter Field (DBD/001 10.2.2)
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
ADMINISTRATION.ACT ̲PREC
ACP ̲PARAMS.SC ̲PRECEDENCE
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
None
4.2.1.4.10.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲ ̲
Having detected a valid FLD1 with startsequence = PREC
the following character is analyzed in order to detect
the precedence; if found the value is used as parameter
to an update of the Action ̲precedence (administration
Field); if not found the precedence received in the
block-identifier during reception procedures is used
instead.
Fig. 4.2.1.4-10…01…STRUCTURE FLD1 ̲ANALYSIS
F̲L̲D̲1̲ ̲A̲N̲A̲L̲Y̲S̲I̲S̲ (FL ̲POINTER, PREV ̲FL, ANALYSIS ̲FL,FL
̲AREA,
FL ̲LENGTH)(RESULT)
RESULT = NOT ̲OK
FL ̲AREA NE HEADER?
DETECTION ̲FLD1(FL)(FL, CC)
CC = NOT ̲OK?
FL = FL + 1
ANALYZE ̲PRECEDENCE(FL)(FL, PREC, CC)
CC = NOT ̲OK? ERROR ̲COLLECTION(ILLEGAL ̲PRECEDENCE)
ADMINISTRATION.ACT ̲PREC = ACP ̲PARAMS.
ACP.PARAMS. SC ̲PRECEDENCE
ADMINISTRATION.ACT ̲PREC = PREC
RESULT = OK
RETURN
4.2.1.4.11 F̲L̲D̲ ̲A̲N̲A̲L̲Y̲S̲I̲S̲ ̲M̲O̲D̲U̲L̲E̲
4.2.1.4.11.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The functions of the FLD ̲ANALYSIS module are
- detection of FLD2 (originator)
- detection of FLD3 (release)
- detection of FLD4 (coordination)
- validation of system ̲code
- validation of SCD
- Updates IMF (Administration Field)
- determination of message for release
- determination of message for coordination
4.2.1.4.11.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
Input: R0 = FL ̲pointer
R1 = Analysis ̲FL
R2 = Previous ̲FL
R3 = FL ̲area
R4 = FL ̲length
Output: R5 = Result
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) FLD ̲ANALYSIS (FL ̲POINTER, ANALYSIS ̲FL, PREV ̲FL,
FL ̲AREA,
FL ̲LENGTH)(RESULT)
b) FLD ̲ANALYSIS (R0, R1, R2, R3, R4, R5, R6)
4.2.1.4.11.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
See fig. 4.2.1.4-11 for structure FLD ̲analysis module.
a) F̲L̲ ̲D̲e̲t̲e̲c̲t̲i̲o̲n̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
- Detects the startsequence "ORIG" of a FLD2.
- Detects the startsequence "REL" of a FLD3
- Detects the startsequence "COOR" of a FLD4.
ref. 4.2.1.6.2.6 for description
b) L̲o̲c̲a̲t̲e̲ ̲a̲f̲t̲e̲r̲ ̲s̲p̲a̲c̲e̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref. 4.2.1.6.2.4 for description
c) L̲o̲c̲a̲t̲e̲ ̲c̲h̲a̲r̲a̲c̲t̲e̲r̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref. 4.2.1.6.2.5 for description
d) A̲n̲a̲l̲y̲z̲e̲ ̲S̲y̲s̲t̲e̲m̲ ̲c̲o̲d̲e̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.3.4 for description
e) A̲n̲a̲l̲y̲z̲e̲ ̲A̲l̲p̲h̲a̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.2.1 for description
- validation of a SCD
f) E̲r̲r̲o̲r̲ ̲C̲o̲l̲l̲e̲c̲t̲i̲o̲n̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.1.4 for description
Error-codes: UNKNOWN ̲SYSTEM ̲CODE
INVALID ̲SCD
g) S̲e̲a̲r̲c̲h̲ ̲C̲C̲I̲S̲ ̲R̲I̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.5.3 for description
4.2.1.4.11.4 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) Data references
Administration Field (DBD/001 10.1.1)
FL ̲ANALYSIS DATA (4.2.1.5.8)
QEL ̲DATA (4.2.1.5.3)
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
MAX ̲SCD
SCD ̲SIZE
ADMINISTRATION.ORIG ̲SCD (m)
ADMINISTRATION.ORIGINATOR ̲ID (m)
ADMINISTRATION.DELIVERY ̲SCD ̲A (m)
SEND ̲FOR ̲RELEASE (m)
SEND ̲FOR ̲COORDINATION (m)
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
None
4.2.1.4.11.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
Having detected the start-sequence of a FLD the next
parameter is analyzed; this parameter shall consist
of a system ̲code (A, C, S) representing respectively
ACCIS, CAMPS or SCARS; this system ̲code shall be followed
by a SCD; if not or if the SCD does not contain alpha-characters,
the SCD is declared invalid.
In a FLD2 an originator ̲ID (originator name) may follow
the SCD (separated with /) this information is placed
in the administration Field.
If the system-code in a FLD3 indicates CAMPS, the message
is determined as sent to CAMPS for release; otherwise
the message is considered as already released.
If the system-code in an FLD4 indicates CAMPS, the
message is determined as sent to CAMPS for coordination
before release and onwards transmission.
The SCD's of FLD3 and FLD4 are placed in the DELIVERY
̲SCD ̲A of the administration fields; both FLD3 and FLD4
cannot exist simultaneously.
The CCIS RI is located in the local RI table in order
to generate FLJ of an already released outgoing message.
Fig. 4.2.1.4-11…01…STRUCTURE FLD ANALYIS
F̲L̲D̲ ̲A̲N̲A̲L̲Y̲S̲I̲S̲ ̲(̲FL POINTER, PREV ̲FL, ANALYSIS ̲FL
FL ̲AREA, FL ̲LENGTH)(RESULT)
RESULT = NOT ̲OK
FL ̲AREA NE HEADER?
FL = FL ̲POINTER
CASE ANALYSIS ̲FL OF:
FLD2 : FLD2 ̲DETECTION(FL)(FL, CC)
FLD3: FLD3 ̲DETECTION(FL)(FL, CC)
FLD4: FLD4 ̲DETECTION(FL)(FL, CC)
END CASE ANALYSIS ̲FL
CC = NOT ̲OK?
FL = FL + 1
ANALYZE ̲SYSTEM ̲CODE (FL)(FL, SYS ̲CODE, CC)
CC = NOT ̲OK? ERROR ̲COLLECTION(UNKNOWN ̲SYSTEM ̲CODE)
ANALYZE ̲ALPHA (FL, MAX ̲SCD)(FL, CC)
CC = NOT ̲OK? ERROR ̲COLLECTION(INVALID ̲SCD)( )
continued…86…1 …02… …02… …02… …02… …02… …02… …02… …02…
continued FLD ̲ANALYSIS
CASE ANALYSIS ̲FL OF:
FLD2: ADMINISTRATION.ORIG ̲SCD = ((FL 1)..SCD ̲SIZE)
FL = FL + 1
(FL - FL ̲POINTER) GE FL ̲LENGTH?
ADMINISTRATION.ORIGINATOR ̲ID = FL(1..N)
FLD3: ADMINISTRATION.DELIVERY ̲SCD ̲A = ((FL-1).. SCD
̲SIZE)
SYSTEM ̲CODE = CAMPS? SEND ̲FOR ̲COORDINATION
= true
FLD4: ADMINISTRATION.DELIVERY ̲SCD ̲A=((FL-1)...SCD.SIZE
SYSTEM ̲CODE = CAMPS? SEND ̲FOR RELEASE = TRUE
SEND ̲FOR ̲CONVERSION = TRUE
END CASE ANALYZE ̲FL
RESULT = OK
RETURN
4.2.1.4.12 F̲L̲E̲F̲ ̲A̲N̲A̲L̲Y̲S̲I̲S̲ ̲M̲O̲D̲U̲L̲E̲
4.2.1.4.12.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The functions of the FLEF ̲analysis module are:
- detection of FLE (Action ̲SCD)
- detection of FLF (Info SCD)
- updates delivery-SCD's of the administration field.
The format lines E and/or F can only be present in
SCARS/CCIS formatted VDU-pages and comments.
4.2.1.4.12.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
Input: R0 = FL ̲pointer
R1 = Analysis FL
R2 = Previous FL
R3 = FL ̲area
R4 = FL ̲Length
Output: R5 = Result
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲:̲
a) FLEF ̲ANALYSIS (FL ̲POINTER,ANALYSIS ̲FL, PREV ̲FL,
FL ̲AREA, FL ̲LENGTH)(RESULT)
b) FLEF ̲ANALYSIS (R0, R1, R2, R3, R4, R5, R6)
4.2.1.4.12.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
See fig. 4.2.1.4-12 for structure FLEF ̲Analysis module.
a) F̲L̲ ̲D̲e̲t̲e̲c̲t̲i̲o̲n̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Detects the starsequence "ACT" of a FL ̲E
Detects the starsequence "INFO" of a FL ̲F
ref. 4.2.1.6.2.6
b) L̲o̲c̲a̲t̲e̲ ̲a̲f̲t̲e̲r̲ ̲s̲p̲a̲c̲e̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.2.4 for description
c) A̲n̲a̲l̲y̲z̲e̲ ̲s̲y̲s̲t̲e̲m̲ ̲c̲o̲d̲e̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.3.4 for description
d) A̲n̲a̲l̲y̲z̲e̲ ̲A̲l̲p̲h̲a̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.2.1 for description
- validation of a SCD
e) E̲r̲r̲o̲r̲ ̲C̲o̲l̲l̲e̲c̲t̲i̲o̲n̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.1.4 for description
Error ̲codes: UNKNOWN ̲SYSTEM ̲CODE
INVALID ̲SCD
4.2.1.4.12.4 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) D̲a̲t̲a̲ ̲r̲e̲f̲e̲r̲e̲n̲c̲e̲s̲
Administration field (DBD/001 10.1.1)
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
ADMINISTRATION.DELIVERY ̲SCD ̲A (m)
ADMINISTRATION.DELIVERY ̲SCD ̲B (m)
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
None
4.2.1.4.12.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
The principles for this module are very similar to
the FLD ̲analysis module (ref. 4.2.1.4.14.5 for description).
The format lines E and/or F are relevant for comments
or VDU-pages incoming from SCARS or CCIS.
The SCD's following the FL ̲detection ̲sequence are collected
in the Delivery ̲SCD ̲fields of the administration ̲field
(including system-code)
Fig. 4.2.1.4-12…01…STRUCTURE FLEF ̲ANALYSIS
F̲L̲E̲F̲ ̲A̲N̲A̲L̲Y̲S̲I̲S̲ (FL ̲POINTER, PREV ̲FL, ANALYSIS ̲FL, FL
̲AREA,
FL ̲LENGTH)(RESULT)
RESULT = NOT ̲OK
FL ̲AREA NE HEADER?
FL = FL ̲POINTER
CASE ANALYSIS ̲FL OF:
FL E: DETECTION ̲FL ̲E (FL)(FL, CC)
FL F: DETECTION ̲FL ̲F (FL)(FL, CC)
END ANALYSIS ̲FL CASE
CC = NOT ̲OK?
FL = FL + 1
ANALYZE ̲SYSTEM ̲CODE (FL)(FL, SYS ̲CODE, CC)
CC = NOT ̲OK? ERROR ̲COLLECTION(UNKNOWN ̲SYSTEM ̲CODE)(
)
ANALYZE ̲ALPHA (FL, MAX ̲SCD)(FL, CC)
CC = NOT ̲OK? ERROR ̲COLLECTION(INVALID ̲SCD)( )
CASE ANALYSIS ̲FL OF:
FL E: ADMINISTRATION.DELIVERY ̲SCD ̲A
=((FL-1)..SCD ̲SIZE)
FL F: ADMINISTRATION.DELIVERY ̲SCD ̲B.
=((FL-1)..SCD ̲SIZE)
END ANALYSIS ̲FL CASE
RESULT = OK
RETURN
4.2.1.4.13 F̲L̲J̲ ̲A̲n̲a̲l̲y̲s̲i̲s̲ ̲M̲o̲d̲u̲l̲e̲
4.2.1.4.13.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The functions of the FLJ-analysis module, which are
related to SCARS/CCIS VDU-pages and Comments, are:
- Detection of FLJ1 (MSGID)
- Detection of FLJ2(Display-ID)
- Detection of FLJ3 (DTG)
- Updates IMF (administration-field)
4.2.1.4.13.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
Input: R0 = FL ̲pointer
R1 = Analysis ̲FL
R2 = Previous FL
R3 = FL ̲area
R4 = FL ̲Length
Output: R5= Result
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲:̲
a) FLJ ̲ANALYSIS (FL ̲POINTER, ANALYSIS ̲FL, PREV ̲FL,
FL ̲AREA, FL ̲LENGTH)(RESULT)
b) FLJ ̲ANALYSIS (R0, R1, R2, R3, R4, R5, R6)
4.2.1.4.13.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
See fig. 4.2.1.4-13 for structure FLJ-analysis module
a) F̲L̲ ̲D̲e̲t̲e̲c̲t̲i̲o̲n̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Detects the startsequence "MSGID" of a FLJ1
Detects the startsequence "DISPN" of a FLJ2
Detects the startsequence "EFDT" of a FLJ3
Ref. 4.2.1.6.2.6 for description
b) L̲o̲c̲a̲t̲e̲ ̲a̲f̲t̲e̲r̲ ̲s̲p̲a̲c̲e̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref. 4.2.1.6.2.4 for description
c) E̲r̲r̲o̲r̲ ̲C̲o̲l̲l̲e̲c̲t̲i̲o̲n̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.1.4 for description
Error Codes: INVALID ̲PARAMETERS
INVALID ̲SSN
INVALID ̲DTG
d) A̲n̲a̲l̲y̲z̲e̲ ̲N̲u̲m̲e̲r̲i̲c̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.2.2 for description
- validation of SSN
e) L̲o̲c̲a̲t̲e̲ ̲c̲h̲a̲r̲a̲c̲t̲e̲r̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.2.5 for description
f) A̲n̲a̲l̲y̲z̲e̲ ̲M̲o̲n̲t̲h̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.3.6 for description
g) A̲n̲a̲l̲y̲z̲e̲ ̲D̲T̲G̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.5.9 for description
h) A̲S̲C̲I̲I̲ ̲t̲o̲ ̲B̲i̲n̲a̲r̲y̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.2.7 for description
4.2.1.4.13.4 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) Data references
Administration field (DBD/001 10.1.1)
View Data (4.2.1.5.3)
TMP ̲DATA (4.2.1.5.2)
Analysis Buffer (4.2.1.5.1)
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
MAX ̲SSN
ADMINISTRATION.SSN (m)
ADMINISTRATION.MSG ̲ID (m)
ADMINISTRATION.MONTH (m)
ADMINISTRATION.RELEASE ̲DTG (m)
ADMINISTRATION.DISPLAY ̲NAME (m)
WRITE ̲TEXT (m)
TEXT ̲POINTER (m)
FL ̲NUMBER
COMMENT ̲TYPE
VDU ̲PAGE ̲TYPE
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
NONE
4.2.1.4.13.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲ ̲
Having detected the correct startsequence of a FL J
the position of the following slash is located (if
not present, the parameters of that line is somehow
erroneous); the characters in between should be the
wanted parameter; if FL J1 the above described procedure
is repeated once more in order to step over the "COMMENT"
or "DISPLAY" sequence which when displaying the message
is extracted via the QEL ̲maintype and therefore of
no interest. The parameters are then validated and
some converted before transfer to the administration-field
(ref. data description). Finally the pointer for start
of text-field is set to the next format-line; the reason
for this is that the text-part of a comment or VDU-page
during Finish Analysis procedures shall be separated
from the Header.
Fig. 4.2.1.4-13…01…STRUCTURE FL J ANALYSIS
F̲L̲J̲ ̲A̲N̲A̲L̲Y̲S̲I̲S̲ (FL ̲POINTER, PREV ̲FL, ANALYSIS ̲FL, FL
̲AREA,
FL ̲LENGTH)(RESULT)
RESULT = NOT ̲OK
FL ̲AREA NE HEADER OR TEXT ̲BEGIN?
FL = FL ̲POINTER
CASE ANALYSIS ̲FL OF:
FL J1: DETECTION ̲FLJ1 (FL)(FL, CC)
Count = Two
FL J2: DETECTION ̲FLJ2 (FL)(FL, CC)
Count = One
FL J3: DETECTION ̲FLJ3 (FL)(FL, CC
Count = One
END ANALYSIS ̲FL CASE
CC = NOT ̲OK?
LOOP COUNT:
FL = FL + 1
LOCATE ̲CHARACTER ("/)FL)(FLN, CC)
CC = NOT ̲OK? ERROR ̲COLLECTION
(INVALID ̲PARAMETERS)( )
END COUNT LOOP
Continue
Continued FL J ̲ ANALYSIS
CASE ANALYSIS ̲FL OF:
FL J1: ADMINISTRATION.MSG ̲ID = FL(1..FLN)
FL = FL + 1
ANALYZE ̲NUMERIC (FL, MAX ̲SSN)(FL, CC)
CC = NOT ̲OK? ERROR ̲COLLECTION(INVALID ̲SSN)(
)
ADMINISTRATION.SSN = FL (1..MAX ̲SSN)
ANALYZE ̲MONTH (FL, MAX ̲MONTH)(FL, CC)
CC = NOT ̲OK? ERROR ̲COLLECTION(ILLEGAL ̲MONTH)(
)
ADMINISTRATION.MONTH ̲ID = FL(1..MAX ̲MONTH)
FL J2: ANALYZE ̲DTG(FL, FLN)(BINARY ̲DTG, CC)
CC = NOT ̲OK? ERROR ̲COLLECTION(INVALID ̲DTG)(
)
ADMINISTRATION. RELEASE ̲DTG = BINARY ̲DTG
FL J3: ADMINISTRATION.DISPLAY ̲NAME =
FL(1..FLN)
END ANALYSIS ̲FL CASE
RESULT = OK
WRITE ̲TEXT = TRUE
TEXT ̲POINTER = FL ̲POINTER FL ̲LENGTH
RETURN
4.2.1.4.14 F̲L̲2̲ ̲A̲n̲a̲l̲y̲s̲i̲s̲ ̲M̲o̲d̲u̲l̲e̲
4.2.1.4.14.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The functions of the FL2 ̲analysis module are:
- detection of FL2
- detection of additional FL2's
- validation and determination of message precedence
- validation of RI's FL2
- detection of CAMPS relevant RI
- detection of SCARS/CCIS relevant RI
- check of Legal RI-type in accordance with message
originator.
- updates IMF (Administration and PLA-RI-field)
4.2.1.4.14.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
Input: R0 = FL ̲Pointer
R1 = Analysis ̲FL
R2 = Previous ̲FL
R3 = FL ̲area
R4 = FL ̲Length
Output: R5 = Result
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) FL2 ̲ANALYSIS (FL ̲POINTER, ANALYSIS ̲FL, PREV ̲FL,
FL ̲AREA, FL ̲LENGTH)(RESULT)
b) FL2 ̲ANALYSIS (R0, R1, R2, R3, R4, R5, R6)
4.2.1.4.14.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
See figures 4.2.1.4-14 for structure FL2 ̲analysis module
.
a) D̲e̲t̲e̲r̲m̲i̲n̲e̲ ̲p̲r̲e̲c̲e̲d̲e̲n̲c̲e̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Determines the precedence of a FL2 or the absence
of same by means of the following procedures:
- Locate after space (4.2.1.6.2.4)
- Locate after character (4.2.1.6.2.3)
- Analyze precedence (4.2.1.6.3.3)
b) A̲n̲a̲l̲y̲z̲e̲ ̲R̲I̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref. 4.2.1.6.3.5 for description
c) E̲r̲r̲o̲r̲ ̲C̲o̲l̲l̲e̲c̲t̲i̲o̲n̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref. 4.2.1.6.1.4 for description
ERROR ̲CODES: INVALID ̲RI
ILLEGAL ̲RI
LIMIT ̲PLA ̲EXCEEDED
LIMIT ̲RI ̲EXCEEDED
d) S̲e̲a̲r̲c̲h̲ ̲L̲o̲c̲a̲l̲ ̲R̲I̲ ̲t̲a̲b̲l̲e̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref. 4.2.1.6.5.4 for description
e) L̲o̲c̲a̲t̲e̲ ̲a̲f̲t̲e̲r̲ ̲s̲p̲a̲c̲e̲
ref. 4.2.1.6.2.4 for description
f) C̲h̲e̲c̲k̲ ̲L̲e̲g̲a̲l̲ ̲R̲I̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Determines if the RI ̲category located during a
search in the Local RI ̲table is legal for that
originating system/device.
g) U̲p̲d̲a̲t̲e̲ ̲P̲L̲A̲ ̲R̲I̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref. 4.2.1.6.4.2 for description
h) U̲p̲d̲a̲t̲e̲ ̲A̲d̲d̲r̲e̲s̲s̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref.4.2.1.6.4.8 for description (abbreviated messages
only)
4.2.1.4.14.4 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲
Administration Field (DBD/001 10.1.1)
PLA ̲RI ̲Field (DBD/001 10.1.6
Local ̲RI ̲table (DBD/001 6.8)
FL ̲Analysis Data (4.2.1.5.8)
TMP ̲DATA (4.2.1.5.2)
QEL ̲DATA (4.2.1.5.3)
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
ADMINISTRATION.ACT ̲PREC (m)
SEND ̲FOR ̲CONVERSION (m)
SEND ̲FOR ̲DISTRIBUTION (m)
PILOT ̲DETECTED
PLA ̲RI.DYNAMIC ̲COUNT (m)
WRITE ̲PLA ̲RI (m)
PLA ̲RI.SELECTED ̲RI (m)
PLA ̲RI.RI ̲mask (m)
INCOMING ̲MSG
QEL ̲ATTRIBUTE
ABBREVIATED ̲TYPE
BELL ̲DETECTED
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
VAR
PREC1: PRECEDENCE ̲TYPE
PREC2: PRECEDENCE ̲TYPE
SAVE ̲FL: INTEGER
NO ̲OF ̲FOUND ̲RI: INTEGER
4.2.1.4.14.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
The FL assumed to be a FL2 can be a first time FL2
or a second time FL2 (additional FL2); the difference
is extracted via the previous analyze FL indicator.
A First time FL2 is validated for precedence prosigns/bell
signals in order to determine the start of a FL2 and
the message-precedence; if the FL2 detected is not
the first FL2 after a pilot, the administration. ACT-prec
is updated.
The remaining line or an additional FL2 should contain
RI's only; if the first group of characters are not
identical to a RI ̲type, the FL is considered as not
being a FL2: If the first group is a RI, the following
groups are considered to be RI's (if not error).
A RI located will be checked for originator-consistency
after a search in the Local RI-table (if not a FL2
after detect of pilot).
Local-RI's will be discarded, while not-local (unknown)
and Local Scars/CCIS RI's will be inserted in the PLA
̲RI ̲field. The flags SEND ̲FOR ̲DISTRIBUTION and SEND
̲FOR ̲CONVERSION is set to indicate Local ̲CAMPS/Not Local
CAMPS located RI's. The distribution-parameter might
be changed later.
Fig. 4.2.1.4-14(1)…01…STRUCTURE FL2-ANALYSIS
F̲L̲2̲ ̲A̲N̲A̲L̲Y̲S̲I̲S̲ (FL ̲POINTER,PREV ̲FL, ANALYSIS ̲FL, FL ̲AREA,
FL ̲LENGTH)(RESULT)
RESULT = NOT ̲OK
FL ̲AREA NE HEADER?
FL = FL ̲POINTER
PREV ̲FL NE FL2? FIRST ̲LINE = FALSE
DETERMINE ̲PRECEDENCE (FL)(FL, PREC, CC)
CC = NOT ̲OK?
FIRST ̲LINE = TRUE
RESULT = OK
PILOT ̲DETECTED?
ADMINISTRATION.ACT ̲PREC = PREC
NO ̲OF ̲FOUND ̲RI = ZERO
LOOP FL ̲LENGTH:
FL(1) = SPACE? FL = FL + 1
ANALYZE ̲RI(FL)(FLN, CC)
CC = NOT ̲OK? NO ̲OF ̲FOUND ̲RI = ZERO? EXIT LOOP
ERROR ̲COLLECTION(INVALID ̲RI)( )
INCREMENT NO ̲OF ̲FOUND ̲RI
PILOT ̲DETECTED? RI ̲CAT = PILOT ̲RI
SEARCH ̲LOCAL ̲RI ̲TABLE(FL, FLN)(RI ̲CAT)
CHECK ̲LEGAL ̲RI (RI ̲CAT)(CC)
CC = NOT ̲OK? ERROR ̲COLLECTION(ILLEGAL ̲RI)( )
continue
continue FL2 ̲ANALYSIS
ABBREVIATED ̲TYPE = FALSE?
PILOT ̲DETECTED?
PREFIX = SPACE
ADDRESSAL = DYNAMIC
UPDATE ̲ADDRESS(FL, FLN, ADDRESSAL, FIRST ̲FL, PREFIX)
(ADS ̲OFFSET)
CASE RI ̲CAT OF:
UNKNOWN: = SEND ̲FOR ̲CONVERSION = TRUE
UPDATE ̲PLA ̲RI(DYNAMIC, RI ̲CAT,
FL, FLN)( )
LOCAL: SEND ̲FOR ̲DISTRIBUTION
= TRUE
LOCAL ̲SC: SEND ̲FOR ̲CONVERSION = TRUE
UPDATE ̲PLA ̲RI(DYNAMIC, RI ̲CAT,
FL,FLN)( )
PILOT ̲RI: UPDATE ̲PLA ̲RI (DYNAMIC, RI ̲CAT,
FL, FLN)( )
END CASE RI ̲CAT
END FL ̲LENGTH LOOP
NO ̲OF ̲FOUND-RI = ZERO?
RESULT = OK
RETURN
D̲E̲T̲E̲R̲M̲I̲N̲E̲ ̲P̲R̲E̲C̲E̲D̲E̲N̲C̲E̲(FL)(FL, PREC, CC)
CC = NOT ̲OK
LOCATE ̲AFTER ̲SPACE(FL)(FLN, CC)
CC = NOT ̲OK?
(FLN ̲ FL) GT INITIAL ̲FL2 ̲SPACE?
FL = FLN
ANALYZE ̲PRECEDENCE(FL)(FL, PREC1, CC1)
ANALYZE ̲PRECEDENCE(FL)(FL, PREC2, CC2)
CC1 = NOT ̲OK? PREC1 = PREC2
CC2 = NOT ̲OK? BELL = FALSE?
PREC1 =IMMEDIATE
PREC1 NE PREC2?
PREC1 LT PREC2? PREC1 = PREC2
CC = OK
PILOT ̲DETECTED?
RETURN
C̲H̲E̲C̲K̲ ̲L̲E̲G̲A̲L̲ ̲R̲I̲ (RI ̲CAT)(CC)
CC = OK
ORIGINATOR = QEL ̲HEADER.MAINTYPE
CASE ORIGINATOR:
RI ̲CAT NE UNKNOWN?
CC = NOT ̲OK
FROM ̲NORMAL ̲PTR?
or RI ̲CAT NE LOCAL ̲RI?
FROM ̲DEDICATED ̲PTR RI ̲CAT = LOCAL ̲RI
AND
INCOMING MSG = TRUE? CC = NOT ̲OK
OTHERWISE: CC = OK
END ORIGINATOR CASE
RETURN
4.2.1.4.15 F̲L̲3̲ ̲A̲n̲a̲l̲y̲s̲i̲s̲ ̲M̲o̲d̲u̲l̲e̲
4.2.1.4.15.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
The functions of the FL3-analysis module are:
- detection of FL3 (DE)
- validation of station ̲ID (DE)
- validation of station ̲ID (DE ̲RI)
- validation of SSN
- validation of File ̲Time
4.2.1.4.15.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
Input: R0 = FL ̲pointer
R1 = Analysis ̲FL
R2 = Previous ̲Fl
R3 = FL ̲area
R4 = FL ̲length
Output: R5 = Result
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) FL3 ̲ANALYSIS(FL ̲POINTER, ANALYSIS ̲FL, PREV ̲FL,
FL ̲AREA, FL ̲LENGTH)(RESULT)
b) FL3 ̲ANALYSIS (R0, R1, R2, R3, R4, R5, R6)
4.2.1.4.15.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
See fig. 4.2.1.4-15 for structure FL3 ̲analysis module
a) F̲L̲ ̲D̲e̲t̲e̲c̲t̲i̲o̲n̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Detects the start sequence "DE(sp) of a FL3.
Ref. 4.2.1.6.2.6 for description
b) A̲n̲a̲l̲y̲z̲e̲ ̲R̲I̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref. 4.2.1.6.3.5 for description
c) E̲r̲r̲o̲r̲ ̲C̲o̲l̲l̲e̲c̲t̲i̲o̲n̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲s̲
ref. 4.2.1.6.1.4 for description
ERROR ̲CODES: INVALID ̲RI
INVALID ̲SSN
INVALID ̲FILE ̲TIME
INCONSISTENT ̲SSN
LIMIT ̲PLA ̲EXCEEDED
d) A̲n̲a̲l̲y̲z̲e̲ ̲N̲u̲m̲e̲r̲i̲c̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.2.2 for description
- validation of SSN
e) A̲n̲a̲l̲y̲z̲e̲ ̲F̲i̲l̲i̲n̲g̲ ̲t̲i̲m̲e̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Converts the assumed ASCII-file-time located last
in a FL3 to an internal binary representation;
if this procedure (via TMP Convert-time) is not
successful, the file-time is declared invalid.
Ref. 4.2.1.6.5.10
f) P̲r̲o̲c̲e̲s̲s̲i̲s̲n̲g̲ ̲E̲r̲r̲o̲r̲ ̲M̲o̲d̲u̲l̲e̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.2.4 for description
g) U̲p̲d̲a̲t̲e̲ ̲A̲d̲d̲r̲e̲s̲s̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.4.8 for description
(abbreviated messages only)
h) A̲S̲C̲I̲I̲ ̲t̲o̲ ̲B̲i̲n̲a̲r̲y̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref. 4.2.1.6.2.7 for description
4.2.1.4.15.4 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲
Administration Field (DBD/001 10.1.1)
Message Type Data (4.2.1.5.7)
TMP data (4.2.1.5.2)
ACP ̲Parameter Field (DBD/001 10.2.2)
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
Administration.STN ̲ID (m)
-"- .SSN (m)
-". .FILE ̲TIME (m)
INTERNAL ̲ASM ̲TYPE
ACP ̲PARAMS.STN ̲ID
ABBREVIATED ̲TYPE
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
None
4.2.1.4.15.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
Having detected the startsequence "DE" of FL3, the
next parameter = DE ̲RI is validated; if successful,
it is placed into the ADMINISTRATION.STN ̲ID. The next
parameter should be the SSN; however, if the message
is of type ASM, this parameter need not be present;
if found (mandatory if not ASM) it is placed into the
ADMINISTRATION-SSN after proper validation.
A consistency check is then performed between the SSN
located during reception procedures (ITS) in FL15 and
the SSN of this FL.
Left in the format ̲Line is the filing ̲time (mandatory);
the group of characters supposed to be ASCII ̲digits
are validated via the system call CONVERT TIME; if
successful the sequence was right and the binary filing-time
will be placed into the administration-field; otherwise
the sequence must be erroneous.
If the message analyzed is of an abbreviated type,
the DE ̲RI is inserted as FM ̲PLA in the Address ̲field.
Fig. 4.2.1.4-15…01…STRUCTURE FL3-ANALYSIS
F̲L̲3̲ ̲A̲N̲A̲L̲Y̲S̲I̲S̲ (FL ̲POINTER,PREV ̲FL, ANALYSIS ̲FL, FL ̲AREA,
FL ̲LENGTH)(RESULT)
RESULT = NOT ̲OK
FL ̲AREA NE HEADER?
FL = FL ̲POINTER
DETECTION ̲FL3(FL)(FLN, CC)
CC = NOT ̲OK?
FL = FLN
ANALYZE ̲RI(FL)(FLN, CC)
CC = NOT ̲OK? ERROR ̲COLLECTION(INVALID ̲RI)( )
ADMINISTRATION.STN ̲ID = FL(1..(FLN-FL))
ABBREVIATED ̲TYPE = FALSE?
ADDRESSAL = DYNAMIC, PREFIX = NONE
UPDATE ̲ADDRESS(FL, FLN, ADDRESSAL, FIRST ̲FL, PREFIX)
(ADS ̲OFFSET)
FL = FLN + 1
ANALYZE ̲NUMERIC (FL, SSN ̲SIZE)(FLN, CC)
CC = NOT ̲OK? INTERNAL ̲ASM ̲TYPE?
ERROR ̲COLLECTION(INVALID ̲SSN)
INTERNAL ̲ASM ̲TYPE? FLN(1) NE SPACE?
ADMINISTRATION.SSN = FL(1..SSN ̲SIZE)
CONSISTENCY ̲CHECK ̲FL3(SSN, ACP ̲PARAMS.SSN)(CC)
CC = NOT ̲OK? ERROR ̲COLLECTION(INCONSISTENT ̲SSN)
FL = FLN +1
ANALYZE ̲FILING ̲TIME(FL)(FILING ̲TIME, CC)
CC = NOT ̲OK? ERROR ̲COLLECTION(INVALID ̲FILE ̲TIME)
ADMINISTRATION.FILE ̲TIME = FILING ̲TIME
RESULT = OK
RETURN…86…1 …02… …02… …02… …02… …02… …02… …02… …02… …02…
C̲O̲N̲S̲I̲S̲T̲E̲N̲C̲Y̲ ̲C̲H̲E̲C̲K̲ ̲F̲L̲3̲(SSN1, SSN2)(CC)
CC = OK
SSN2 = DUMMY ̲SSN?
SSN1 = SSN2?
CC = NOT ̲OK
RETURN
4.2.1.4.16 F̲L̲4̲ ̲A̲n̲a̲l̲y̲s̲i̲s̲ ̲M̲o̲d̲u̲l̲e̲
4.2.1.4.16.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The functions of the FL4 ̲analysis module are
- detection of FL4 (ZNR/ZNY)
- consistency check between security warning prosign
and security operating signal.
- validation of classification
- validation of special handling designators
- validation of operating signals of FL4
orbit control at detection of the operating signal
"ZXY"
- detection of the operating signal "ZGC"
- updates IMF (administration Field)
4.2.1.4.16.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
Input: R0 = FL ̲pointer
R1 = Analysis FL
R2 = Previous FL
R3 = FL ̲area
R4 = FL ̲length
Output: R5 = Result
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) FL4 ̲ANALYSIS(FL ̲POINTER, ANALYSIS ̲FL, PREV ̲FL,
FL ̲AREA, FL ̲LENGTH)(RESULT)
b) FL4 ̲ANALYSIS (R0, R1, R2, R3, R4, R5, R6)
4.2.1.4.16.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
See fig. 4.2.1.4-16 for structure FL4 ̲analysis module.
a) F̲L̲ ̲D̲e̲t̲e̲c̲t̲i̲o̲n̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Detects FL4 based upon the security operating signals
ZNR or ZNY (+ space)
Ref. 4.2.1.6.2.6 for description.
b) A̲n̲a̲l̲y̲z̲e̲ ̲c̲l̲a̲s̲s̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
Ref. 4.2.1.6.3.1 for description
c) E̲r̲r̲o̲r̲ ̲C̲o̲l̲l̲e̲c̲t̲i̲o̲n̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref. 4.2.1.4.1.4 for description
ERROR ̲CODES: INCONSISTENT ̲SECURITY ̲OPR ̲SIG
ILLEGAL ̲CLASSIFICATION
ILLEGAL ̲SPECIAL ̲HANDLING
INVALID ̲OPR ̲SIG
TOO ̲HIGH ̲CLASSIFICATION
d) A̲n̲a̲l̲y̲z̲e̲ ̲S̲p̲e̲c̲i̲a̲l̲ ̲H̲a̲n̲d̲l̲i̲n̲g̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.3.2 for description
e) U̲p̲d̲a̲t̲e̲ ̲S̲p̲e̲c̲i̲a̲l̲ ̲H̲a̲n̲d̲l̲i̲n̲g̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.4.1 for description
f) L̲o̲c̲a̲t̲e̲ ̲a̲f̲t̲e̲r̲ ̲S̲p̲a̲c̲e̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.2.4 for description
g) A̲n̲a̲l̲y̲z̲e̲ ̲O̲p̲e̲r̲a̲t̲i̲n̲g̲ ̲S̲i̲g̲n̲a̲l̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.3.7 for description
h) U̲p̲d̲a̲t̲e̲ ̲O̲p̲e̲r̲a̲t̲i̲n̲g̲ ̲S̲i̲g̲n̲a̲l̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.4.3 for description
i) L̲o̲c̲a̲t̲e̲ ̲C̲h̲a̲r̲a̲c̲t̲e̲r̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref. 4.2.1.6.2.5 for description
4.2.1.4.16.4 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲
Administration Field (DBD/001 10.1.1)
FL ̲Analysis Data (4.2.1.5.8)
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
ACP ̲PARAMS.SEC ̲WARNING
ADMINISTRATION.CLASS (m)
-"- .SPEC ̲HANDL ̲INST (m)
-"- .MSG ̲HANDL ̲FL4 ̲DYNAMIC (m)
-"- .MSG ̲HANDL ̲FL4 ̲STATIC (m)
ZGC ̲DETECTED (m)
PILOT ̲DETECTED
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
SEC ̲WARNING : INTEGER
4.2.1.4.16.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
Having detected a FL4, the security operating signal
indicating a FL4 is compared with the during reception
procedures located security warning prosigns in FL1
(ZNR = UU, ZNY = HH).
The next parameter is the mandatory classification
(5 x classification ̲prosign); the following parameters
(if any) can be either special handling designators
or/and operating signals; if the next character is
a slash (/) the following group is assumed to be a
special handling designator of same type as the classification
above described. Classification and special handling
designators are placed in the administration field
after successful validation unless the FL4 for analysis
is not the one detected after a pilot.
The final parameter (if any) can be operating signals;
the first group is validated and if successful resulting
in update of a FL4 msg-handling of the administration
field.
Next the sequence of operating signals are searched
for detection of ZGC and/or ZXY.
If ZGC is detected no flash ack shall be sent.
If ZXY is detected, the following value is examined;
should this value be equal to 1, the message will be
considered as subject for orbit-control and marked
for garble correction.
Fig. 4.2.1.4-16…01…STRUCTURE FL4 ̲ANALYSIS
F̲L̲4̲ ̲A̲N̲A̲L̲Y̲S̲I̲S̲ (FL ̲POINTER, PREV ̲FL, ANALYSIS ̲FL, FL
̲AREA,
FL ̲LENGTH)(RESULT)
RESULT = NOT ̲OK
FL ̲AREA NE HEADER?
FL = FL ̲POINTER
DETECTION ̲FL4, (FL)(FLN, SEC ̲OPR ̲SIC, CC)
CC = NOT ̲OK?
FL4 ̲CONSISTENCY ̲CHECK(SEC ̲OPR ̲SIC
ACP ̲PARAMS.SEC ̲WARNING)
(CC)
CC = NOT ̲OK? ERROR ̲COLLECTION(INCONSISTENT ̲
SECURITY ̲
OPERATING ̲SIGNAL)
FL = FLN
ANALYZE ̲CLAS ̲SPEC(FL)(FLN, CLASS, CC)
CC = NOT ̲OK? ERROR ̲COLLECTION(ILLEGAL ̲CLASSIFICATION)
PILOT ̲DETECTED?
ADMINISTRATION.CLASS = CLASS
CLASS GT ACCESS ̲PROFILE.CLASS? ERROR ̲COLLECTION
(TOO ̲HIGH ̲CLASSIFICATION)(
)
LOOP SPECIAL ̲HANDLING:
FL = FLN
FLN NE "/"? EXIT LOOP
ANALYZE ̲CLASS ̲SPEC (FL)(FLN, SPEC ̲HANDL,CC)
CC = EOLN? EXIT LOOP
CC = NOT ̲OK? ERROR ̲COLLECTION(ILLEGAL ̲SPECIAL
̲HANDL)
PILOT ̲DETECTED?
UPDATE ̲SPEC ̲HANDLING (SPEC ̲HANDL)( )
END SPECIAL HANDLING LOOP
continues
continued FL4 ̲ANALYSIS
LOCATE ̲AFTER ̲SPACE(FL)(FLN, CC)
CC = NOT ̲OK?
ANALYZE ̲OPR ̲SIG(FL)(FLN, CC)
CC = NOT ̲OK? ERROR ̲COLLECTION(INVALID ̲OPR ̲SIG)( )
FL(1..3) = "ZGC" = ZGC ̲DETECTED = TRUE
PILOT ̲DETECTED? OPR ̲FL = STATIC
OPR ̲FL = DYNAMIC
UPDATE ̲OPR ̲SIG(FL, FLN, NEXT ̲FL, OPR ̲FL)( )
RESULT = OK
RETURN
4.2.1.4.17 F̲L̲4̲A̲ ̲A̲n̲a̲l̲y̲s̲i̲s̲ ̲M̲o̲d̲u̲l̲e̲
4.2.1.4.17.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The functions of the FL4A-analysis module are:
- detection of a FL4 containing relay-instructions
- detection of a message for relay-assistance.
- validation of RI's of the relay-instruction
- detection of CAMPS responsible relaying
- determination of CAMPS/Non-CAMPS
Local distribution attached the relay-instruction
- updates IMF (PLA ̲RI ̲field incl. Relay-fields)
4.2.1.4.17.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
Input: R0 = FL ̲pointer
R1 = Analysis-FL
R2 = Previous FL
R3 = FL ̲area
R4 = FL ̲length
Output: R5 = Result
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) FL4A ̲ANALYSIS (FL ̲POINTER, ANALYSIS ̲FL, PREV ̲FL,
FL ̲AREA, FL ̲LENGTH)(RESULT)
b) FL4A ̲ANALYSIS (R0, R1, R2, R3, R4, R5, R6)
4.2.1.4.17.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
See fig. 4.2.1.4-17 for structure FL4A-analysis module.
a) FL D̲e̲t̲e̲c̲t̲i̲o̲n̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Searches the FL for detection of the sequence (SP)
T (SP) which identifies a relay-instruction.
Ref. 4.2.1.6.2.6 for description
b) E̲r̲r̲o̲r̲ ̲C̲o̲l̲l̲e̲c̲t̲i̲o̲n̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref. 4.2.1.6.1.4 for description
ERROR ̲CODES: RELAY ̲ASSISTANCE
INVALID ̲RI
ILLEGAL ̲RELAY ̲INSTRUCTION
LIMIT ̲RI ̲EXCEEDED
c) A̲n̲a̲l̲y̲z̲e̲ ̲R̲I̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.3.5 for description
d) S̲e̲a̲r̲c̲h̲ ̲L̲o̲c̲a̲l̲ ̲R̲I̲ ̲t̲a̲b̲l̲e̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.5.1 for description
e) L̲o̲c̲a̲t̲e̲ ̲a̲f̲t̲e̲r̲ ̲s̲p̲a̲c̲e̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.2.4 for description
f) U̲p̲d̲a̲t̲e̲ ̲R̲e̲l̲a̲y̲ ̲i̲n̲s̲t̲r̲u̲c̲t̲i̲o̲n̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Assigns a new dynamic or static relay-record (if
necessary) and appends a RI to the new/already
existing record. Negative completion is returned
in case too many relay-instructions or too many
RI's contained.
g) U̲p̲d̲a̲t̲e̲ ̲P̲L̲A̲ ̲R̲I̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.4.2 for description
4.2.1.4.17.4 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) Data References
PLA ̲RI ̲Field (DBD/001 10.1.6)
FL ̲ANALYSIS DATA (4.2.1.5.8)
TMP ̲DATA (4.2.1.5.2)
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
QEL ̲ATTRIBUTE
PLA ̲RI. DYNAMIC ̲COUNT (m)
PLA ̲RI. SELECTED ̲RI (m)
PLA ̲RI. RI ̲MASK (m)
PLA ̲RI. RELAY ̲DYNAMIC ̲COUNT (m)
PLA ̲RI. RELAY ̲STATIC ̲COUNT (m)
PLA ̲RI. RELAY ̲RECORD (m)
QEL ̲HEADER. MAINTYPE
PILOT ̲DETECTED
RELAY ̲INSTRUCTION ̲DETECTED (m)
CAMPS ̲LOCAL ̲RELAY (m)
SEND ̲FOR ̲RELAYING (m)
SEND ̲FOR ̲DISTRIBUTION (m)
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
RELAY ̲CAT: DYN ̲STA ̲TYPE
NO ̲OF ̲RELAYS: INTEGER
RELAY ̲POINTER: INTEGER
T ̲POSITION : INTEGER
4.2.1.4.17.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
The very first subject of interest in a FL containing
relay-instructions is to detect an incomplete instruction
indicated with a "T" at the beginning of the line;
if detected the incoming MSO will finish the instruction
during garble procedures. Otherwise the line is searched
for a "T" surrounded with spaces; if not found the
FL is assumed not to contain relay-instructions. The
first RI will indicate whether CAMPS is responsible
for relaying or not; if local CAMPS RI and the message
is received from NICS ̲TARE or a TRC/Point-to-point
and the FL4A is in the dynamic header-part - then CAMPS
might be responsible for the relaying.
The second RI (after the "T") indicates whether CAMPS
shall receive the message locally or not; (=CAMPS-local
if local-RI) . The second and the following RI's should
be the external-RI's to whom the message shall be transmitted;
these RI's are collected in the PLa ̲RI ̲Records and
marked as relay-RI's.
All relay-instructions are collected in the relay-records
up to max allowed; if the allowed values should be
exceeded, MSO can during garble procedures decide which
relay instructions shall be discarded.
Fig. 4.2.1.4-17…01…STRUCTURE FL4A ANALYSIS
F̲L̲4̲A̲ ̲A̲N̲A̲L̲Y̲S̲I̲S̲ (FL ̲POINTER, PREV ̲FL, ANALYSIS ̲FL, FL
̲AREA,
FL ̲LENGTH)(RESULT)
RESULT = NOT ̲OK
FL ̲AREA NE HEADER?
FL = FL ̲POINTER
FL ̲POINTER(1) = "T"? FL(+1) NE SPACE?
ERROR ̲COLLECTION (RELAY ̲ASSISTANCE)(
)
RESULT = OK
DETECTION ̲FL4A(FL)(CC)
CC = NOT ̲OK?
RELAY ̲INSTRUCTION ̲DETECTED = TRUE
RESULT = OK
ANALYZE ̲RI(FL)(FLN, CC)
CC = NOT ̲OK? ERROR ̲COLLECTION(INVALID ̲RI)
QEL ̲HEADER.MAINTYPE NE
FROM ̲NICS ̲TARE or
FROM TRC ̲POINT?
PILOT ̲DETECTED?
SEARCH ̲LOCAL ̲RI ̲TABLE(FL, FLN)(RI ̲CAT)
RI ̲CAT = LOCAL ̲RI? SEND ̲FOR ̲RELAYING = TRUE
PILOT ̲DETECTED? RELAY ̲CAT = STATIC
RELAY ̲CAT = DYNAMIC
UPDATE ̲RELAY ̲INSTRUCTION(FL, FLN, ZERO, RELAY ̲CAT)(CC)
CC = NOT ̲OK? ERROR ̲COLLECTION(ILLEGAL ̲RELAY ̲INSTRUCTIONS)(
)
FL = FLN + 1
continues
continued FL4A ̲ANALYSIS
NO ̲OF ̲RELAY = ZERO
LOOP MAX ̲RELAY ̲RI(EOLN)
FL = FL + 1
INCREMENT NO ̲OF ̲RELAY
ANALYZE ̲RI (FL)(FLN, CC)
CC = NOT ̲OK? EOLN? NO ̲OF ̲RELAY GT ONE?
ERROR ̲COLLECTION(INVALID ̲RI)
RELAY ̲CAT = DYNAMIC
PILOT ̲DETECTED? RELAY ̲CAT = STATIC
QEL ̲HEADER. MAINTYPE=
FROM ̲NICS ̲TARE or
FROM ̲TRC ̲POINT?
SEARCH ̲LOCAL ̲RI ̲TABLE(FL, FLN)(RI ̲CAT)
RI ̲CAT NE LOCAL ̲RI? RI ̲CAT = RELAY ̲RI
UPDATE ̲PLA ̲RI (DYNAMIC,FL,FLN)
( )
NO ̲OF ̲RELAYS NE ONE?
CAMPS ̲RELAY = TRUE
NO ̲OF ̲RELAYS = ONE? CAMPS ̲LOCAL ̲RELAY = TRUE
UPDATE ̲RELAY ̲INSTRUCTION(FL, FLN, NO ̲OF ̲RELAY),RELAY
̲CAT
(CC)
CC = NOT ̲OK? ERROR ̲COLLECTION(ILLEGAL ̲RELAY ̲INSTRUCTION)()
END LOOP MAX ̲RI
RETURN
U̲P̲D̲A̲T̲E̲ ̲R̲E̲L̲A̲Y̲ ̲I̲N̲S̲T̲R̲U̲C̲T̲I̲O̲N̲ (FL, FLN, NO ̲OF ̲RELAY,
RELAY ̲CAT)(CC)
USING PLA ̲RI ̲FIELD
NO ̲OF ̲RELAY NE ZERO?
CASE RELAY ̲CAT ̲COUNT:
DYNAMIC: INCREMENT RELAY ̲DYNAMIC ̲COUNT
STATIC: INCREMENT RELAY ̲STATIC ̲COUNT
END RELAY ̲CAT ̲COUNT CASE
CASE RELAY ̲CAT ̲POINTER:
DYNAMIC: RELAY ̲POINTER = RELAY ̲DYNAMIC ̲POINTER
RELAY ̲COUNT = RELAY ̲DYNAMIC ̲COUNT
STATIC: RELAY ̲POINTER = RELAY ̲STATIC ̲POINTER
RELAY ̲COUNT = RELAY ̲STATIC ̲COUNT
END RELAY ̲CAT ̲POINTER CASE
RELAY ̲POINTER = RELAY ̲REC ̲SIZE * (RELAY ̲COUNT - 1)
RELAY ̲COUNT GT RELAY ̲INSTR ̲MAX? CC = NOT ̲OK
or NO ̲OF ̲RELAY GT RELAY ̲MAX?
NO ̲OF ̲RELAY = ZERO? RELAY ̲RECORD(RELAY ̲POINTER) = SPACE
RI ̲POSITION = RELAY ̲POINTER + (RI ̲MAX + NO ̲OF ̲RELAY)
RI ̲POSITION = FL(1..(FLN ̲FL))
RETURN
4.2.1.4.18 F̲L̲5̲ ̲A̲n̲a̲l̲y̲s̲i̲s̲ ̲M̲o̲d̲u̲l̲e̲
4.2.1.4.18.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The functions of the FL5-analysis module are:
- detection of FL5 based upon detection of a single
precedence prosign.
- validation of info-precedence (if any)
- validation of DTG
- validation of operating signals FL5
- detection of a readdressed message
- updates IMF (administration field) in accordance
with readdressal-detection.
4.2.1.4.18.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
Input: R0 = FL ̲pointer
R1 = Analysis FL
R2 = Previous FL
R3 = FL ̲area
R4 FL ̲length
Output: R5 = Result
C̲a̲l̲l̲ ̲s̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) FL5 ̲ANALYSIS(FL ̲POINTER, ANALYSIS ̲FL, PREV ̲FL,
FL ̲AREA
FL ̲LENGTH)(RESULT)
b) FL5 ̲ANALYSIS (R0, R1, R2, R3, R4, R5, R6)
4.2.1.4.18.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
See fig. 4.2.1.4-18 for structure FL5 analysis module.
a) A̲n̲a̲l̲y̲z̲e̲ ̲P̲r̲e̲c̲e̲d̲e̲n̲c̲e̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref. 4.2.1.6.3.3 for description
b) E̲r̲r̲o̲r̲ ̲C̲o̲l̲l̲e̲c̲t̲i̲o̲n̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref. 4.2.1.6.1.4 for description
Error-Codes: INVALID ̲PRECEDENCE
INVALID ̲DTG
INVALID ̲OPR ̲SIG
c) A̲n̲a̲l̲y̲z̲e̲ ̲D̲T̲G̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref. 4.2.1.6.5.9 for description
d) A̲n̲a̲l̲y̲z̲e̲ ̲O̲p̲r̲ ̲s̲i̲g̲.̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref. 4.2.1.6.3.7 for description
e) U̲p̲d̲a̲t̲e̲ ̲O̲p̲r̲-̲s̲i̲g̲.̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref. 4.2.1.6.4.3 for description
f) L̲o̲c̲a̲t̲e̲ ̲a̲f̲t̲e̲r̲ ̲s̲p̲a̲c̲e̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref. 4.2.1.6.2.4 for description
g) A̲n̲a̲l̲y̲z̲e̲ ̲N̲u̲m̲e̲r̲i̲c̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref. 4.2.1.6.2.2 for description
4.2.1.4.18.4 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲
Administration Field (DBD/001 10.1.1)
TMP-data (4.2.1.5.2)
FL ̲Analysis data (4.2.1.5.8)
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
ADMINISTRATION.INFO ̲PREC (m)
ADMINISTRATION.RELEASE ̲DTG (m)
ADMINISTRATION.READDRESSAL ̲DTG (m)
ADMINISTRATION.MSG ̲HANDL ̲FL5 ̲DYNAMIC (m)
ADMINISTRATION.MSG ̲HANDL ̲FL5 ̲STATIC (m)
FL5 ̲DETECTED (m)
READDRESSAL ̲DETECTED (m)
QEL ̲ATTRIBUTE
c) L̲o̲c̲a̲l̲ ̲d̲a̲t̲a̲
None
4.2.1.5.18.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
After detection of a valid precedence prosign followed
by a space a FL5 is found valid. The second parameter
may be the info-precedence prosign; if true the precedence
is placed into the ADMINISTRATION.INFO ̲PREC. Otherwise
there must be a DTG in the following parameter; this
is determined via a system call to TMP (convert time)
from where the binary internal representation of a
DTG is returned; this DTG is placed into the RELEASE
̲DTG or READDRESSAL ̲DTG of the administration field
if true. The final parameters (if any) are operating
signals which after validation (first group) are placed
into the MSG ̲HANDL ̲FL5 dynamic or static in accordance
with the readdressal-indicator.
Fig. 4.2.1.4-18…01…STRUCTURE FL5 ̲ANALYSIS
F̲L̲5̲ ̲A̲N̲A̲L̲Y̲S̲I̲S̲(FL ̲POINTER, PREV ̲FL, ANALYSIS ̲FL, FL ̲AREA,
FL ̲LENGTH)(RESULT)
RESULT = NOT ̲OK
FL ̲AREA NE HEADER?
FL + 1 NE SPACE?
ANALYZE ̲PRECEDENCE(FL)(FL, PREC, CC)
CC = NOT ̲OK? FL5 ̲DETECTED? READDRESSAL ̲DETECTED =TRUE
SC ̲PLAINDRESS ̲TYPE? RESULT
= GARBLE
FL5 ̲DETECTED=TRUE
FL = FL + 1
ANALYZE ̲PRECEDENCE(FL)(FL, PREC, CC)
CC = NOT ̲OK? FL+1 NE SPACE?
ERROR ̲COLLECTION(INVALID ̲PRECEDENCE)(
)
READDRESSAL ̲DETECTED?
ADMINISTRATION.INFO ̲PREC = PREC
FL = FL + 1
FLN = FL ̲POINTER + FL ̲LENGTH
(FLN - FL) LE DTG ̲SIZE? FLN - 3 = SPACE? FLN = FLN
- 2
ANALYZE ̲DTG(FL, FLN)(BINARY ̲DTG, CC)
CC = NOT ̲OK? ERROR ̲COLLECTION(INVALID ̲DTG)( )
READDESSAL ̲DETECTED? ADMINISTRATION. READDRESSAL. DTG
= BINARY ̲DTG
ADMINISTRATION. RELEASE ̲DTG = BINARY ̲DTG
continues…86…1 …02… …02… …02… …02… …02… …02… …02… …02… …02…
continued FL5 ̲ANALYSIS
EOLN?
FL = FLN
ANALYZE ̲OPR ̲SIG(FL)(FLN, CC)
CC = NOT ̲OK? ERROR ̲COLLECTION(INVALID ̲OPR ̲SIG)( )
OPR ̲FL = DYNAMIC
READDRESSAL ̲DETECTED? OPR ̲FL= STATIC
UPDATE ̲OPR ̲SIG (FL, FLN, NEXT ̲FL, OPR ̲FL)( )
RESULT = OK
RETURN
4.2.1.4.19 F̲L̲6̲ ̲A̲n̲a̲l̲y̲s̲i̲s̲ ̲M̲o̲d̲u̲l̲e̲
4.2.1.4.19.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The functions of the FL6 ̲analysis module are:
- detection of FL6 (FM)
- conversion of FM ̲PLA to pla ̲ref.
- update IMF in accordance with readdressal part
of message or not.
(administration and address-field)
4.2.1.4.19.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
Input: R0 = FL ̲pointer
R1 = Analysis ̲FL
R2 = Previous ̲FL
R3 = FL ̲area
R4 = FL ̲length
Output: R5 = Result
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) FL6 ̲ANALYSIS(FL ̲POINTER, ANALYSIS ̲FL, PREV ̲FL,
FL ̲AREA,
FL ̲LENGTH)(RESULT)
b) FL6 ̲ANALYSIS(R0, R1, R2, R3, R4, R5, R6)
4.2.1.4.19.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
See fig. 4.2.1.4-19 for structure FL6-analysis module.
a) F̲L̲ D̲e̲t̲e̲c̲t̲i̲o̲n̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Detects the start-sequence "FM" (sp) of a FL6.
Ref. 4.2.1.6.2.6 for description
b) S̲e̲a̲r̲c̲h̲ ̲L̲o̲c̲a̲l̲ ̲P̲L̲A̲ ̲t̲a̲b̲l̲e̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.5.1 for description
c) S̲e̲a̲r̲c̲h̲ ̲P̲L̲A̲ ̲t̲a̲b̲l̲e̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.5.2 for description
d) U̲p̲d̲a̲t̲e̲ ̲A̲d̲d̲r̲e̲s̲s̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.4.8 for description
e) L̲o̲c̲a̲t̲e̲ ̲a̲f̲t̲e̲r̲ ̲s̲p̲a̲c̲e̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.2.4 for description
f) E̲r̲r̲o̲r̲ ̲C̲o̲l̲l̲e̲c̲t̲i̲o̲n̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.1.4 for description. Error Code:
Missing ̲PLA
Limit ̲PLA ̲EXCEEDED
4.2.1.4.19.4 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲
Administration Field (DBD/001 10.1.1)
Address Field (DBD/001 10.1.3)
PLA ̲TABLE (DBD/001 6.5)
LOCAL ̲PLA ̲TABLE (DBD/001 6.6)
FL ̲Analysis Data (4.2.1.5.8)
TMP Data (4.2.1.5.2)
View Data (4.2.1.5.3)
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
ADMINISTRATION.ORIGINATOR ̲PLA ̲NUMBER (m)
READDRESSAL ̲DETECTED
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
None
4.2.1.4.19.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
Having detected the correct startsequence (=FM(space))
of a FL6 the end of the Line is located.
The sequence of characters in between should be the
FM ̲PLA.
If the FL6 is the second FL6 detected in the message
(readdressal) the FM ̲PLA shall only be appended to
the already existing records of the address ̲field;
otherwise the FM ̲PLA will be inserted as the first
address-record of the address-field after having used
the FM ̲PLA in a search into the Local PLA-table and
if not found then in the global PLA-table with the
purpose to extract the PLA-ref for insertion into the
Administration-field.
Fig. 4.2.1.4-19…01…STRUCTURE FL6 ANALYSIS
F̲L̲6̲ ̲A̲N̲A̲L̲Y̲S̲I̲S̲ (FL ̲POINTER, PREV ̲FL, ANALYSIS ̲FL, FL
̲AREA,
FL ̲LENGTH)(RESULT)
RESULT = NOT ̲OK
FL ̲AREA NE HEADER?
FL = FL ̲POINTER
DETECTION ̲FL6(FL)(FLN, CC)
CC = NOT ̲OK
FL(+1) = IOC ̲START ̲BYTE? ERROR ̲COLLECTION(MISSING ̲PLA)
OR SPACE
ADDRESSAL = DYNAMIC
FLN = (FL ̲LENGTH + FL ̲POINTER) - FLN
READDRESSAL ̲DETECTED? ADDRESSAL = STATIC
SEARCH ̲LOCAL ̲PLA ̲TABLE(FL, FLN)(PLA ̲REF, HQ, CC)
CC = NOT ̲OK? SEARCH ̲PLA ̲TABLE(FL, FLN)(PLA ̲REF, CC)
CC = NOT ̲OK?
ADMINISTRATION.ORIGINATR ̲PLA ̲NUMBER = PLA ̲REF
PREFIX = NONE
FIRST ̲FL = TRUE
UPDATE ̲ADDRESS(FL, FLN, ADDRESSAL, FIRST ̲FL, PREFIX)
(PLA ̲REF)
RESULT = OK
RETURN
4.2.1.4.20 F̲L̲7̲.̲8̲ ̲A̲n̲a̲l̲y̲s̲i̲s̲ ̲M̲o̲d̲u̲l̲e̲
4.2.1.4.20.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The functions of the FL7 ̲8 analysis module are:
- detection of FL7 (TO) and FL8 (Info)
- detection of CAMPS Local Headquarters derived via
a PLA or an AIG
- consistency check between a local RI preceding
a local PLA (both local?)
- detection of ZEN preceding a PLA
- conversion PLA to PLA ̲ref's of narrative and Data
messages incoming from CCIS in E1-format; detection
of unknown PLA (= X-pla) and compression of duplicate
PLA ̲ref's.
- coupling of RI found in FL2 with RI preceeding
a PLA of outgoing messages.
4.2.1.4.20.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
Input: R0 = FL ̲pointer
R1 = Analysis FL
R2 = Previous FL
R3 = FL Area
R4 = FL Length
Output: R5 = Result
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) FL7 ̲8 ANALYSIS(FL ̲POINTER; ANALYSIS ̲FL ,PREV ̲FL,
FL ̲AREA,
FL ̲LENGTH)(RESULT)
b) FL7 ̲8 ANALYSIS(R0, R1, R2, R3, R4, R5, R6)
4.2.1.4.20.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
See fig. 4.2.1.4-20(1) for structure FL7 ̲8
Analysis Module
a) F̲L̲ ̲D̲e̲t̲e̲c̲t̲i̲o̲n̲ ̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Detects the startsequence "TO" (space) of a FL7.
Detects the startsequence "INFO" (space) of a FL8.
Ref. 4.2.1.6.2.6 for description
b) L̲o̲c̲a̲t̲e̲ ̲a̲f̲t̲e̲r̲ ̲s̲p̲a̲c̲e̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref. 4.2.1.6.2.4 for description
c) A̲n̲a̲l̲y̲z̲e̲ ̲P̲r̲e̲f̲i̲x̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Detects if a PLA is preceeded with a RI, a ZEN-indication
or if the address is an AIG.
The following shared procedures are used:
- FL-detection (ref. 4.2.1.6.1.4)
- Analyze RI (ref. 4.2.1.6.3.5)
See fig. 4.2.1.4-20 (2) for structure
d) A̲n̲a̲l̲y̲z̲e̲ ̲S̲i̲n̲g̲l̲e̲ ̲P̲L̲A̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Detects CAMPS Local HQ derived from a PLA not preceeded
with anything; if the single PLA is located in
a message received from CCIS the global PLA ̲ref
will be extracted (if the PLA is not local).
The following shared procedures are used:
- Search Local PLA ̲table (ref. 4.2.1.6.5.1)
- Search PLA ̲table (ref. 4.2.1.6.5.2)
- Locate PLA-ref (ref. 4.2.1.6.4.7)
See fig. 4.2.1.4-20(3) for structure.
e) A̲n̲a̲l̲y̲z̲e̲ ̲Z̲E̲N̲ ̲P̲L̲A̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Detects CAMPS local HQ derived from a PLA preceded
with a ZEN.
See fig. 4.2.1.4-20 (3) for structure
f) A̲n̲a̲l̲y̲z̲e̲ ̲R̲I̲ ̲P̲L̲A̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Detects CAMPS local HQ derived from a PLA and compares
the status of this PLA with the status of the RI
preceeding the PLA (test if both Local - or both
not local)
Also it checks whether the same RI has been found
in FL2 and couples the set in a PLA ̲RI ̲record if
true (not if local.
The following shared procedures are used:
- Search local RI ̲table (ref. 4.2.1.6.5.4)
- Search local PLA ̲table (ref. 4.2.1.6.5.1)
- Locate PLA ̲RI (ref. 4.2.1.6.4.5)
- Delete PLA ̲RI (ref. 4.2.1.6.4.6)
- Error Collection (ref. 4.2.1.6.1.4)
See fig. 4.2.1.4-20(4) for structure.
g) A̲n̲a̲l̲y̲z̲e̲ ̲A̲I̲G̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Validates the 4-digit AIG ̲number and extracts the
PLA ̲ref's associated to the AIG ̲number.
Extracts local HQ associated to the PLA ̲ref's.
PLA ̲refs associated to global PLA's are appended
to the records of the PLA ̲RI ̲Field if a record
containing the same PLA ̲ref does not exist.
The following shared procedures are used:
- Locate After space (ref. 4.2.1.6.2.4)
- Analyze numeric (ref. 4.2.1.6.2.2)
- Search AIG-table (ref. 4.2.1.6.5.7)
- Error Collection (ref. 4.2.1.6.1.4)
See fig. 4.2.1.4-20(5) for structure
h) E̲r̲r̲o̲r̲ ̲C̲o̲l̲l̲e̲c̲t̲i̲o̲n̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.1.4 for description
Error ̲Codes: MISSING ̲ADDRESS
RI ̲PLA ̲INCONSISTENCY
UNKNOWN ̲AIG
INVALID ̲AIG
LIMIT ̲PLA ̲EXCEEDED
LIMIT ̲RI ̲EXCEEDED
i) U̲p̲d̲a̲t̲e̲ ̲A̲d̲d̲r̲e̲s̲s̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲s̲
ref. 4.2.1.6.4.8 for description
j) U̲p̲d̲a̲t̲e̲ ̲P̲L̲A̲ ̲R̲I̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲
ref. 4.2.1.6.4.6 for description
k) L̲o̲c̲a̲t̲e̲ ̲P̲L̲A̲ ̲R̲E̲F̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref. 4.2.1.6.4.7 for description
l S̲e̲a̲r̲c̲h̲ ̲L̲o̲c̲a̲l̲ ̲P̲L̲A̲ ̲R̲E̲F̲
Ref. 4.2.1.6.5.8 to description
4.2.1.4.20.4 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) D̲a̲t̲a̲ ̲R̲e̲f̲e̲r̲e̲n̲c̲e̲s̲
Administration ̲field (DBD/001 10.1.1)
Address ̲field (DBD/001 10.1.3)
PLA ̲RI field (DBD/001 10.1.6)
AIG ̲table (DBD/001 6.4)
PLA ̲table (DBD/001 6.5)
Local PLA ̲table (DBD/001 6.6)
Local RI ̲table (DBD/001 6.8)
FL ̲Analysis Data (4.2.1.5.8)
TMP Data (4.2.1.5.2)
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
ADMINISTRATION.NUMBER ̲OF ̲TO ̲ADD (m)
"-" .NUMBER ̲OF ̲INFO ̲ADD (m)
"-" .NUMBER ̲OF ̲READD ̲TO ̲ADD (m)
"-" .NUMBER ̲OF ̲READD ̲INFO ̲ADD (m)
"-" .GROUP ̲TO ̲OFFSET (m)
"-" .GROUP ̲INFO ̲OFFSET (m)
"-" .GROUP ̲READD ̲TO ̲OFFSET (m)
"-" .GROUP ̲READD ̲INFO ̲OFFSET (m)
ADDRESS ̲FIELD ̲RECORD (m)
PLA ̲RI.DYNAMIC ̲COUNT (m)
PLA ̲RI.STATIC ̲COUNT (m)
PLA ̲RI ̲FIELD ̲RECORD (m)
READDRESSAL ̲DETECTED
HQ ̲MASK (m)
QEL ̲ATTRIBUTE
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
PLA ̲REF: INTEGER
ADS ̲OFFSET: INTEGER
PLA ̲COUNT: INTEGER
PLA ̲INDEX: INTEGER
NO ̲OF ̲PLA: INTEGER
FLA, FLB: INTEGER
4.2.1.4.20.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲ ̲
The FL for analysis might be an additional FL7 or FL8;
this is determined on basis of the previous analyzed
FL; if this is equal to the FL for analysis the line
is accepted as an additional FL7 or FL8. If it is first
time the startsequence "TO" (FL7) or "INFO" (FL8) is
checked and if successful the offsets of the administration
field updated when the address ̲record is updated.
Before updating the address ̲field the beginning of
the assumed address is searched in order to detect
some prefix; the prefix can be ZEN, RI, AIG or not
existing (single PLA).
See descriptions Analyze single PLA, analyze RI ̲PLA
and Analyze AIG ̲PLA for detailed description.
If a local HQ is derived by above mentioned procedures
the HQ-mask is updated and the local PLA flagged as
ZEN in the PLA ̲RI ̲Record (no effect on the format displayed
locally inside CAMPS); the reason is to prevent another
local copy to be distributed if the message also is
outgoing and shall for conversion after analysis.
Local HQ extracted via a PLA ̲ref associated to an AIG
will not result in a new PLA ̲RI ̲record; also if this
PLA ̲ref already exists among the existing PLA ̲RI records
no update will be performed; if however, the AIG is
unknown, detected in the readdressed part of the message
(STATIC) or above described procedures extracted all
referenced PLA ̲ref's, one record will be appended the
PLA ̲RI field containing a PLA ̲ref value = ZERO but
with offsets to the Address-field in order to keep
track of synchronization when formatting the message
back into ACP127-format (Conversion subpackage).…86…1
…02… …02… …02… …02… …02… …02… …02… …02… …02…
Fig. 4.2.1.4-20(1)…01…STRUCTURE FL7.8 ANALYSIS
F̲L̲7̲.̲8̲ ̲A̲N̲A̲L̲Y̲S̲I̲S̲(FL ̲POINTER, PREV ̲FL, ANALYSIS ̲FL, FL
̲AREA,
FL ̲LENGTH)(RESULT)
RESULT = NOT ̲OK
FL ̲AREA NE HEADER?
FL = FL ̲POINTER
PREV ̲FL = ANALYSIS ̲FL?
CASE ANALYSIS ̲FL: OF:
FL 7: DETECTION ̲FL7(FL)(FLN, CC)
FL 8: DETECTION ̲FL8(FL)(FLN, CC
END ANALYSIS ̲FL CASE
CC = NOT ̲OK?
FIRST ̲LINE = TRUE
RESULT = OK
FL = FLN
FLN(+ 1) = IOC ̲START ̲BYTE FIRST ̲LINE = FALSE?
OR SPACE
ERROR ̲COLLECTION
(MISSING ̲ADDRESS)(
)
RESULT = OK
ANALYZE ̲ADS ̲PREFIX(FL)(FLN, PREFIX)
ADDRESSAL = DYNAMIC
READDRESSAL ̲DETECTED? ADDRESSAL = STATIC
FLA = FLN
FLB = FL ̲LENGTH + FL ̲POINTER
UPDATE ̲ADDRESS(FLA, FLB, NEXT ̲FL, ADDRESAL, FIRST ̲FL,PREFIX)
(ADS ̲OFFSET)
continues
continued FL7 ̲8 ANALYSIS
CASE PREFIX OF:
SINGLE: ANALYZE ̲SINGLE ̲PLA(FLA, FLB, ADDRESSAL)
(RI ̲CAT, PLA
̲REF)
UPDATE ̲PLA ̲RI(ADDRESSAL, RI ̲CAT, PLA
̲REF
ZERO, ZERO, ADS ̲OFFSET)
( )
ZEN: ANALYZE ̲ZEN ̲PLA(FLA, FLB, ADDRESSAL)
RI ̲CAT; PLA ̲REF)
UPDATE ̲PLA ̲RI (ADDRESSAL,RI ̲CAT,PLA
̲REF
ZERO, ZERO, ADS ̲OFFSET)(
)
RI: ANALYZE ̲RI ̲PLA(FL,FLN, FLA, FLB, ADDRESAL)
(RI ̲CAT)
PLA ̲REF = ZERO,
RI ̲CAT = LOCAL ̲RI? RI ̲CAT = ZEN
UPDATE ̲PLA ̲RI (ADDRESSAL, RI ̲CAT,
PLA ̲REF,
FL, FLN,ADS ̲OFFSET)(
)
AIG: ANALYZE ̲AIG(FLA, FLB)(NO ̲OF ̲PLA, CC)
CC = NOT ̲OK?
RI ̲CAT = AIG
PLA ̲REF = ZERO
NO ̲OF ̲PLA = ZERO? UPDATE ̲PLA ̲RI(ADDRESSAL,
RI ̲CAT, PLA ̲REF,
PLA ̲COUNT = ZERO ZERO, ZERO,
ADS ̲OFFSET) (
)
continues…86…1 …02… …02… …02… …02… …02… …02… …02… …02… …02…
continued FL7 ̲8 - ANALYSIS
PLA ̲INDEX = ZERO
LOOP NO ̲OF ̲PLA
SEARCH ̲AIG ̲PLA (PLA ̲INDEX+1)(PLA
̲REF,CC)
RI ̲CAT = AIG
CC = OK? INCREMENT PLA ̲COUNT
UPDATE ̲PLA ̲RI(ADDRESSAL, RI ̲CAT,
PLA ̲REF, ZERO, ZERO,
ADS ̲OFFSET) ( )
END NO ̲OF ̲PLA LOOP
PLA ̲COUNT = ZERO? PLA ̲REF = ZERO
UPDATE ̲PLA ̲RI
(ADDRESSAL, RI
̲CAT,
PLA ̲REF, ZERO,
ZERO,
ADS ̲OFFSET)(
)
END PREFIX ̲CASE
RETURN
A̲N̲A̲L̲Y̲Z̲E̲ ̲A̲D̲S̲ ̲P̲R̲E̲F̲I̲X̲ (FL)(FLN, PREFIX)
PREFIX = SINGLE
LOCATE ̲CHARACTER ("/", FL) (FLN, CC)
CC = NOT ̲OK?
ANALYZE ̲RI (FL, FLN)(CC)
CC = OK? PREFIX = RI
FLN = FLN + 1
FLN ̲FL NE ZEN ̲LENGTH?
FL(1..(ZEN ̲LENGTH + 1)) = "ZEN/"? PREFIX = ZEN
FLN = FLN + 1
LOCATE ̲CHARACTER(SPACE, FL)(FLN, CC)
CC = NOT ̲OK? FLN = FL
FLN-FL NE AIG ̲LENGTH?
FL(1..(AIG ̲LENGTH + 1)) = "AIG(space)"? PREFIX = AIG
FLN = FLN +
1
FLN = FL
RETURN
A̲N̲A̲L̲Y̲Z̲E̲ ̲S̲I̲N̲G̲L̲E̲ ̲P̲L̲A̲ (FLA, FLB, ADDRESSAL)
(RI ̲CAT, PLA ̲REF, CC)
RI ̲CAT = SINGLE
ADDRESSAL = STATIC?
SEARCH ̲LOCALPLA ̲TABLE(FLA, FLB)(PLA ̲REF, HQ, CC)
CC = OK? HQ or HQ ̲MASK
PLA ̲REF = ZERO
RI ̲CAT = ZEN
QEL ̲HEADER.MAINTYPE NE FROM ̲CCIS? PLA ̲REF = ZERO
SEARCH ̲PLA ̲TABLE(FLA, FLB)(PLA ̲REF, CC)
CC = NOT ̲OK? RI ̲CAT = X ̲PLA
LOCATE ̲PLA ̲REF(PLA ̲REF, REF ̲ALL)(PLA ̲RI ̲REC ̲NO, CC)
CC = OK? PLA ̲REF = ZERO
RETURN
A̲N̲A̲L̲Y̲Z̲E̲ ̲Z̲E̲N̲ ̲P̲L̲A̲ (FLA, FLB, ADDRESSAL)
(RI ̲CAT, PLA ̲REF)
RI ̲CAT = ZEN
ADDRESSAL = STATIC?
SEARCH ̲LOCAL ̲PLA ̲TABLE(FLA, FLB)(PLA ̲REF, HQ, CC)
CC = OK? HQ OR HQ ̲MASK
PLA ̲REF = ZERO
RETURN
A̲N̲A̲L̲Y̲Z̲E̲ ̲R̲I̲ ̲P̲L̲A̲ (FL, FLN, FLA, FLB, ADDRESSAL)
(RI ̲CAT)
RI ̲CAT = NEW ̲RI
ADDRESSAL = STATIC?
SEARCH ̲LOCAL ̲RI ̲TABLE(FL, FLN)(RI ̲CAT)
SEARCH ̲LOCAL ̲PLA ̲TABLE(FLA, FLB)(PLA ̲REF, HQ, CC)
CC = OK? HQ or HQ ̲MASK
PLA ̲REF = ZERO
RI ̲CAT = LOCAL ̲RI?
ERROR ̲COLLECTION (RI ̲PLA ̲INCONSISTENCY)
RI ̲CAT = LOCAL ̲RI? ERROR ̲COLLECTION(RI ̲PLA ̲INCONSISTENCY)(
)
LOCATE ̲PLA ̲RI(FL, FLN)(REC ̲NO)
REC ̲NO = ZERO? DELETE ̲PLA ̲RI(REC ̲NO)( )
RI ̲CAT = OLD ̲RI
RETURN
A̲N̲A̲L̲Y̲Z̲E̲ ̲A̲I̲G̲ (FLA, FLB) (NO ̲OF ̲PLA, CC)
FLA = FLA + AIG ̲LENGTH
ANALYZE ̲NUMERIC(AIG ̲LENGTH, FLA)(CC)
CC = NOT ̲OK? ERROR ̲COLLECTION(INVALID ̲AIG)( )
ADDRESSAL = STATIC? NO ̲OF ̲PLA = ZERO
SEARCH ̲AIG ̲TABLE(FLA)(NO ̲OF ̲PLA, CC)
CC = NOT ̲OK? QEL ̲HEADER.MAINTYPE NE FROM ̲CCIS?
ERROR ̲COLLECTION(UNKNOWN ̲AIG)( )
CC = OK
RETURN
4.2.1.4.21 F̲L̲9̲ ̲A̲n̲a̲l̲y̲s̲i̲s̲ ̲M̲o̲d̲u̲l̲e̲
4.2.1.4.21.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
The functions of the FL9 analysis module are:
- detection of a FL9 ("XMT")
- update of address-field with XMT-address in accordance
with detection of readdressal or not.
- deletion of a PLA ̲RI record associated to an AIG
corresponding to the PLA ̲ref related to the XMT
̲PLA
- deletion of a local HQ ̲number referenced via a
local XMT ̲PLA
4.2.1.4.21.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
Input: R0 = FL ̲pointer
R1 = Analysis FL
R2 = Previous FL
R3 = FL ̲area
R4 = FL ̲length
Output: R5 = Result
C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
a) FL9 ̲ANALYSIS(FL ̲POINTER, ANALYSIS ̲FL, PREV ̲FL,
FL ̲AREA,
FL ̲LENGTH)(RESULT)
b) FL9 ̲ANALYSIS (R0, R1, R2, R3, R4, R5, R6)
4.2.1.4.21.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
See fig. 4.2.1.4-21 for structure FL9 ̲analysis module.
a) F̲L̲ ̲D̲e̲t̲e̲c̲t̲i̲o̲n̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Detects the startsequence XMT (space) of a FL9.
Ref. 4.2.1.6.2.6 for description
b) L̲o̲c̲a̲t̲e̲ ̲a̲f̲t̲e̲r̲ ̲s̲p̲a̲c̲e̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref. 4.2.1.6.2.4 for description
c) E̲r̲r̲o̲r̲ ̲C̲o̲l̲l̲e̲c̲t̲i̲o̲n̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
Ref. 4.2.1.6.1.4 for description
Error-Codes: MISSING ̲PLA
UNKNOWN ̲PLA
LIMIT ̲PLA ̲EXCEEDED
d) U̲p̲d̲a̲t̲e̲ ̲A̲d̲d̲r̲e̲s̲s̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.4.8 for description
e) S̲e̲a̲r̲c̲h̲ ̲L̲o̲c̲a̲l̲ ̲P̲L̲A̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.5.1 for description
f) S̲e̲a̲r̲c̲h̲ ̲P̲L̲A̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.5.2 for description
g) S̲e̲a̲r̲c̲h̲ ̲L̲o̲c̲a̲l̲ ̲P̲L̲A̲ ̲R̲E̲F̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.5.8 for description
h) L̲o̲c̲a̲t̲e̲ ̲P̲L̲A̲ ̲R̲E̲F̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.4.4 for description
i) D̲e̲l̲e̲t̲e̲ ̲P̲L̲A̲ ̲R̲I̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.4.6 for description
j) D̲e̲l̲e̲t̲e̲ ̲P̲L̲A̲ ̲R̲E̲F̲ ̲p̲r̲o̲c̲e̲d̲u̲r̲e̲
ref. 4.2.1.6.4.7 for description
4.2.1.4.21.4 D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲
a) D̲a̲t̲a̲ ̲r̲e̲f̲e̲r̲e̲n̲c̲e̲s̲
Administration Field (DBD/001 10.1.1)
Address Field (DBD/001 10.1.3)
PLA ̲RI Field (DBD/001 10.1.6)
Local PLA ̲table (DBD/001 6.6)
PLA ̲table (DBD/001 6.5
FL ̲Analysis ̲data (4.2.1.5.8)
TMP Data (4.2.1.5.2)
QEL ̲Data (4.2.1.5.3)
b) E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲
ADMINISTRATION.NUMBER ̲OF ̲XMT ̲ADD (m)
"-" .NUMBER ̲OF ̲READD ̲XMT ̲ADD (m)
"-" .GROUP ̲XMT ̲OFFSET (m)
"-" .GROUP ̲READD ̲XMT ̲OFFSET (m)
ADDRESS ̲FIELD ̲RECORD (m)
PLA ̲RI.DYNAMIC ̲COUNT (m)
PLA ̲RI ̲DYNAMIC ̲RECORD (D)
READDRESSAL ̲DETECTED
QEL ̲ATTRIBUTE
HQ ̲MASK (m)
c) L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲
None
4.2.1.4.21.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
Having detected the startsequence XMT (space) a FL9
is accepted as found; however, a FL9 might be an additional
FL9; this is determined via the previous analyzed FL.
The sequence of characters of the line is assumed to
be a PLA; first the PLA is updated in the Address ̲field;
next it will be converted into a PLA-ref, unless it
has been located in the readdressed part of a message;
the first test is performed in the local ̲PLA ̲table;
if found here the HQ associated to the found local
XMT-PLA will be discarded from the HQ-mask.
If the message is outgoing (and XMT ̲PLA not local)
the PLA ̲ref will be extracted via the global PLA ̲table;
if not found the XMT ̲PLA is considered erroneous (otherwise
somebody, who was not supposed to have the message,
would receive it anyway); but if found a dynamic PLA
̲RI record will be located on basis of the PLA ̲ref;
if the located record is referenced by an AIG, the
record will be deleted.
Fig. 4.2.1.4-21…01…STRUCTURE FL9 ANALYSIS
F̲L̲9̲ ̲A̲N̲A̲L̲Y̲S̲I̲S̲ (FL ̲POINTER, PREV ̲FL, ANALYSIS ̲FL, FL
̲AREA,
FL ̲LENGTH)(RESULT)
FIRST ̲FL = FALSE
RESULT = NOT ̲OK
FL ̲AREA NE HEADER?
FL = FL ̲POINTER
PREV ̲FL = ANALYSIS ̲FL?
DETECTION ̲FL9 (FL)(FLN, CC)
CC = NOT ̲OK?
FL = FLN
FIRST ̲LINE = TRUE
RESULT = OK
FLN(+1) = IOC ̲START ̲BYTE FIRST ̲LINE = FALSE?
or SPACE?
ERROR ̲COLLECTION
(MISSING ̲PLA)
RESULT = OK
FLN = FL ̲LENGTH + FL ̲POINTER
ADDRESSAL = DYNAMIC
READDRESSAL ̲DETECTED? ADDRESSAL = STATIC
PREFIX = SINGLE
UPDATE ̲ADDRESS(FL, FLN, NEXT ̲FL, ADDRESSAL, FIRST ̲FL,
PREFIX)(ADS ̲OFFSET)
ADDRESSAL = STATIC?
SEARCH ̲LOCAL ̲PLA ̲TABLE(FL, FLB)(PLA ̲REF, HQ, CC)
CC = OK? HQ AND HQ ̲MASK
Continues
continued (FL9 ANALYSIS)
OR QEL ̲HEADER. MAINTYPE
NE FROM ̲CCIS?
SEARCH ̲PLA ̲TABLE (FL, FLB)(PLA ̲REF, CC)
CC = NOT ̲OK? ERROR ̲COLLECTION(UNKNOWN ̲PLA)( )
LOCATE ̲PLA ̲REF(PLA ̲REF, REF ̲AIG)(REC ̲POINTER)
REC ̲POINTER = ZERO?
DELETE PLA ̲RI(REC ̲POINTER)( )
RETURN