Blame man/nsgmls.1

Packit 9741aa
'\" t
Packit 9741aa
.\" Uncomment the next line to get a man page accurate for MS-DOS
Packit 9741aa
.\"nr Os 1
Packit 9741aa
.\" Uncomment the next line if tracing is enabled.
Packit 9741aa
.\"nr Tr 1
Packit 9741aa
.if \n(.g .if !r Os .nr Os 0
Packit 9741aa
.tr \(ts"
Packit 9741aa
.ds S \s-1SGML\s0
Packit 9741aa
.de TS
Packit 9741aa
.br
Packit 9741aa
.sp .5
Packit 9741aa
..
Packit 9741aa
.de TE
Packit 9741aa
.br
Packit 9741aa
.sp .5
Packit 9741aa
..
Packit 9741aa
.de TQ
Packit 9741aa
.br
Packit 9741aa
.ns
Packit 9741aa
.TP \\$1
Packit 9741aa
..
Packit 9741aa
.TH NSGMLS 1
Packit 9741aa
.SH NAME
Packit 9741aa
nsgmls \- a validating SGML parser
Packit 9741aa
.sp
Packit 9741aa
An \*S System Conforming to
Packit 9741aa
.if n .br
Packit 9741aa
International Standard ISO 8879 \(em
Packit 9741aa
.br
Packit 9741aa
Standard Generalized Markup Language
Packit 9741aa
.SH SYNOPSIS
Packit 9741aa
.B nsgmls
Packit 9741aa
[
Packit 9741aa
.B \-BCdeglprsuv
Packit 9741aa
]
Packit 9741aa
[
Packit 9741aa
.BI \-a linktype
Packit 9741aa
]
Packit 9741aa
[
Packit 9741aa
.BI \-b bctf
Packit 9741aa
]
Packit 9741aa
[
Packit 9741aa
.BI \-c sysid
Packit 9741aa
]
Packit 9741aa
[
Packit 9741aa
.BI \-D directory
Packit 9741aa
]
Packit 9741aa
[
Packit 9741aa
.BI \-E max_errors
Packit 9741aa
]
Packit 9741aa
.if \n(Os=1 \{\
Packit 9741aa
[
Packit 9741aa
.BI \-f file
Packit 9741aa
]
Packit 9741aa
.\}
Packit 9741aa
[
Packit 9741aa
.BI \-i name
Packit 9741aa
]
Packit 9741aa
.if \n(Tr \{\
Packit 9741aa
[
Packit 9741aa
.BI \-o output_option
Packit 9741aa
]
Packit 9741aa
[
Packit 9741aa
.BI \-t file
Packit 9741aa
]
Packit 9741aa
[
Packit 9741aa
.BI \-w warning_type
Packit 9741aa
]
Packit 9741aa
.\}
Packit 9741aa
[
Packit 9741aa
.I sysid\|.\|.\|.
Packit 9741aa
]
Packit 9741aa
.SH DESCRIPTION
Packit 9741aa
.I Nsgmls
Packit 9741aa
parses and validates
Packit 9741aa
the \*S document whose document entity is specified by
Packit 9741aa
.I filename\|.\|.\|.
Packit 9741aa
and prints on the standard output a simple \s-1ASCII\s0 representation of its
Packit 9741aa
Element Structure Information Set.
Packit 9741aa
(This is the information set which a structure-controlled
Packit 9741aa
conforming \*S application should act upon.)
Packit 9741aa
If more than one system identifier is specified, then the corresponding
Packit 9741aa
entities will be concatenated to form the document entity. Thus the   
Packit 9741aa
document entity may be spread amongst several files; for example, the
Packit 9741aa
SGML declaration, prolog and document instance set could each be in a 
Packit 9741aa
separate file.
Packit 9741aa
If no system identifiers are specified, then
Packit 9741aa
.I nsgmls
Packit 9741aa
will read the document entity from the standard input.
Packit 9741aa
A command line system identifier of
Packit 9741aa
.B \-
Packit 9741aa
can also be used to refer to the standard input.
Packit 9741aa
(Normally in a system identifier, <osfd>0 is used to refer to standard input.)
Packit 9741aa
.LP
Packit 9741aa
The following options are available:
Packit 9741aa
.TP
Packit 9741aa
.BI \-a linktype
Packit 9741aa
Make link type linktype active. Not all ESIS information is
Packit 9741aa
output in this case: the active LPDs are not explicitly
Packit 9741aa
reported, although each link attribute is qualified with its   
Packit 9741aa
link type name; there is no information about result elements;
Packit 9741aa
when there are multiple link rules applicable to the current   
Packit 9741aa
element, nsgmls always chooses the first.
Packit 9741aa
Packit 9741aa
.TP
Packit 9741aa
.BI \-b bctf
Packit 9741aa
Use the BCTF named bctf for output.
Packit 9741aa
Packit 9741aa
.TP
Packit 9741aa
.BI \-B
Packit 9741aa
Batch mode. Parse each sysid... specified on the command line
Packit 9741aa
separately, rather than concatenating them. This is useful
Packit 9741aa
mainly with -s.
Packit 9741aa
Packit 9741aa
If -tfilename is also specified, then the specified filename
Packit 9741aa
will be prefixed to the sysid to make the filename for the RAST
Packit 9741aa
result for each sysid.
Packit 9741aa
Packit 9741aa
.TP
Packit 9741aa
.BI \-c sysid
Packit 9741aa
Map public identifiers and entity names to system identifiers
Packit 9741aa
using the catalog entry file whose system identifier is sysid.
Packit 9741aa
Multiple -c options are allowed. If there is a catalog entry 
Packit 9741aa
file called catalog in the same place as the document entity, 
Packit 9741aa
it will be searched for immediately after those specified by 
Packit 9741aa
-c.
Packit 9741aa
Packit 9741aa
.TP
Packit 9741aa
.B \-C
Packit 9741aa
The filename... arguments specify catalog files rather than the
Packit 9741aa
document entity. The document entity is specified by the first
Packit 9741aa
DOCUMENT entry in the catalog files.
Packit 9741aa
Packit 9741aa
.TP
Packit 9741aa
.B \-D directory
Packit 9741aa
Search directory for files specified in system identifiers.
Packit 9741aa
Multiple -D options are allowed. See the description of the
Packit 9741aa
osfile storage manager for more information about file
Packit 9741aa
searching.
Packit 9741aa
Packit 9741aa
.TP
Packit 9741aa
.B \-e
Packit 9741aa
Describe open entities in error messages.
Packit 9741aa
Error messages always include the position of the most recently
Packit 9741aa
opened external entity.
Packit 9741aa
Packit 9741aa
.TP
Packit 9741aa
.B \-Emax_errors
Packit 9741aa
Nsgmls will exit after max_errors errors. If max_errors is 0,
Packit 9741aa
there is no limit on the number of errors. The default is 200.
Packit 9741aa
Packit 9741aa
.TP
Packit 9741aa
.BI \-f file
Packit 9741aa
Redirect errors to
Packit 9741aa
.IR file .
Packit 9741aa
This is useful mainly with shells that do not support redirection of stderr.
Packit 9741aa
Packit 9741aa
.TP
Packit 9741aa
.B \-g
Packit 9741aa
Show the generic identifiers of open elements in error messages.
Packit 9741aa
Packit 9741aa
.TP
Packit 9741aa
.BI \-i name
Packit 9741aa
Pretend that
Packit 9741aa
.RS
Packit 9741aa
.IP
Packit 9741aa
.BI 
Packit 9741aa
.LP
Packit 9741aa
occurs at the start of the document type declaration subset
Packit 9741aa
in the \*S document entity.
Packit 9741aa
Since repeated definitions of an entity are ignored,
Packit 9741aa
this definition will take precedence over any other definitions
Packit 9741aa
of this entity in the document type declaration.
Packit 9741aa
Multiple
Packit 9741aa
.B \-i
Packit 9741aa
options are allowed.
Packit 9741aa
If the \*S declaration replaces the reserved name
Packit 9741aa
.B INCLUDE
Packit 9741aa
then the new reserved name will be the replacement text of the entity.
Packit 9741aa
Typically the document type declaration will contain
Packit 9741aa
.IP
Packit 9741aa
.BI 
Packit 9741aa
.LP
Packit 9741aa
and will use
Packit 9741aa
.BI % name ;
Packit 9741aa
in the status keyword specification of a marked section declaration.
Packit 9741aa
In this case the effect of the option will be to cause the marked
Packit 9741aa
section not to be ignored.
Packit 9741aa
.RE
Packit 9741aa
.TP
Packit 9741aa
.B \-o output_option
Packit 9741aa
Output additional information according to output_option:
Packit 9741aa
.RS
Packit 9741aa
.RE
Packit 9741aa
.B L
Packit 9741aa
commands giving the current line number and filename.
Packit 9741aa
.TP
Packit 9741aa
.B \-p
Packit 9741aa
Parse only the prolog.
Packit 9741aa
.I Sgmls
Packit 9741aa
will exit after parsing the document type declaration.
Packit 9741aa
Implies
Packit 9741aa
.BR \-s .
Packit 9741aa
.TP
Packit 9741aa
.B \-r
Packit 9741aa
Warn about defaulted references.
Packit 9741aa
.TP
Packit 9741aa
.B \-s
Packit 9741aa
Suppress output.
Packit 9741aa
Error messages will still be printed.
Packit 9741aa
.TP
Packit 9741aa
.B \-u
Packit 9741aa
Warn about undefined elements: elements used in the DTD but not defined.
Packit 9741aa
Also warn about undefined short reference maps.
Packit 9741aa
.TP
Packit 9741aa
.B \-v
Packit 9741aa
Print the version number.
Packit 9741aa
.if \n(Tr \{\
Packit 9741aa
.TP
Packit 9741aa
.BI \-x flags
Packit 9741aa
.br
Packit 9741aa
.ns
Packit 9741aa
.TP
Packit 9741aa
.BI \-y flags
Packit 9741aa
Enable debugging output;
Packit 9741aa
.B \-x
Packit 9741aa
applies to the document body,
Packit 9741aa
.B \-y
Packit 9741aa
to the prolog.
Packit 9741aa
Each character in the
Packit 9741aa
.I flags
Packit 9741aa
argument enables tracing of a particular activity.
Packit 9741aa
.RS
Packit 9741aa
.TP
Packit 9741aa
.B t
Packit 9741aa
Trace state transitions.
Packit 9741aa
.TP
Packit 9741aa
.B a
Packit 9741aa
Trace attribute activity.
Packit 9741aa
.TP
Packit 9741aa
.B c
Packit 9741aa
Trace context checking.
Packit 9741aa
.TP
Packit 9741aa
.B d
Packit 9741aa
Trace declaration parsing.
Packit 9741aa
.TP
Packit 9741aa
.B e
Packit 9741aa
Trace entities.
Packit 9741aa
.TP
Packit 9741aa
.B g
Packit 9741aa
Trace groups.
Packit 9741aa
.TP
Packit 9741aa
.B i
Packit 9741aa
Trace \s-1ID\s0s.
Packit 9741aa
.TP
Packit 9741aa
.B m
Packit 9741aa
Trace marked sections.
Packit 9741aa
.TP
Packit 9741aa
.B n
Packit 9741aa
Trace notations.
Packit 9741aa
.RE
Packit 9741aa
.\}
Packit 9741aa
.SS "Entity Manager"
Packit 9741aa
An external entity resides in one or more files.
Packit 9741aa
The entity manager component of
Packit 9741aa
.I sgmls
Packit 9741aa
maps a sequence of files into an entity in three sequential stages:
Packit 9741aa
.IP 1.
Packit 9741aa
each carriage return character is turned into a non-SGML character;
Packit 9741aa
.IP 2.
Packit 9741aa
each newline character is turned into a record end character,
Packit 9741aa
and at the same time
Packit 9741aa
a record start character is inserted at the beginning of each line;
Packit 9741aa
.IP 3.
Packit 9741aa
the files are concatenated.
Packit 9741aa
.LP
Packit 9741aa
A system identifier is
Packit 9741aa
interpreted as a list of filenames separated by
Packit 9741aa
.if \n(Os=0 colons.
Packit 9741aa
.if \n(Os=1 semi-colons.
Packit 9741aa
A filename of
Packit 9741aa
.B \-
Packit 9741aa
can be used to refer to the standard input.
Packit 9741aa
If no system identifier is supplied, then the entity manager will
Packit 9741aa
attempt to generate a filename using the public identifier
Packit 9741aa
(if there is one) and other information available to it.
Packit 9741aa
Notation identifiers are not subject to this treatment.
Packit 9741aa
This process is controlled by the environment variable
Packit 9741aa
.BR \s-1SGML_PATH\s0 ;
Packit 9741aa
this contains a
Packit 9741aa
.if \n(Os=0 colon-separated
Packit 9741aa
.if \n(Os=1 semicolon-separated
Packit 9741aa
list of filename templates.
Packit 9741aa
A filename template is a filename that may contain
Packit 9741aa
substitution fields; a substitution field is a
Packit 9741aa
.B %
Packit 9741aa
character followed by a single letter that indicates the value
Packit 9741aa
of the substitution.
Packit 9741aa
If
Packit 9741aa
.B \s-1SGML_PATH\s0
Packit 9741aa
uses the
Packit 9741aa
.B %S
Packit 9741aa
field (the value of which is the system identifier),
Packit 9741aa
then the entity manager will also use
Packit 9741aa
.B \s-1SGML_PATH\s0
Packit 9741aa
to generate a filename
Packit 9741aa
when a system identifier that does not contain any
Packit 9741aa
.if \n(Os=0 colons
Packit 9741aa
.if \n(Os=1 semi-colons
Packit 9741aa
is supplied.
Packit 9741aa
The value of a substitution can either be a string
Packit 9741aa
or it can be
Packit 9741aa
.IR null .
Packit 9741aa
The entity manager transforms the list of
Packit 9741aa
filename templates into a list of filenames by substituting for each
Packit 9741aa
substitution field and discarding any template
Packit 9741aa
that contained a substitution field whose value was null.
Packit 9741aa
It then uses the first resulting filename that exists and is readable.
Packit 9741aa
Substitution values are transformed before being used for substitution:
Packit 9741aa
firstly, any names that were subject to upper case substitution
Packit 9741aa
are folded to lower case;
Packit 9741aa
secondly,
Packit 9741aa
.if \n(Os=0 \{\
Packit 9741aa
.\" Unix
Packit 9741aa
space characters are mapped to underscores
Packit 9741aa
and slashes are mapped to percents.
Packit 9741aa
.\}
Packit 9741aa
.if \n(Os=1 \{\
Packit 9741aa
.\" MS-DOS
Packit 9741aa
the characters
Packit 9741aa
.B +,./:=?
Packit 9741aa
and space characters are deleted.
Packit 9741aa
.\}
Packit 9741aa
The value of the
Packit 9741aa
.B %S
Packit 9741aa
field is not transformed.
Packit 9741aa
The values of substitution fields are as follows:
Packit 9741aa
.TP
Packit 9741aa
.B %%
Packit 9741aa
A single
Packit 9741aa
.BR % .
Packit 9741aa
.TP
Packit 9741aa
.B %D
Packit 9741aa
The entity's data content notation.
Packit 9741aa
This substitution will succeed only for external data entities.
Packit 9741aa
.TP
Packit 9741aa
.B %N
Packit 9741aa
The entity, notation or document type name.
Packit 9741aa
.TP
Packit 9741aa
.B %P
Packit 9741aa
The public identifier if there was a public identifier,
Packit 9741aa
otherwise null.
Packit 9741aa
.TP
Packit 9741aa
.B %S
Packit 9741aa
The system identifier if there was a system identifier
Packit 9741aa
otherwise null.
Packit 9741aa
.TP
Packit 9741aa
.B %X
Packit 9741aa
(This is provided mainly for compatibility with \s-1ARCSGML\s0.)
Packit 9741aa
A three-letter string chosen as follows:
Packit 9741aa
.LP
Packit 9741aa
.RS
Packit 9741aa
.ne 11
Packit 9741aa
.TS
Packit 9741aa
tab(&);
Packit 9741aa
c|c|c s
Packit 9741aa
c|c|c s
Packit 9741aa
c|c|c|c
Packit 9741aa
c|c|c|c
Packit 9741aa
l|lB|lB|lB.
Packit 9741aa
&&With public identifier
Packit 9741aa
&&_
Packit 9741aa
&No public&Device&Device
Packit 9741aa
&identifier&independent&dependent
Packit 9741aa
_
Packit 9741aa
Data or subdocument entity&nsd&pns&vns
Packit 9741aa
General SGML text entity&gml&pge&vge
Packit 9741aa
Parameter entity&spe&ppe&vpe
Packit 9741aa
Document type definition&dtd&pdt&vdt
Packit 9741aa
Link process definition&lpd&plp&vlp
Packit 9741aa
.TE
Packit 9741aa
.LP
Packit 9741aa
The device dependent version is selected if the public text class
Packit 9741aa
allows a public text display version but no public text display
Packit 9741aa
version was specified.
Packit 9741aa
.RE
Packit 9741aa
.TP
Packit 9741aa
.B %Y
Packit 9741aa
The type of thing for which the filename is being generated:
Packit 9741aa
.TS
Packit 9741aa
tab(&);
Packit 9741aa
l lB.
Packit 9741aa
SGML subdocument entity&sgml
Packit 9741aa
Data entity&data
Packit 9741aa
General text entity&text
Packit 9741aa
Parameter entity&parm
Packit 9741aa
Document type definition&dtd
Packit 9741aa
Link process definition&lpd
Packit 9741aa
.TE
Packit 9741aa
.LP
Packit 9741aa
The value of the following substitution fields will be null
Packit 9741aa
unless a valid formal public identifier was supplied.
Packit 9741aa
.TP
Packit 9741aa
.B %A
Packit 9741aa
Null if the text identifier in the
Packit 9741aa
formal public identifier contains an unavailable text indicator,
Packit 9741aa
otherwise the empty string.
Packit 9741aa
.TP
Packit 9741aa
.B %C
Packit 9741aa
The public text class, mapped to lower case.
Packit 9741aa
.TP
Packit 9741aa
.B %E
Packit 9741aa
The public text designating sequence (escape sequence)
Packit 9741aa
if the public text class is
Packit 9741aa
.BR \s-1CHARSET\s0 ,
Packit 9741aa
otherwise null.
Packit 9741aa
.TP
Packit 9741aa
.B %I
Packit 9741aa
The empty string if the owner identifier in the formal public identifier
Packit 9741aa
is an \s-1ISO\s0 owner identifier,
Packit 9741aa
otherwise null.
Packit 9741aa
.TP
Packit 9741aa
.B %L
Packit 9741aa
The public text language, mapped to lower case,
Packit 9741aa
unless the public text class is
Packit 9741aa
.BR \s-1CHARSET\s0 ,
Packit 9741aa
in which case null.
Packit 9741aa
.TP
Packit 9741aa
.B %O
Packit 9741aa
The owner identifier (with the
Packit 9741aa
.B +//
Packit 9741aa
or
Packit 9741aa
.B \-//
Packit 9741aa
prefix stripped.)
Packit 9741aa
.TP
Packit 9741aa
.B %R
Packit 9741aa
The empty string if the owner identifier in the formal public identifier
Packit 9741aa
is a registered owner identifier,
Packit 9741aa
otherwise null.
Packit 9741aa
.TP
Packit 9741aa
.B %T
Packit 9741aa
The public text description.
Packit 9741aa
.TP
Packit 9741aa
.B %U
Packit 9741aa
The empty string if the owner identifier in the formal public identifier
Packit 9741aa
is an unregistered owner identifier,
Packit 9741aa
otherwise null.
Packit 9741aa
.TP
Packit 9741aa
.B %V
Packit 9741aa
The public text display version.
Packit 9741aa
This substitution will be null if the public text class
Packit 9741aa
does not allow a display version or if no version was specified.
Packit 9741aa
If an empty version was specified, a value of
Packit 9741aa
.B default
Packit 9741aa
will be used.
Packit 9741aa
.br
Packit 9741aa
.ne 18
Packit 9741aa
.SS "System declaration"
Packit 9741aa
The system declaration for
Packit 9741aa
.I sgmls
Packit 9741aa
is as follows:
Packit 9741aa
.LP
Packit 9741aa
.TS
Packit 9741aa
tab(&);
Packit 9741aa
c1 s1 s1 s1 s1 s1 s1 s1 s
Packit 9741aa
c s s s s s s s s
Packit 9741aa
l l s s s s s s s
Packit 9741aa
l l s s s s s s s
Packit 9741aa
l l s s s s s s s
Packit 9741aa
l l l s s s s s s
Packit 9741aa
c s s s s s s s s
Packit 9741aa
l l l l l l l l l
Packit 9741aa
l l l l l l l l l
Packit 9741aa
l l l l l l l l l
Packit 9741aa
l l s s s s s s s
Packit 9741aa
l l l s s s s s s
Packit 9741aa
l l l s s s s s s
Packit 9741aa
c s s s s s s s s
Packit 9741aa
l l l l l l l l l.
Packit 9741aa
SYSTEM "ISO 8879:1986"
Packit 9741aa
CHARSET
Packit 9741aa
BASESET&"ISO 646-1983//CHARSET
Packit 9741aa
&\h'\w'"'u'International Reference Version (IRV)//ESC 2/5 4/0"
Packit 9741aa
DESCSET&0\0128\00
Packit 9741aa
CAPACITY&PUBLIC&"ISO 8879:1986//CAPACITY Reference//EN"
Packit 9741aa
FEATURES
Packit 9741aa
MINIMIZE&DATATAG&NO&OMITTAG&YES&RANK&NO&SHORTTAG&YES
Packit 9741aa
LINK&SIMPLE&NO&IMPLICIT&NO&EXPLICIT&NO
Packit 9741aa
OTHER&CONCUR&NO&SUBDOC&YES 1&FORMAL&YES
Packit 9741aa
SCOPE&DOCUMENT
Packit 9741aa
SYNTAX&PUBLIC&"ISO 8879:1986//SYNTAX Reference//EN"
Packit 9741aa
SYNTAX&PUBLIC&"ISO 8879:1986//SYNTAX Core//EN"
Packit 9741aa
VALIDATE
Packit 9741aa
&GENERAL&YES&MODEL&YES&EXCLUDE&YES&CAPACITY&YES
Packit 9741aa
&NONSGML&YES&SGML&YES&FORMAL&YES
Packit 9741aa
.T&
Packit 9741aa
c s s s s s s s s
Packit 9741aa
l l l l l l l l l.
Packit 9741aa
SDIF
Packit 9741aa
&PACK&NO&UNPACK&NO
Packit 9741aa
.TE
Packit 9741aa
.LP
Packit 9741aa
The memory usage of
Packit 9741aa
.I sgmls
Packit 9741aa
is not a function of the capacity points used by a document;
Packit 9741aa
however,
Packit 9741aa
.I sgmls
Packit 9741aa
can handle capacities significantly greater than the reference capacity set.
Packit 9741aa
.LP
Packit 9741aa
In some environments,
Packit 9741aa
higher values may be supported for the \s-1SUBDOC\s0 parameter.
Packit 9741aa
.LP
Packit 9741aa
Documents that do not use optional features are also supported.
Packit 9741aa
For example, if
Packit 9741aa
.B FORMAL\ NO
Packit 9741aa
is specified in the \*S declaration,
Packit 9741aa
public identifiers will not be required to be valid formal public identifiers.
Packit 9741aa
.LP
Packit 9741aa
Certain parts of the concrete syntax may be changed:
Packit 9741aa
.RS
Packit 9741aa
.LP
Packit 9741aa
The shunned character numbers can be changed.
Packit 9741aa
.LP
Packit 9741aa
Eight bit characters can be assigned to
Packit 9741aa
\s-1LCNMSTRT\s0, \s-1UCNMSTRT\s0, \s-1LCNMCHAR\s0 and \s-1UCNMCHAR\s0.
Packit 9741aa
Declaring this requires that the syntax reference character set be declared
Packit 9741aa
like this:
Packit 9741aa
.RS
Packit 9741aa
.ne 3
Packit 9741aa
.TS
Packit 9741aa
tab(&);
Packit 9741aa
l l.
Packit 9741aa
BASESET&"ISO Registration Number 100//CHARSET
Packit 9741aa
&\h'\w'"'u'ECMA-94 Right Part of Latin Alphabet Nr. 1//ESC 2/13 4/1"
Packit 9741aa
DESCSET&0\0256\00
Packit 9741aa
.TE
Packit 9741aa
.RE
Packit 9741aa
.LP
Packit 9741aa
Uppercase substitution can be performed or not performed
Packit 9741aa
both for entity names and for other names.
Packit 9741aa
.LP
Packit 9741aa
Either short reference delimiters assigned by the reference delimiter set
Packit 9741aa
or no short reference delimiters are supported.
Packit 9741aa
.LP
Packit 9741aa
The reserved names can be changed.
Packit 9741aa
.LP
Packit 9741aa
The quantity set can be increased within certain limits
Packit 9741aa
subject to there being sufficient memory available.
Packit 9741aa
The upper limit on \s-1\%NAMELEN\s0 is 239.
Packit 9741aa
The upper limits on
Packit 9741aa
\s-1\%ATTCNT\s0, \s-1\%ATTSPLEN\s0, \s-1\%BSEQLEN\s0, \s-1\%ENTLVL\s0,
Packit 9741aa
\s-1\%LITLEN\s0, \s-1\%PILEN\s0, \s-1\%TAGLEN\s0, and \s-1\%TAGLVL\s0
Packit 9741aa
are more than thirty times greater than the reference limits.
Packit 9741aa
The upper limit on
Packit 9741aa
\s-1\%GRPCNT\s0, \s-1\%GRPGTCNT\s0, and \s-1\%GRPLVL\s0 is 253.
Packit 9741aa
\s-1\%NORMSEP\s0
Packit 9741aa
cannot be changed.
Packit 9741aa
\s-1\%DTAGLEN\s0
Packit 9741aa
are
Packit 9741aa
\s-1\%DTEMPLEN\s0
Packit 9741aa
irrelevant since
Packit 9741aa
.I sgmls
Packit 9741aa
does not support the
Packit 9741aa
\s-1\%DATATAG\s0
Packit 9741aa
feature.
Packit 9741aa
.RE
Packit 9741aa
.SS "\*S declaration"
Packit 9741aa
The \*S declaration may be omitted,
Packit 9741aa
the following declaration will be implied:
Packit 9741aa
.TS
Packit 9741aa
tab(&);
Packit 9741aa
c1 s1 s1 s1 s1 s1 s1 s1 s
Packit 9741aa
c s s s s s s s s
Packit 9741aa
l l s s s s s s s.
Packit 9741aa
Packit 9741aa
CHARSET
Packit 9741aa
BASESET&"ISO 646-1983//CHARSET
Packit 9741aa
&\h'\w'"'u'International Reference Version (IRV)//ESC 2/5 4/0"
Packit 9741aa
DESCSET&\0\00\0\09\0UNUSED
Packit 9741aa
&\0\09\0\02\0\09
Packit 9741aa
&\011\0\02\0UNUSED
Packit 9741aa
&\013\0\01\013
Packit 9741aa
&\014\018\0UNUSED
Packit 9741aa
&\032\095\032
Packit 9741aa
&127\0\01\0UNUSED
Packit 9741aa
.T&
Packit 9741aa
l l l s s s s s s
Packit 9741aa
l l s s s s s s s
Packit 9741aa
l l l s s s s s s
Packit 9741aa
c s s s s s s s s
Packit 9741aa
l l l l l l l l l.
Packit 9741aa
CAPACITY&PUBLIC&"ISO 8879:1986//CAPACITY Reference//EN"
Packit 9741aa
SCOPE&DOCUMENT
Packit 9741aa
SYNTAX&PUBLIC&"ISO 8879:1986//SYNTAX Reference//EN"
Packit 9741aa
FEATURES
Packit 9741aa
MINIMIZE&DATATAG&NO&OMITTAG&YES&RANK&NO&SHORTTAG&YES
Packit 9741aa
LINK&SIMPLE&NO&IMPLICIT&NO&EXPLICIT&NO
Packit 9741aa
OTHER&CONCUR&NO&SUBDOC&YES 99999999&FORMAL&YES
Packit 9741aa
.T&
Packit 9741aa
c s s s s s s s s.
Packit 9741aa
APPINFO NONE>
Packit 9741aa
.TE
Packit 9741aa
with the exception that characters 128 through 254 will be assigned to
Packit 9741aa
\s-1DATACHAR\s0.
Packit 9741aa
When exporting documents that use characters in this range,
Packit 9741aa
an accurate description of the upper half of the document character set
Packit 9741aa
should be added to this declaration.
Packit 9741aa
For ISO Latin-1, an appropriate description would be:
Packit 9741aa
.br
Packit 9741aa
.ne 5
Packit 9741aa
.TS
Packit 9741aa
tab(&);
Packit 9741aa
l l.
Packit 9741aa
BASESET&"ISO Registration Number 100//CHARSET
Packit 9741aa
&\h'\w'"'u'ECMA-94 Right Part of Latin Alphabet Nr. 1//ESC 2/13 4/1"
Packit 9741aa
DESCSET&128\032\0UNUSED
Packit 9741aa
&160\095\032
Packit 9741aa
&255\0\01\0UNUSED
Packit 9741aa
.TE
Packit 9741aa
.SS "Output format"
Packit 9741aa
The output is a series of lines.
Packit 9741aa
Lines can be arbitrarily long.
Packit 9741aa
Each line consists of an initial command character
Packit 9741aa
and one or more arguments.
Packit 9741aa
Arguments are separated by a single space,
Packit 9741aa
but when a command takes a fixed number of arguments
Packit 9741aa
the last argument can contain spaces.
Packit 9741aa
There is no space between the command character and the first argument.
Packit 9741aa
Arguments can contain the following escape sequences.
Packit 9741aa
.TP
Packit 9741aa
.B \e\e
Packit 9741aa
A
Packit 9741aa
.BR \e.
Packit 9741aa
.TP
Packit 9741aa
.B \en
Packit 9741aa
A record end character.
Packit 9741aa
.TP
Packit 9741aa
.B \e|
Packit 9741aa
Internal \s-1SDATA\s0 entities are bracketed by these.
Packit 9741aa
.TP
Packit 9741aa
.BI \e nnn
Packit 9741aa
The character whose code is
Packit 9741aa
.I nnn
Packit 9741aa
octal.
Packit 9741aa
.LP
Packit 9741aa
A record start character will be represented by
Packit 9741aa
.BR \e012 .
Packit 9741aa
Most applications will need to ignore
Packit 9741aa
.B \e012
Packit 9741aa
and translate
Packit 9741aa
.B \en
Packit 9741aa
into newline.
Packit 9741aa
.LP
Packit 9741aa
The possible command characters and arguments are as follows:
Packit 9741aa
.TP
Packit 9741aa
.BI ( gi
Packit 9741aa
The start of an element whose generic identifier is
Packit 9741aa
.IR gi .
Packit 9741aa
Any attributes for this element
Packit 9741aa
will have been specified with
Packit 9741aa
.B A
Packit 9741aa
commands.
Packit 9741aa
.TP
Packit 9741aa
.BI ) gi
Packit 9741aa
The end an element whose generic identifier is
Packit 9741aa
.IR gi .
Packit 9741aa
.TP
Packit 9741aa
.BI \- data
Packit 9741aa
Data.
Packit 9741aa
.TP
Packit 9741aa
.BI & name
Packit 9741aa
A reference to an external data entity
Packit 9741aa
.IR name ;
Packit 9741aa
.I name
Packit 9741aa
will have been defined using an
Packit 9741aa
.B E
Packit 9741aa
command.
Packit 9741aa
.TP
Packit 9741aa
.BI ? pi
Packit 9741aa
A processing instruction with data
Packit 9741aa
.IR pi .
Packit 9741aa
.TP
Packit 9741aa
.BI A name\ val
Packit 9741aa
The next element to start has an attribute
Packit 9741aa
.I name
Packit 9741aa
with value
Packit 9741aa
.I val
Packit 9741aa
which takes one of the following forms:
Packit 9741aa
.RS
Packit 9741aa
.TP
Packit 9741aa
.B IMPLIED
Packit 9741aa
The value of the attribute is implied.
Packit 9741aa
.TP
Packit 9741aa
.BI CDATA\  data
Packit 9741aa
The attribute is character data.
Packit 9741aa
This is used for attributes whose declared value is
Packit 9741aa
.BR \s-1CDATA\s0 .
Packit 9741aa
.TP
Packit 9741aa
.BI NOTATION\  nname
Packit 9741aa
The attribute is a notation name;
Packit 9741aa
.I nname
Packit 9741aa
will have been defined using a
Packit 9741aa
.B N
Packit 9741aa
command.
Packit 9741aa
This is used for attributes whose declared value is
Packit 9741aa
.BR \s-1NOTATION\s0 .
Packit 9741aa
.TP
Packit 9741aa
.BI ENTITY\  name\|.\|.\|.
Packit 9741aa
The attribute is a list of general entity names.
Packit 9741aa
Each entity name will have been defined using an
Packit 9741aa
.BR I ,
Packit 9741aa
.B E
Packit 9741aa
or
Packit 9741aa
.B S
Packit 9741aa
command.
Packit 9741aa
This is used for attributes whose declared value is
Packit 9741aa
.B \s-1ENTITY\s0
Packit 9741aa
or
Packit 9741aa
.BR \s-1ENTITIES\s0 .
Packit 9741aa
.TP
Packit 9741aa
.BI TOKEN\  token\|.\|.\|.
Packit 9741aa
The attribute is a list of tokens.
Packit 9741aa
This is used for attributes whose declared value is anything else.
Packit 9741aa
.RE
Packit 9741aa
.TP
Packit 9741aa
.BI D ename\ name\ val
Packit 9741aa
This is the same as the
Packit 9741aa
.B A
Packit 9741aa
command, except that it specifies a data attribute for an
Packit 9741aa
external entity named
Packit 9741aa
.IR ename .
Packit 9741aa
Any
Packit 9741aa
.B D
Packit 9741aa
commands will come after the
Packit 9741aa
.B E
Packit 9741aa
command that defines the entity to which they apply, but
Packit 9741aa
before any
Packit 9741aa
.B &
Packit 9741aa
or
Packit 9741aa
.B A
Packit 9741aa
commands that reference the entity.
Packit 9741aa
.TP
Packit 9741aa
.BI N nname
Packit 9741aa
.IR nname.
Packit 9741aa
Define a notation
Packit 9741aa
This command will be preceded by a
Packit 9741aa
.B p
Packit 9741aa
command if the notation was declared with a public identifier,
Packit 9741aa
and by a
Packit 9741aa
.B s
Packit 9741aa
command if the notation was declared with a system identifier.
Packit 9741aa
A notation will only be defined if it is to be referenced
Packit 9741aa
in an
Packit 9741aa
.B E
Packit 9741aa
command or in an
Packit 9741aa
.B A
Packit 9741aa
command for an attribute with a declared value of
Packit 9741aa
.BR \s-1NOTATION\s0 .
Packit 9741aa
.TP
Packit 9741aa
.BI E ename\ typ\ nname
Packit 9741aa
Define an external data entity named
Packit 9741aa
.I ename
Packit 9741aa
with type
Packit 9741aa
.I typ
Packit 9741aa
.RB ( \s-1CDATA\s0 ,
Packit 9741aa
.B \s-1NDATA\s0
Packit 9741aa
or
Packit 9741aa
.BR \s-1SDATA\s0 )
Packit 9741aa
and notation
Packit 9741aa
.IR not.
Packit 9741aa
This command will be preceded by one or more
Packit 9741aa
.B f
Packit 9741aa
commands giving the filenames generated by the entity manager from the system
Packit 9741aa
and public identifiers,
Packit 9741aa
by a
Packit 9741aa
.B p
Packit 9741aa
command if a public identifier was declared for the entity,
Packit 9741aa
and by a
Packit 9741aa
.B s
Packit 9741aa
command if a system identifier was declared for the entity.
Packit 9741aa
.I not
Packit 9741aa
will have been defined using a
Packit 9741aa
.B N
Packit 9741aa
command.
Packit 9741aa
Data attributes may be specified for the entity using
Packit 9741aa
.B D
Packit 9741aa
commands.
Packit 9741aa
An external data entity will only be defined if it is to be referenced in a
Packit 9741aa
.B &
Packit 9741aa
command or in an
Packit 9741aa
.B A
Packit 9741aa
command for an attribute whose declared value is
Packit 9741aa
.B \s-1ENTITY\s0
Packit 9741aa
or
Packit 9741aa
.BR \s-1ENTITIES\s0 .
Packit 9741aa
.TP
Packit 9741aa
.BI I ename\ typ\ text
Packit 9741aa
Define an internal data entity named
Packit 9741aa
.I ename
Packit 9741aa
with type
Packit 9741aa
.I typ
Packit 9741aa
.RB ( \s-1CDATA\s0
Packit 9741aa
or
Packit 9741aa
.BR \s-1SDATA\s0 )
Packit 9741aa
and entity text
Packit 9741aa
.IR text .
Packit 9741aa
An internal data entity will only be defined if it is referenced in an
Packit 9741aa
.B A
Packit 9741aa
command for an attribute whose declared value is
Packit 9741aa
.B \s-1ENTITY\s0
Packit 9741aa
or
Packit 9741aa
.BR \s-1ENTITIES\s0 .
Packit 9741aa
.TP
Packit 9741aa
.BI S ename
Packit 9741aa
Define a subdocument entity named
Packit 9741aa
.IR ename .
Packit 9741aa
This command will be preceded by one or more
Packit 9741aa
.B f
Packit 9741aa
commands giving the filenames generated by the entity manager from the system
Packit 9741aa
and public identifiers,
Packit 9741aa
by a
Packit 9741aa
.B p
Packit 9741aa
command if a public identifier was declared for the entity,
Packit 9741aa
and by a
Packit 9741aa
.B s
Packit 9741aa
command if a system identifier was declared for the entity.
Packit 9741aa
A subdocument entity will only be defined if it is referenced
Packit 9741aa
in a
Packit 9741aa
.B {
Packit 9741aa
command
Packit 9741aa
or in an
Packit 9741aa
.B A
Packit 9741aa
command for an attribute whose declared value is
Packit 9741aa
.B \s-1ENTITY\s0
Packit 9741aa
or
Packit 9741aa
.BR \s-1ENTITIES\s0 .
Packit 9741aa
.TP
Packit 9741aa
.BI s sysid
Packit 9741aa
This command applies to the next
Packit 9741aa
.BR E ,
Packit 9741aa
.B S
Packit 9741aa
or
Packit 9741aa
.B N
Packit 9741aa
command and specifies the associated system identifier.
Packit 9741aa
.TP
Packit 9741aa
.BI p pubid
Packit 9741aa
This command applies to the next
Packit 9741aa
.BR E ,
Packit 9741aa
.B S
Packit 9741aa
or
Packit 9741aa
.B N
Packit 9741aa
command and specifies the associated public identifier.
Packit 9741aa
.TP
Packit 9741aa
.BI f filename
Packit 9741aa
This command applies to the next
Packit 9741aa
.B E
Packit 9741aa
or
Packit 9741aa
.B S
Packit 9741aa
command and specifies an associated filename.
Packit 9741aa
There will be more than one
Packit 9741aa
.B f
Packit 9741aa
command for a single
Packit 9741aa
.B E
Packit 9741aa
or
Packit 9741aa
.B S
Packit 9741aa
command if the system identifier used a
Packit 9741aa
.if \n(Os=0 colon.
Packit 9741aa
.if \n(Os=1 semi-colon.
Packit 9741aa
.TP
Packit 9741aa
.BI { ename
Packit 9741aa
The start of the \*S subdocument entity
Packit 9741aa
.IR ename ;
Packit 9741aa
.I ename
Packit 9741aa
will have been defined using a
Packit 9741aa
.B S
Packit 9741aa
command.
Packit 9741aa
.TP
Packit 9741aa
.BI } ename
Packit 9741aa
The end of the \*S subdocument entity
Packit 9741aa
.IR ename .
Packit 9741aa
.TP
Packit 9741aa
.BI L lineno\ file
Packit 9741aa
.TQ
Packit 9741aa
.BI L lineno
Packit 9741aa
Set the current line number and filename.
Packit 9741aa
The
Packit 9741aa
.I filename
Packit 9741aa
argument will be omitted if only the line number has changed.
Packit 9741aa
This will be output only if the
Packit 9741aa
.B \-l
Packit 9741aa
option has been given.
Packit 9741aa
.TP
Packit 9741aa
.BI # text
Packit 9741aa
An \s-1APPINFO\s0 parameter of
Packit 9741aa
.I text
Packit 9741aa
was specified in the \*S declaration.
Packit 9741aa
This is not strictly part of the ESIS, but a structure-controlled
Packit 9741aa
application is permitted to act on it.
Packit 9741aa
No
Packit 9741aa
.B #
Packit 9741aa
command will be output if
Packit 9741aa
.B \s-1APPINFO\s0\ \s-1NONE\s0
Packit 9741aa
was specified.
Packit 9741aa
A
Packit 9741aa
.B #
Packit 9741aa
command will occur at most once,
Packit 9741aa
and may be preceded only by a single
Packit 9741aa
.B L
Packit 9741aa
command.
Packit 9741aa
.TP
Packit 9741aa
.B C
Packit 9741aa
This command indicates that the document was a conforming \*S document.
Packit 9741aa
If this command is output, it will be the last command.
Packit 9741aa
An \*S document is not conforming if it references a subdocument entity
Packit 9741aa
that is not conforming.
Packit 9741aa
.SH BUGS
Packit 9741aa
Some non-SGML characters in literals are counted as two characters for the
Packit 9741aa
purposes of quantity and capacity calculations.
Packit 9741aa
.SH "SEE ALSO"
Packit 9741aa
The \*S Handbook, Charles F. Goldfarb
Packit 9741aa
.br
Packit 9741aa
\s-1ISO\s0 8879 (Standard Generalized Markup Language),
Packit 9741aa
International Organization for Standardization
Packit 9741aa
.SH ORIGIN
Packit 9741aa
\s-1ARCSGML\s0 was written by Charles F. Goldfarb.
Packit 9741aa
.LP
Packit 9741aa
.I Sgmls
Packit 9741aa
was derived from \s-1ARCSGML\s0 by James Clark (jjc@jclark.com),
Packit 9741aa
to whom bugs should be reported.