top - download
⟦567e0d5d7⟧ Wang Wps File
Length: 31112 (0x7988)
Types: Wang Wps File
Notes: CPS/SDS/047
Names: »4839A «
Derivation
└─⟦27551141f⟧ Bits:30006195 8" Wang WCS floppy, CR 0468A
└─ ⟦this⟧ »4839A «
WangText
…0b… …0a……05……09……0f……09…
…08……08……08……0b……08……0c……08……86…1
…02…
…02…
…02…
…02…CPS/SDS/047
…02… 841005…02……02…
OCR ANALYSIS
AS BUILT
DOCUMENTATION
…02……02…CAMPS
T̲A̲B̲L̲E̲ ̲O̲F̲ ̲C̲O̲N̲T̲E̲N̲T̲S̲
1 GENERAL ........................................
1
1.1 PURPOSE AND SCOPE ..........................
1
1.2 APPLICABLE DOCUMENTS AND PROJECT REFERENCES
1
1.2.1 Applicable Documents ...................
1
1.2.2 Reference Documents ....................
2
1.3 TERMS AND ABBREVIATIONS ....................
2
1.3.1 Terms ..................................
2
1.3.2 Abbreviations ..........................
2
2 SUMMARY OF REQUIREMENTS ........................
3
2.1 PACKAGE DESCRIPTION ........................
3
2.2 PACKAGE FUNCTIONS ..........................
6
2.2.1 Main Functions .........................
6
2.2.2 Functional Responsibilities ............
6
2.2.2.1 Initialization, Close Down, and
Restart ............................
6
2.2.2.2 Checkpointing and Recovery .........
6
2.2.2.3 Error Detecting and Error Handling .
6
2.2.2.4 Integrity of Operation .............
6
2.2.2.5 Data Collection ....................
7
2.2.2.6 Security ...........................
7
3 ENVIRONMENT ....................................
8
3.1 EQUIPMENT ..................................
8
3.2 SOFTWARE ...................................
8
3.2.1 System Software ........................
8
3.2.2 Development Support Software ...........
8
3.3 INTERFACES .................................
8
3.3.2 Package Interfaces .....................
8
3.3.2.1 Traffic Handling (THP) I/F ...........
8
3.3.2.2 Log and Accountability (Log) I/F ...
9
3.3.2.3 SSC Software I/F ...................
9
3.3.2.4 Table Management Package (TMP) I/F .
9
3.3.2.5 Message Service Operator (MSP) I/F .
9
3.4 FUNCTIONS MAINTAINED BY OTHER PACKAGES .....
9
4 PACKAGE DESIGN .................................
10
4.1 PACKAGE OVERVIEW ...........................
10
4.1.1 Functional Specification ...............
10
4.1.1.1 TEMCO Control Functions ............
10
4.1.1.2 Reception of Messages ..............
10
4.1.1.3 Handling of Received Messages ......
11
4.1.1.4 Sending the CIF's ..................
11
4.1.1.5 Logging ............................
11
4.1.2 Software Specification .................
12
4.1.2.1 OAS Process ........................
12
4.2 SUBPACKAGE SPECIFICATION ...................
15
4.2.1 OCR Analysis Subpackage ................
15
4.2.1.1 Functional Specification ...........
15
4.2.1.2 Software Structure .................
15
4.2.1.2.1 OCR Analysis Control (OCRA ̲MAIN)
16
4.2.1.2.2 Message Scan (MESS ̲SCAN) .......
18
4.2.1.2.3 Message Error (MESS ERROR) .....
18
4.2.1.2.4 CIF Access Method (CAM) ........
18
4.2.1.2.5 Memory Access Method (MEM ACC) .
18
4.2.1.2.6 Memory Management (MEM MAN) ....
18
4.2.1.2.7 Format Control Interpreter (FCPI)
18
4.2.1.2.8 Syntax Validation (OCR SYNTAX) .
19
4.2.1.2.9 Semantic Validation (OCR SEMAN)
19
4.2.1.2.10 OCR DATA .....................
19
4.2.1.2.11 OCR FCP ......................
19
4.2.1.3 Data Flow ..........................
19
4.2.1.4 OAS Module Specification ...........
20
4.2.1.4.1 OCR Analyze Main Specification
(OCRA ̲MAIN) ....................
20
4.2.1.4.1.1 Functional Specification ...
20
4.2.1.4.1.2 Module Interface ...........
20
4.2.1.4.1.3 Module Components ..........
21
4.2.1.4.2 Message Scan Specification
(MESS ̲SCAN) ....................
24
4.2.1.4.2.1 Functional Specification ...
24
4.2.1.4.2.2 Module Interface ...........
25
4.2.1.4.2.3 Module Components ..........
25
4.2.1.4.2.4 Module Design ..............
27
4.2.1.4.2.5 Initialization Procedure ...
27
4.2.1.4.3 Message Error Specification
(MESS ̲ERROR) ...................
27
4.2.1.4.3.1 Functional Specification ...
27
4.2.1.4.3.2 Module Interface ...........
28
1̲ ̲ ̲G̲E̲N̲E̲R̲A̲L̲
1.1 P̲U̲R̲P̲O̲S̲E̲ ̲A̲N̲D̲ ̲S̲C̲O̲P̲E̲
The OCR Analysis As Built Documentation is written
to fulfil the following purposes:
1) To describe the functions and software structure
of the OCR Analyse process.
2) To provide operational and maintenance personnel
with details of the ongoing analysis.
3) To define the interfaces with other packages.
The OCR Analysis As Built Documentation defines the
functions and software architecture of the package
to a level, which enables the maintenance staff to
maintain and make minor corrections in the package.
1.2 A̲P̲P̲L̲I̲C̲A̲B̲L̲E̲ ̲D̲O̲C̲U̲M̲E̲N̲T̲S̲ ̲A̲N̲D̲ ̲P̲R̲O̲J̲E̲C̲T̲ ̲R̲E̲F̲E̲R̲E̲N̲C̲E̲S̲
1.2.1 A̲p̲p̲l̲i̲c̲a̲b̲l̲e̲ ̲D̲o̲c̲u̲m̲e̲n̲t̲s̲
CAMPS System Requirements
CPS/210/SYS/001
OCR Interface
CPS/230/ICD/0008
CAMPS System Design Specification
CPS/SDS/001
Database Design Document
CPS/DBD/001
CAMPS Software Interface Control Document
CPS/ICD/009
User VDU As Built Documentation
CPS/SDS/039
1.2.2 R̲e̲f̲e̲r̲e̲n̲c̲e̲ ̲D̲o̲c̲u̲m̲e̲n̲t̲s̲
D̲O̲C̲U̲M̲E̲N̲T̲ ̲N̲A̲M̲E̲ D̲O̲C̲U̲M̲E̲N̲T̲ ̲N̲U̲M̲B̲E̲R̲
CAMPS System Functions CPS/SDS/024
Message Management CPS/SDS/025
Table Management CPS/SDS/026
Input/Output Control CPS/SDS/028
System Status and Control CPS/SDS/029
Storage and Retrieval CPS/SDS/030
Statistics CPS/SDS/031
Logging CPS/SDS/032
Traffic Handling CPS/SDS/033
Message Distribution CPS/SDS/034
Supervisor VDU CPS/SDS/035
Supervisor Printer CPS/SDS/036
MDCO VDU CPS/SDS/037
MSO VDU CPS/SDS/038
OCR CPS/SDS/040
Printer CPS/SDS/041
1.3 T̲E̲R̲M̲S̲ ̲A̲N̲D̲ ̲A̲B̲B̲R̲E̲V̲I̲A̲T̲I̲O̲N̲S̲
1.3.1 T̲e̲r̲m̲s̲
1.3.2 A̲b̲b̲r̲e̲v̲i̲a̲t̲i̲o̲n̲s̲
VDIA VDU Dialogue Coroutine
VUP VDU User Package
MDCO Message Distribution Control
MSO Message Service Operator
OAS OCR Analysis Subpackage
THP Traffic Handling Package
CC Completion Code
ACS Analysis Conversion Subpackage
2̲ ̲ ̲S̲U̲M̲M̲A̲R̲Y̲ ̲O̲F̲ ̲R̲E̲Q̲U̲I̲R̲E̲M̲E̲N̲T̲S̲
2.1 P̲A̲C̲K̲A̲G̲E̲ ̲D̲E̲S̲C̲R̲I̲P̲T̲I̲O̲N̲
The OCR Analysis Subpackage is responsible for validation
and conversion of messages entered via an OCR.
On behalf of the validation result the message is wether
sent for correction at the MDCO or directed to the
Traffic Handling Package for release.
In order to facilitate validation, conversion release
and correction the OAS interfaces to the following
packages:
1) CAMPS System Functions
2) SS & C Software
3) Traffic Handling
4) Table Management
5) Log and Accountability
Figure 2.1-1 depicts the message flow between OAS and
other CAMPS packages, while information flow is shown
in picture 2.1-2.
FIGURE 2.1-1
MESSAGE FLOW
FIGURE 2.1-2
INFORMATION FLOW
2.2 P̲A̲C̲K̲A̲G̲E̲ ̲F̲U̲N̲C̲T̲I̲O̲N̲S̲
2.2.1 M̲a̲i̲n̲ ̲F̲u̲n̲c̲t̲i̲o̲n̲s̲
The main function of the OAS is to convert messages
received from the OCR to CAMPS Internal Message Format
and direct it to the ACS which will perform conversion
to ACP127 and send it on the transmission line.
2.2.2 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲R̲e̲s̲p̲o̲n̲s̲i̲b̲i̲l̲i̲t̲i̲e̲s̲
2.2.2.1 I̲n̲i̲t̲i̲a̲l̲i̲z̲a̲t̲i̲o̲n̲,̲ ̲C̲l̲o̲s̲e̲ ̲D̲o̲w̲n̲,̲ ̲a̲n̲d̲ ̲R̲e̲s̲t̲a̲r̲t̲
As soon as the OCR Analysis Subprocess is started it
will initialize and wait for reception of the first
message or a close down command from SSC.
On command from SSC, OAS shall terminate its current
processing and bring it self into a stopped state.
2.2.2.2 C̲h̲e̲c̲k̲p̲o̲i̲n̲t̲i̲n̲g̲ ̲a̲n̲d̲ ̲R̲e̲c̲o̲v̲e̲r̲y̲
No checkpointing or recovery is performed by the OAS.
2.2.2.3 E̲r̲r̲o̲r̲ ̲D̲e̲t̲e̲c̲t̲i̲n̲g̲ ̲a̲n̲d̲ ̲E̲r̲r̲o̲r̲ ̲H̲a̲n̲d̲l̲i̲n̲g̲
Errors detected by the subproces is either internal
software errors or unknown CC's delivered by System
Software.
Detection of an error which OAS cannot handle itself
shall cause OAS to stop processing and transfer control
to SSC for further handling of the situation.
2.2.2.4 I̲n̲t̲e̲g̲r̲i̲t̲y̲ ̲o̲f̲ ̲O̲p̲e̲r̲a̲t̲i̲o̲n̲
No software fault will effect more than one transaction.
2.2.2.5 D̲a̲t̲a̲ ̲C̲o̲l̲l̲e̲c̲t̲i̲o̲n̲
Log information on OCR transactions shall be collected
and reported to the log subpackage. Log information
shall be reported at the time of completion of transaction
received from the OCR. The following information will
be contained in the log:
- Device designator
- Transaction serial number
- Format id
- Log time
- Classification
- Special Handling
2.2.2.6 S̲e̲c̲u̲r̲i̲t̲y̲
The OAS has implemented the security related functions:
a) OAS prevent, by validation, that illegal transactions
can be initiated.
b) Access to queues are checked by System Software.
3̲ ̲ ̲E̲N̲V̲I̲R̲O̲N̲M̲E̲N̲T̲
3.1 E̲Q̲U̲I̲P̲M̲E̲N̲T̲
The equipment environment of this package is the CR80D
computer.
3.2 S̲O̲F̲T̲W̲A̲R̲E̲
3.2.1 S̲y̲s̲t̲e̲m̲ ̲S̲o̲f̲t̲w̲a̲r̲e̲
OAS' system software consists of the following components:
- DAMOS
- CAMPS System Functions
- Message Management System
- Storage and File Management
3.2.2 D̲e̲v̲e̲l̲o̲p̲m̲e̲n̲t̲ ̲S̲u̲p̲p̲o̲r̲t̲ ̲S̲o̲f̲t̲w̲a̲r̲e̲
Development software is standard DAMOS and TOS utilities
resident in a single CR80D configuration.
3.3 I̲N̲T̲E̲R̲F̲A̲C̲E̲S̲
Ref. doc. CPS/ICD/009
3.3.2 P̲a̲c̲k̲a̲g̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲s̲
3.3.2.1 T̲r̲a̲f̲f̲i̲c̲ ̲H̲a̲n̲d̲l̲i̲n̲g̲ ̲(̲T̲H̲P̲)̲ ̲I̲/̲F̲
Messages which has been validated and converted successfully
shall by OAS be queued to THP for routing and ACP-conversion.
3.3.2.2 L̲o̲g̲ ̲a̲n̲d̲ ̲A̲c̲c̲o̲u̲n̲t̲a̲b̲i̲l̲i̲t̲y̲ ̲(̲L̲o̲g̲)̲ ̲I̲/̲F̲
Log records collected by OAS shall be queued to Log.
OAS then receives an accept from Log.
3.3.2.3 S̲S̲C̲ ̲S̲o̲f̲t̲w̲a̲r̲e̲ ̲I̲/̲F̲
On command from SSC OAS shall stop its current processing.
3.3.2.4 T̲a̲b̲l̲e̲ ̲M̲a̲n̲a̲g̲e̲m̲e̲n̲t̲ ̲P̲a̲c̲k̲a̲g̲e̲ ̲(̲T̲M̲P̲)̲ ̲I̲/̲F̲
TMP provides access to tables, global number series
and system parameters. The tables accessed by OAS includes:
DEVICE ̲TABLE
AIG ̲TABLE
PLA ̲TABLE
SCD ̲TABLE
Global no. series:
Transaction serial no.
3.3.2.5 M̲e̲s̲s̲a̲g̲e̲ ̲S̲e̲r̲v̲i̲c̲e̲ ̲O̲p̲e̲r̲a̲t̲o̲r̲ ̲(̲M̲S̲P̲)̲ ̲I̲/̲F̲
If the OCR Analysis Subpackage detects errors during
the analysis, it will be sent to the MSO for garble
correction.
If the message has the precedence flash, found by validation,
a flash notification will be sent to the MSO.
3.4 F̲U̲N̲C̲T̲I̲O̲N̲S̲ ̲M̲A̲I̲N̲T̲A̲I̲N̲E̲D̲ ̲B̲Y̲ ̲O̲T̲H̲E̲R̲ ̲P̲A̲C̲K̲A̲G̲E̲S̲
Security interrogations and warnings are performed
by TEMCO (SSC) without the knowledge of OAS. SSC software
is requested by the Message Management Software to
execute the interrogation/warning when access to a
message is requested by OAS. Access by OAS will only
be allowed if granted by SSC software.
4̲ ̲ ̲P̲A̲C̲K̲A̲G̲E̲ ̲D̲E̲S̲I̲G̲N̲
4.1 P̲A̲C̲K̲A̲G̲E̲ ̲O̲V̲E̲R̲V̲I̲E̲W̲
The OCR Analysis Package consists of one subprocess
the OCR Analysis Subpackage (OAS), which contains the
software needed for validation and conversion of messages
read from the OCR.
4.1.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
This section contains a description of the main functions
of the OCR Analysis Subpackage (OAS).
The aim of this description is to identify and make
a priority of the subfunctions. The description is
carried out to a level where subfunctions with self-contained
implementation may be isolated.
4.1.1.1 T̲E̲M̲C̲O̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲F̲u̲n̲c̲t̲i̲o̲n̲s̲
As soon as the OAS subprocess is started it is ready
to receive messages for analysis.
TEMCO can at any time send a stop command to the OAS
queue with highest priority. When the OAS has received
the command it will reply an acknowledge and immediately
stop.
4.1.1.2 R̲e̲c̲e̲p̲t̲i̲o̲n̲ ̲o̲f̲ ̲M̲e̲s̲s̲a̲g̲e̲s̲
The OAS can receive messages for validation from two
packages: THP and MSO. The messages received from both
packages will look alike.
The CIF's received will contain the text in field 10
and control information in field 9.
The text lines will consist of keywords and text connected
to the keywords, though not all lines needs a keyword.
The key word field of a line is the first nine positions.
4.1.1.3 H̲a̲n̲d̲l̲i̲n̲g̲ ̲o̲f̲ ̲R̲e̲c̲e̲i̲v̲e̲d̲ ̲M̲e̲s̲s̲a̲g̲e̲s̲
The OAS will read the text part of the message line
by line. When a line has been read it will be analyzed
and converted, and the result will be put back into
the CIF in order to satisfy the Internal Message Format
(IMF).
The analysis of a line consists of a keyword analyze,
validation and conversion. The keyword analyze will
compare the content of the key word field with an internal
table. If the keyword does not exist or if it is sequenced
wrongly the analysis will stop immediately and the
messages will be sent for garble correction.
When a keyword is recognized the text connected to
it is validated and converted as if it was read from
the VDU and the result is also stored in the same manner.
Errors found during keyword analysis or validation
will be converted into plain text and written into
field 9 of the CIF, which is sent of to the MSO.
4.1.1.4 S̲e̲n̲d̲i̲n̲g̲ ̲t̲h̲e̲ ̲C̲I̲F̲'̲s̲
When a message is analyzed, validated and converted
correct the resulting CIF is sent to the conversion
package ACS for further distribution.
If a message contains keyword or validation errors
it is sent for OCR garble correction at the MSO. The
first time a message is sent for garble correction
a send function is used, the following times the function
send reply is used. If the message is found to be a
flash message a flash notification is sent together
with the message.
4.1.1.5 L̲o̲g̲g̲i̲n̲g̲
When a CIF is received from THP a log record is generated
and send to the Log package. The exit cause passed
to the Log package can either be OCR ̲OK or OCR ̲ERROR:
When the log record is sent no further action is taken
until a log ack is received from the Log package.
4.1.2 S̲o̲f̲t̲w̲a̲r̲e̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
In this section the software structure will be described.
The OCR Analysis process communicates with two packages:
THP and TEP.
THP contains the programs for receival and transmission
of OCR messages, while TEP will contain programs for
conversion from OCR message format to internal CAMPS
format and for correction of garbled messages.
The OAS subprocess will be implemented as a process
without any coroutines.
4.1.2.1 O̲A̲S̲ ̲P̲r̲o̲c̲e̲s̲s̲
In figure 4.1.2.1-1 OCR ̲S is the subprocess in THP
while OAS ̲S is the subprocess in TEP.
The numbers in the figure corresponds to the following:
1) The message entered and the (possible remote) OCR
unit is send via a communicaiton line and received
by OCR ̲S, who performs:
- control of message begin/end
- stores the message in a CIF.
2) The message stored in the CIF is sent to OAS ̲S,
who performs:
- conversion of the message to internal message
format in the CIF.
3) During conversion of the message OAS ̲S uses TMP
tables for validation and conversion.
4) The successfully converted CIF is sent to ACS for
further conversion to ACP127.
5) The ACP127 form of the OCR message is sent on a
transmission line.
6) Local distribution of OCR message.
7) A garbled OCR message is sent to MSO for garble
correction. The MSO will edit the message.
8) The corrected message is returned to OAS ̲S for
new analysis.
9) When a message is received from the OCR ̲S the OAS
̲S will generate a log record which is sent to the
Log.
10) The Log package will reply with a log acknowledge.
FIGURE 4.1.2.1-1
OAS STRUCTURE
4.2 S̲U̲B̲P̲A̲C̲K̲A̲G̲E̲ ̲S̲P̲E̲C̲I̲F̲I̲C̲A̲T̲I̲O̲N̲
4.2.1 O̲C̲R̲ ̲A̲n̲a̲l̲y̲s̲i̲s̲ ̲S̲u̲b̲p̲a̲c̲k̲a̲g̲e̲
4.2.1.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 OCR Analysis Subpackage performs the following
tasks:
An OCR message is received in a CIF with the message
stored in CIF field 9 in the OCR format (refer ICD/008).
The contents of CIF field 9 is validated, converted
and stored in CIF fields 1, 2, 3, 4, 5 and 8 in the
same format as a message prepared at a CAMPS user terminal.
Error codes for errors detected during analysis of
the message is written to CIF field 10 in plain text.
If the conversion is OK the CIF is sent to THP for
transmission and local distribution - else the CIF
is sent to the MSO for garble correction.
OCR analysis may receive message from more than one
OCR unit. The OCR is identified by the channel id in
the ACP127 parameter field in the CIF.
OCR analysis accepts a stop command from SSC.
4.2.1.2 S̲o̲f̲t̲w̲a̲r̲e̲ ̲S̲t̲r̲u̲c̲t̲u̲r̲e̲
The software structure of the OAS is shown in figure
4.2.1.2-1.
The main design criteria was to use as much code as
possible from VUP, thus many of the following sections
will refer SDS/039.
Raughly spoken the subpackage consists of VDIA plus
USPR where:
VDIA ̲MAIN is replaced by OCRA ̲MAIN
VDU ̲ACCESS is replaced by MESS ̲SCAN
VDU ̲ERRL is replaced by MESS ̲ERROR
VDIA ̲DAT is replaced by OCRA ̲DATA
SEMAN ̲VAL is replaced by OCR ̲SEMAN
There is one fixed FCP program (raughly A1 + A2 from
the user) which is placed permanent in the process
data.
4.2.1.2.1 O̲C̲R̲ ̲A̲n̲a̲l̲y̲s̲i̲s̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲(̲O̲C̲R̲A̲ ̲M̲A̲I̲N̲)̲
This module contains the main loop of the OAS, with
the main waiting point. The module handles SSC commands.
Receiving CIF's.
Sets up required CIF handling, i.e. open views, changes
the profile of the CIF etc.
Sets up parameters and data for call of FCPI ̲MAIN.
Sends CIF's and flash notifications. Perform log.
FIGURE 4.2.1.2-1
OAS SOFTWARE STRUCTURE
4.2.1.2.2 M̲e̲s̲s̲a̲g̲e̲ ̲S̲c̲a̲n̲ ̲(̲M̲E̲S̲S̲ ̲S̲C̲A̲N̲)̲
The module scans the messages for keywords. When a
keyword is found, it will be analyzed and if the analysing
turned out to be successfully, the following characters
will be extracted to a "field" and passed on to the
format control interpreter, which in turn will pass
it on to syntax procedures for validation.
4.2.1.2.3 M̲e̲s̲s̲a̲g̲e̲ ̲E̲r̲r̲o̲r̲ ̲(̲M̲E̲S̲S̲ ̲E̲R̲R̲O̲R̲)̲
When message scan, syntax or semantic procedures has
detected an error this module makes a suitable error
entry in the error list in CIF field 10. The error
messages is given in palin text.
4.2.1.2.4 C̲I̲F̲ ̲A̲c̲c̲e̲s̲s̲ ̲M̲e̲t̲h̲o̲d̲ ̲(̲C̲A̲M̲)̲
Performs the actual read and write to CIF'S. The module
is the same as used in the VDU User Package (VUP)(refer
SDS/039 section 4.2).
4.2.1.2.5 M̲e̲m̲o̲r̲y̲ ̲A̲c̲c̲e̲s̲s̲ ̲M̲e̲t̲h̲o̲d̲ ̲(̲M̲E̲M̲ ̲A̲C̲C̲)̲
Refer SDS/039 section 4.2.
4.2.1.2.6 M̲e̲m̲o̲r̲y̲ ̲M̲a̲n̲a̲g̲e̲m̲e̲n̲t̲ ̲(̲M̲E̲M̲ ̲M̲A̲N̲)̲
Refer SDS/039 section 4.2.
4.2.1.2.7 F̲o̲r̲m̲a̲t̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲I̲n̲t̲e̲r̲p̲r̲e̲t̲e̲r̲ ̲(̲F̲C̲P̲I̲)̲
Refer SDS/039 section 4.2.
4.2.1.2.8 S̲y̲n̲t̲a̲x̲ ̲V̲a̲l̲i̲d̲a̲t̲i̲o̲n̲ ̲(̲O̲C̲R̲ ̲S̲Y̲N̲T̲A̲X̲)̲
This module contains a set of procedures which are
able to validate all fields which possible could be
contained in an OCR message.
4.2.1.2.9 S̲e̲m̲a̲n̲t̲i̲c̲ ̲V̲a̲l̲i̲d̲a̲t̲i̲o̲n̲ ̲(̲O̲C̲R̲ ̲S̲E̲M̲A̲N̲)̲
This module contains procedures for semantic validation
of the OCR messages.
4.2.1.2.10 O̲C̲R̲ ̲D̲A̲T̲A̲
Contains all data needed in the OCR Analysis process.
4.2.1.2.11 O̲C̲R̲ ̲F̲C̲P̲
This module contains the format control program for
an OCR message. The FCP controls sequencing of the
validation and conversion. Further more the FCP state
where to store the converted data.
4.2.1.3 D̲a̲t̲a̲ ̲F̲l̲o̲w̲
The data flow within the OAS take roughly spoken place
from a CIF to the same CIF.
The data is read from the CIF by the MESS ̲SCAN module,
which performs the keyword analysis.
When a keyword is analyzed successfully, that is if
it is found in the keyword table and it is sequenced
correct, the data is passed on to the proper syntax
procedure. The syntax procedure will in turn validate
the content of the field and activate storage.
The STORE ̲FIELD procedure writes the result of the
conversion, which also has been performed by the syntax
procedure.
The Format Control Program connected to the OCR analysis
decides the sequence of the actions to be performed.
4.2.1.4 O̲A̲S̲ ̲M̲o̲d̲u̲l̲e̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
4.2.1.4.1 O̲C̲R̲ ̲A̲n̲a̲l̲y̲z̲e̲ ̲M̲a̲i̲n̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲ ̲(̲O̲C̲R̲A̲ ̲M̲A̲I̲N̲)̲
4.2.1.4.1.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
OCR ̲MAIN handles SSC commands, analyzes and converts
CIF's received from the OCR analyze queue (OAQ).
S̲S̲C̲ ̲C̲o̲m̲m̲a̲n̲d̲s̲
When a closedown or a stop command is received in the
command queue the process is stopped until a start
command is received.
C̲I̲F̲'̲s̲ ̲r̲e̲c̲e̲i̲v̲e̲d̲ ̲i̲n̲ ̲r̲e̲s̲p̲o̲n̲s̲e̲ ̲o̲r̲ ̲t̲r̲a̲f̲f̲i̲c̲ ̲s̲u̲b̲q̲u̲e̲u̲e̲
When a CIF has been received in either traffic or response
subqueue, the data required by FCP interpreter is set
up and the analysis and conversion of the CIF is started.
If no errors was detected the CIF is sent to ACS, otherwise
it is sent to the MSO for garble correction.
If the CIF allready have been treated by the MSO, the
MSO should be replied both if it now is error free
and if there still are errors in the message.
If the message now is OK an ACK is replied, otherwise
the message is returned to the MSO for further correction.
4.2.1.4.1.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
Procedure O̲C̲R̲A̲ ̲M̲A̲I̲N̲
(R6) DUMMY LINK
4.2.1.4.1.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
Procedure A̲N̲A̲L̲Y̲Z̲E̲ ̲T̲R̲A̲F̲F̲I̲C̲
(R2 C K QEL REFERENCE
R6) C - LINK
ANALYZE ̲TRAFFIC analyzes and converts a CIF received
from the traffic queue.
This procedure creates a new view of the CIF and sets
up data (i.e. OAS ̲ACCOUNT, INIT ̲AREA and view attributes)
before calling MINI ̲VDIA, which makes the actual analyze
and conversion of the CIF.
If the analyze and conversion is OK the CIF is sent
to ACS otherwise the CIF is handed over to MSO.
At last the view is dismantled.
Procedure A̲N̲A̲L̲Y̲Z̲E̲ ̲R̲E̲S̲P̲O̲N̲S̲E̲
(R2 C K QEL REFERENCE
R6) C - LINK
ANALYZE ̲RESPONSE analyzes and converts a CIF received
from the response queue.
This procedure creates a new view of the CIF and sets
up data (i.e. OAS ̲ACCOUNT, INIT ̲AREA and view attributes)
before calling MINI ̲VDIA, which makes the actual analyze
and conversion ot the CIF.
If the analyze and conversion is OK the CIF is sent
to ACS and an ACK is sent to the MSO.
Otherwise the CIF is handed over to MSO. At last the
view is dismantled.
Procedure S̲S̲C̲ ̲C̲O̲M̲M̲A̲N̲D̲
(R1 - R NEXT SUBQUEUE
R2 C K QEL REFERENCE
R4 C K %RECEIVE QEL ATTRIBUTES
R6) C - LINK
SSC ̲COMMAND is called when a QEL is received in the
COMMAND ̲SUBQUEUE. The procedure decides whether to
start or to stop the process.
S̲S̲C̲ ̲c̲o̲m̲m̲a̲n̲d̲ ̲=̲ ̲C̲L̲O̲S̲E̲ ̲D̲O̲W̲N̲ ̲o̲r̲ ̲S̲T̲O̲P̲
NEXT ̲SUBQUEUE is set to SSC command queue, which means
that the process reacts only or QEL's sent to SSC command
queue.
S̲S̲C̲ ̲c̲o̲m̲m̲a̲n̲d̲ ̲=̲ ̲S̲T̲A̲R̲T̲
NEXT ̲SUBQUEUE is set to main queue(Q), which means
that the process will react on all the subqueues.
At last the procedure sends TEP ̲ACK to SSC.
Procedure M̲I̲N̲I̲ ̲V̲D̲I̲A̲
(R1 - R COMPLETION CODE
R6) C - LINK
MINI ̲VDIA reset memory management, CIF access method,
calls initialization procedure for the "VDU ̲ACCESS
̲METHOD" and sets up data for the FCP interpreter.
Further more return address and stackpointer for LONG
̲EXIT is set up.
When the necessary data has been set up the FCP interpretation
is started.
Semantic validation is activated if no syntax or keyword
errors was detected during analyze and conversion of
the CIF.
Errors: When a keyword, syntax or semantic error was
detected by the FCPI MINI ̲VDIA returns with
NOT ̲OK. If a keyword error was detected message
scan is stopped with LONG ̲EXIT.
Procedure S̲E̲N̲D̲ ̲C̲O̲Q̲
(R4 C K %OAS ̲ACCOUNT
R6) C - LINK
This procedure sends a CIF to COQ when the message
is analyzed and converted OK.
Procedure C̲H̲A̲N̲G̲E̲ ̲P̲R̲O̲F̲I̲L̲E̲
(R5 C K %OAS ̲ACCOUNT
R6) C - LINK
This procedure changes the access profile for a CIF
according to the informations in OAS ̲ACCOUNT.
Procedure O̲P̲E̲N̲ ̲V̲I̲E̲W̲
(R2 C K VIEW REFERENCE
R6) C - LINK
This procedure creates a view to the CIF and puts the
view reference in GLOBAL ̲DATA.PRIMARY ̲ITEM.
Procedure I̲N̲I̲T̲ ̲M̲0̲ ̲M̲1̲
(R4 - R %INIT ̲AREA
R5 - R %OAS ̲ACCOUNT
R6) C - LINK
This procedure initializes INIT ̲AREA and OAS ̲ACCOUNT,
which should be done before calling MINI ̲VIDA.
TMP is called in order to get the actual classification
belonging to the device, which the message is received
from.
Procedure L̲O̲G̲ ̲R̲E̲P̲O̲R̲T̲
(R1 C K E ̲OCR ̲OK/E ̲OCR ̲ERROR
R6) C - LINK
This procedure generates a log record containing:
- device designator
- format id
- exit cause
- classification
- special handling
- transaction serial number
- transaction start time
Then a buffer is received and sent to the Log.
Further more data are set up for reception of a log
acknowledge.
Export procedure L̲O̲N̲G̲ ̲E̲X̲I̲T̲
(R0 C - COMPLETION CODE
R6 C DUMMY LINK
R2 - R PARA 2 IN ANSWER OPERATION
R3 - R PARA 3 IN ANSWER OPERATION
The procedure jumps back to main loop with spedified
completion code. The link register is dummy as the
procedure will never return to caller.
Export procedure S̲T̲A̲C̲K̲ ̲E̲R̲R̲O̲R̲
(R6 C - DUMMY LINK
R0 C - SEE DESCRIPTION BELOW
R7 C - SEE DESCRIPTION BELOW
Called in the error exit for stack overflow as follows:
Switch CSP((P ̲STACK = RO) & INTEGER, (-SIZE(WORK))=R7):
ERROR ̲OK to
ERROR: STACK ̲ERROR (R6)
END
The procedure calls TEP ̲INT ̲ERROR. The registers must
correspond to the order sequence above.
4.2.1.4.2 M̲e̲s̲s̲a̲g̲e̲ ̲S̲c̲a̲n̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲ ̲(̲M̲E̲S̲S̲ ̲S̲C̲A̲N̲)̲
4.2.1.4.2.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
This module reads the OCR message line by line (line
= IOC header record) recognizes keywords and converts
the data into a stream of fields. These fields are
requested by FCPI calling the procedure INPUT ̲VDU ̲FIELD
in this module.
The VDU ̲FIELD ̲TYPE's (in sense of VDU I/O in VDIA)
corresponds exactly to KEYWORDs in the OCR message.
The recognition of keywords are in fact the basis for
assigning VDU field types to data items in the message.
The FCP must use the types in ascending order. Redundant
input of fields of types OCR ̲FIELD, ZZZZ ̲
FIELD and END ̲MESS ̲FIELD should be included in FCP
in order to ensure that the message has proper start
and ending.
Default blank fields are supplied when optional keywords
have been omitted in the message.
Two sequences are used for sequenced input of message
and sequenced output of user messages. These sequences
must be initialized by FCP prior to the first INPUT
FIELD.
If any error is found by this module an error message
is made followed by a long exit - so that the remaining
part of FCP is bypassed. A list of the error conditions
are found under the description of procedure "INPUT
̲VDU ̲FIELDS.
4.2.1.4.2.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
Procedure I̲N̲P̲U̲T̲ ̲V̲D̲U̲ ̲F̲I̲E̲L̲D̲
(R0 - R FIELD REPLICA (= 0, if not found)
R1 C K VDU FIELD TYPE
R2 C K BYTE COUNT
R3 C K DATA BYTE OFFSET
R4 C K DATA POINTER
R5 C K RECORD TYPE (FIXED/VARIABLE)
R6) C LINK
4.2.1.4.2.3 M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲
Procedure N̲E̲X̲T̲ ̲F̲I̲E̲L̲D̲
(R1 - R %FIELD
R2 - R BYTE OFFSET
R3 - R FIELD SIZE (= 0, if no data)
R4 C K FILED TYPE
R6) C LINK
Delivers pointer and size for the next field of the
specified type. If no field is found a zero is returned
in R3.
Procedure N̲E̲W̲ ̲T̲Y̲P̲E̲
(R1 C K REQUESTED FIELD TYPE
R2 - R RESULT (KEYWORD ̲PRESENT/NOT ̲PRESENT)
R6) C LINK
Skip possible empty lines so that the buffer contains
a keyword with type = requested field type.
Procedure N̲E̲X̲T̲ ̲L̲I̲N̲E̲
(R3 - R LINE TYPE (OCR LINE TYPE)
R6)
Input the next line (IOC record) to the IOC and line
buffer. Searches for keyword. Updates the variables:
BUF ̲DATA ̲PT
BUF ̲DATA ̲TOP
BUF ̲FIELD ̲TYPE (if keyword in line)
BUF ̲LINE ̲NO
The procedure performs LONG ̲EXIT if unknown keyword
found.
Procedure F̲I̲N̲D̲ ̲K̲E̲Y̲W̲O̲R̲D̲
(R1 - R COMPLETION (KEYWORD PRESENT/NOT PRESENT)
R2 - R NEW FIELD TYPE
R6) C LINK
Searches the KEYWORD ̲REC array until the keyword is
found or all keywords has been checked.
Procedure K̲E̲Y̲W̲O̲R̲D̲ ̲E̲R̲R̲O̲R̲
(R3 C - ERROR TYPE
R6) C - LINK
Calls UPDATE ̲ERROR ̲LIST with the actual error type,
line and incarnation number.
Save count of the sequence used in the UPDATE ̲ERROR
̲
LIST is performed.
At last LONG ̲EXIT is called to bypass the remaining
FCP statements.
4.2.1.4.2.4 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲
Delivers the next field of the type specified on not
found.
The fields are found by keyword recognition. If a keyword
is omitted in the message blank default fields are
delivered (using max field size and min. no of fields).
If FIELDS ̲ARE ̲WORDS it is presumed that all fields
are placed on the keyword line and seperated by spaces,
otherwise a field is a whole line part (starting at
line top position = column 10) and all succeding lines,
until next keyword are treated as containing a field
of the same type.
If an error is found the procedure issues an error
message and makes a LONG ̲EXIT so that the remaining
FCP is bypassed.
4.2.1.4.2.5 I̲n̲i̲t̲i̲a̲l̲i̲z̲a̲t̲i̲o̲n̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲
Export procedure I̲N̲I̲T̲ ̲M̲E̲S̲S̲A̲G̲E̲ ̲S̲C̲A̲N̲
(R1 C K SEQUENCE ID FOR INPUT
R2 C K SEQUENCE ID FOR ERROR MESS. OUTPUT
R6) C LINk
Initializes variables for message scanning does not
make any access to the sequence.
4.2.1.4.3 M̲e̲s̲s̲a̲g̲e̲ ̲E̲r̲r̲o̲r̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲ ̲(̲M̲E̲S̲S̲ ̲E̲R̲R̲O̲R̲)̲
4.2.1.4.3.1 F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲
UPDATE ̲ERROR ̲LIST
outputs a fixed sized record to error filed in CIF.
The record contains the following:
Line number
Keyword
Field replica
Error text (Error code)
E.g. 10 LOG DIST 1 ILLEGAL THREE LETTER GROUP
VDU ̲FIELD ̲SIZE
Returns the maximum size of the VDU field.
4.2.1.4.3.2 M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲
Procedure U̲P̲D̲A̲T̲E̲ ̲E̲R̲R̲O̲R̲ ̲L̲I̲S̲T̲
(R1 C K FIELD TYPE
R2 C K FILED REPLIC
R3 C K ERROR CODE
R6) C LINK
Procedure V̲D̲U̲ ̲F̲I̲E̲L̲D̲ ̲S̲I̲Z̲E̲
(R4 C K FIELD TYPE
R5 - R MAX SIZE OF FIELD
R6) C LINK