iplib (Sat Oct 25 2014 01:31:01)

iplib

IPLIB reads a library file in the FIP Library format.

It then converts the header fields to that of any one of several public
databases including :
	Mead Data Central/NEXIS
	Lockheed Dialog
	FT-Profile - two versions
	ReuterFile/FDS
	DataTimes
	QL systems
	RNIB format
	a pc diskette format
	BASIS - two versions
	Generic SGML format
	Generic HTML format
	or, for the cases where the data is correct, no change

Files coming into the input queue have a client/group code in a Fip Hdr field -
normally DA. This is checked against the tables/sys/GROUPS file. Only client
types LIB and SYN are actually handled here and MAIL, UNIXMAIL etc are sent as
individual files to the postman, IPPOST.

If the client is NOT in the GROUPS file, it may be handled here using the
parameter file 'libclient:' parameter.

IPLIB uses a parameter file, normally tables/setup/LIBRARY, which allows :

	; comment lines start with a semi-colon
	newDA:	Fip Hdr field containing the client or group code)
			default is the DA field.
			eg 	newDA:FP
	map:	 Map the begining of a filename for a particular client key
		(see also as a subkeyword in 'libclient')
	libclient: (client name)	options.
		Prescribe the processing option for that particular client.
		All options must be on one and only one line.
		format: (type)		processing type for this client
			valid formats are :
				fds	ReuterFile-FDS
				k-dkt	PC format
				profile	FT-Profile
				xprofile FT-Profile - no stars at end format
				mead	mead or Nexis
				ql	QL systems
				lockheed Lockheed Dialog
				datatimes DataTimes
				rnib	RNIB format
				sgml	SGML format
				html	HTML format
				basis	BASIS format
				v2basis	2nd BASIS format
				curly	DT format
				nochange No Change - data is already correct
		syntrigger:		start the transmission via IPSYN
					immediately.
		xchg: (xchg name)	name of an Xchg in tables/xchg which
					will be run on the output file.
		script: (script name)	name of a script/program to be run
					against the output file (after xchg if there)
		dest: (new destination)	Valid destination for the output file
		queue: (queuename)	subqueue for the output file.
					This is under the output queue, spool/syn,
					or its replacement with the '-o' input switch.
					(either dest or queue should be specified)
		pcname:			Make the filename a PC style (8 dot 3)
		inc-seqno:		For Fds format, add a unique number to [FF]
		end-of-para:		End of Paragraph string in FipSeq if not the original
					eg end-of-para:s>bsss
		map:	(filename)=(client key) [ opt , (nextname)=(next key) ... ]
			Map the begining of a filename for a particular client key
			This is used for ReuterLine nad Profile as a Publication code ([SO])
				eg:	 map:dm=DMR,ind=IND,ios=INS,pp=PP,sl=SL,sm=SM
			Up to 500 maps can be specified. (version 05c was 300)
			Keys can be put in double quotes if spaces or punctuation is required.
				eg: 	map:dm="The Mirror",sm="Sunday Mirror"
		line-length: no of chrs on a line.
			default is normally 0 or 75 for BASIS

There must be a 'libclient' line for each LIB and SYN client specified in the
DA field. The defaults are :
	format: pc format
	no syntrigger
	no xchg
	no script
	queue will be the name of the client (lowercase) in spool/syn on this system
	no mapping so for profile and FDS, the Publication code is the client name


Input switches are : all optional :
	-i : queue to scan			default: spool/2lib
	-o : output queue 			default: spool/syn
	-d : done queue for raw input		default: input files are zapped
	-t : scan time of directory		default: 5 secs
	-l : log each msg in			default: do NOT log
	-z : parameter file			default: tables/setup/LIBRARY
	-v : display version number and exit.

Example :
;
;	LIBRARY setup file for iplib
;
map:daily	PUB
libclient:nexis		type:mead	xchg:LIBNEXIS	queue:nexis
libclient:radiosuisse	type:pc		queue:radio

Version Control
;005e	28may99	added basis1, basis2 and curly/dt formats
	;a 15sep99 SEPTEMBER spelt wrongly
	;b  4jan00 y2k bug with year
	;c 26apr00 bug - duff data caused a header field > 1000 chrs
	;d 01sep05 upped maps to 500
	;e 07feb09 added -d done-que

(copyright) 2014 and previous years FingerPost Ltd.