/* National Institute of Standards and Technology (NIST)
/* National Computer System Laboratory (NCSL)
/* Office Systems Engineering (OSE) Group
/* ********************************************************************
/*                            D I S C L A I M E R
/*                              (March 8, 1989)
/*  
/* There is no warranty for the NIST NCSL OSE SGML parser and/or the NIST
/* NCSL OSE SGML parser validation suite.  If the SGML parser and/or
/* validation suite is modified by someone else and passed on, NIST wants
/* the parser's recipients to know that what they have is not what NIST
/* distributed, so that any problems introduced by others will not
/* reflect on our reputation.
/* 
/* Policies
/* 
/* 1. Anyone may copy and distribute verbatim copies of the SGML source
/* code as received in any medium.
/* 
/* 2. Anyone may modify your copy or copies of SGML parser source code or
/* any portion of it, and copy and distribute such modifications provided
/* that all modifications are clearly associated with the entity that
/* performs the modifications.
/* 
/* NO WARRANTY
/* ===========
/* 
/* NIST PROVIDES ABSOLUTELY NO WARRANTY.  THE SGML PARSER AND VALIDATION
/* SUITE ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER
/* EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
/* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
/* THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS
/* WITH YOU.  SHOULD THE SGML PARSER OR VALIDATION SUITE PROVE DEFECTIVE,
/* YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
/* 
/* IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW WILL NIST BE LIABLE FOR
/* DAMAGES, INCLUDING ANY LOST PROFITS, LOST MONIES, OR OTHER SPECIAL,
/* INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR
/* INABILITY TO USE (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA
/* BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY THIRD PARTIES OR A
/* FAILURE OF THE PROGRAM TO OPERATE WITH PROGRAMS NOT DISTRIBUTED BY
/* NIST) THE PROGRAM, EVEN IF YOU HAVE BEEN ADVISED OF THE POSSIBILITY OF
/* SUCH DAMAGES, OR FOR ANY CLAIM BY ANY OTHER PARTY.
*/

/************************************************************************/
/*   TITLE:          SGML Parser                                        */
/*   SYSTEM:         Document Processor                                 */
/*   SUBSYSTEM:                                                         */
/*   SOURCE FILE:    DIGLOBAL.C                                         */
/*   AUTHOR:         Steve Lindeman, Fred Maples                        */
/*                                                                      */
/*   DATE CREATED:   8-1-1986                                           */
/*   LAST MODIFIED:                                                     */
/*                                                                      */
/*                  REVISIONS                                           */
/*   WHEN      WHO            WHY                                       */
/************************************************************************/
#include <stdio.h>
#include "didefs.h"
#ifndef BUFFSIZE
#define BUFFSIZE 400
#endif

STENTRY *stack[TAGLVL],*holdtp, symtable[BUFFSIZE];
int holdtoken,sp,bufptr,rootid,numsym;
unsigned num_open_ms;
READ_STATE state;
int (*print_ctr)(),(*put_ctr)(),(*our_fprintf)(),(*our_fputc)();
void (*applic)();
int entitylevel,fpindx;
ID_IDREF_DESC *idhead,*idrefhead;
char outbuf[TAGLEN+201];
EXCEPTDESC *currexcl,*currincl;
INPUT_STACK *stptr;
BOOLEAN open_cdata_ms,open_rcdata_ms,dontcare;
FILE *indoc;  /* file ptr of input & output document */
FILE *fpstack[ENTLVL],*ctrfp;
STENTRY *entstack[ENTLVL];
char *ctrfile;
OUT_QUEUE *head;
char lastread_tag[NAMELEN+3],error_msg[ERRMSGLEN];
