TIVI-153: Add as dependency for iputils
[profile/ivi/opensp.git] / doc / new.htm
1 <!doctype html public "-//W3C//DTD HTML 4.0 Transitional//EN">
2 <html>
3 <head>
4    <title>What's new in SP?</title>
5 </head>
6 <body>
7
8 <h1>
9 What's new?</h1>
10 This document describes user-visible changes in SP up to 1.3. Bug fixes are
11 not described.
12 <h2>
13 Version 1.3</h2>
14 Better <a href="xml.htm">support for XML</a> based on the Web SGML Adaptations
15 Annex to ISO 8879.
16 <p>New <a href="sx.htm">SX</a> application that converts SGML to XML.
17 <p>The architecture engine has been updated to match HyTime 2nd Edition
18 (This means that you must use
19 <tt>&lt;?IS10744 ArcBase <i>arch</i>></tt>
20 rather than
21 <tt>&lt;?ArcBase <i>arch</i>></tt>.)
22 <h2>
23 Version 1.2</h2>
24 The Extended Naming Rules TC is supported. The extensions supported in
25 external concrete syntaxes have been changed for compatibility with this.
26 <p>The handling of character sets in the multi-byte version is more sophisticated.
27 The <a href="charset.htm">character sets</a> HTML page gives more information.
28 <p>SP has built-in knowledge of many <a href="sgmldecl.htm#charset">more
29 base character sets</a>.
30 <p>nsgmls will report empty elements if the <tt>-oempty</tt> option is
31 used.
32 <p>DTD-less parsing is possible, by using the <tt>-wno-valid</tt> option
33 to allow undefined elements and attributes. This allows parsing of well-formed
34 XML documents, whether or not valid.
35 <h2>
36 Version 1.1</h2>
37 There is now generalized support for <a href="archform.htm">architectural
38 form processing</a>.
39 <p>Documentation is now in HTML format.
40 <p>A BASE catalog entry can be used to specify a base system identifier
41 for resolving relative storage object identifiers occurring in the catalog.
42 <p>A LITERAL storage manager is now provided.
43 <p>Programs have a -E option that sets the maximum number of errors.
44 <p>A DELEGATE catalog entry allows distributed resolution of public identifiers.
45 <p>nsgmls has a -B (batch mode) option that allows you to parse multiple
46 documents with a single invocation of nsgmls.
47 <p>In nsgmls the -c option now specifies a catalog as it does in spam and
48 sgmlnorm, in addition to the -m option that previously did this.
49 <p>The <tt>-n</tt> option has been replaced by a
50 <tt>-onotation-sysid</tt>
51 which applies to nsgmls only, and a
52 <tt>-wnotation-sysid</tt> which applies
53 generally.
54 <p>SP can be built as a DLL under Win32.
55 <h2>
56 Version 1.0</h2>
57 The syntax of system identifiers has completely changed. The new syntax
58 is based on the syntax of formal system identifiers defined in ISO/IEC
59 10744 (HyTime) Technical Corrigendum 1, Annex D.
60 <p>The NSGMLS_CODE environment variable has been renamed to SP_BCTF. nsgmls
61 has a -b option to specify the bit combination transformation format to
62 be used for output.
63 <p>A list of directories in which files specified in system identifiers
64 should be searched for can be specified using the environment variable
65 SGML_SEARCH_PATH or the option -D.
66 <p>Individual SYSTEM identifiers in external identifiers can be overridden
67 using SYSTEM entries in the catalog.
68 <p>The OVERRIDE catalog entry now takes a YES/NO argument. (This change
69 was required for conformance to the SGML Open TR.) It applies to each entry
70 individually rather than to the entire catalog.
71 <p>The -w options of nsgmls and spam have been enhanced. In spam, the -w
72 option takes an argument as with nsgmls. There are new warnings for minimized
73 start and end tags (-wunclosed, -wempty, -wnet and -wmin-tag); for unused
74 short reference maps (-wunused-maps); for unused parameter entities (-wunused-param).
75 -wall now doesn't include those warnings that are about conditions that,
76 in the opinion of the author, there is no reason to avoid. A warning can
77 be turned off by using its name prefixed by no-; thus -wmin-tag -wno-net
78 is equivalent to -wunclosed -wempty. The -w option is also used to turn
79 off errors: -wno-idref replaces the -x option; -wno-significant replaces
80 the -X option.
81 <p>In the output of nsgmls, characters that cannot be represented in the
82 encoding translation specified by the NSGMLS_BCTF environment variable
83 are represented using an escape sequence of the form \#N; when N is a decimal
84 integer.
85 <p>In the multi-byte versions of nsgmls there are new BCTFs is8859-N for
86 N = 1,...,9.
87 <p>There is a -o option to nsgmls which makes it output additional information:
88 -oentity outputs information about all entities; -oid distinguish attributes
89 with a declared value of id; -oincluded distinguishes included subelements.
90 <p>nsgmls now automatically searches for a catalog entry file called "catalog"
91 in the same place as the document entity. Note that when the document entity
92 is specified with a URL, this matches the behaviour of Panorama.
93 <p>A catalog entry file can contain CATALOG entries specifying additional
94 catalog entry files. This matches the behaviour of Panorama.
95 <p>The parser can now make available to an application complete information
96 about the markup of prologs and SGML declarations. It would now be possible,
97 for example, to use SP to write a DTD editor. spam exploits this to a limited
98 extent: if the -p option is specified twice, then parameter entity references
99 between declarations will be expanded; the -mreserved option puts all reserved
100 names in upper-case; with the -mshortref option short reference use declarations
101 and short reference mapping declarations will be removed; attribute specification
102 lists in data attribute specifications in entity declarations can be normalized
103 like attribute specification lists in start-tags; with -mms it resolves
104 IGNORE/INCLUDE marked sections.
105 <p>nsgmls has a -C option which causes the command line filenames to be
106 treated as a catalog whose DOCUMENT entry specifies the document entity.
107 <p>nsgmls has a -n option which causes it to generate system identifiers
108 for notations in the same way as it does for entities.
109 <p>spam now has a -f option like nsgmls.
110 <p>The interface between the parser and entity manager has been redesigned
111 so that the entity manager can be used independently of the parser. This
112 is exploited by a new program called spent that prints an entity with a
113 specified system identifier on the standard output.
114 <p>In most cases, a Control-Z occurring as the last byte in a file will
115 be stripped. This is controlled by the zapeof attribute in formal system
116 identifiers.
117 <h2>
118 Version 0.4</h2>
119 External concrete syntaxes, character sets and capacity sets are supported
120 using PUBLIC entries in catalog files. The multicode code core and reference
121 syntaxes are no longer built-in. Only a few character sets are now built-in.
122 <p>Within external concrete syntaxes, various useful extensions are permitted.
123 In particular, an ellipsis syntax is allowed for the specification of name
124 characters and single character short references. It is now practical to
125 specify tens of thousands of additional name characters.
126 <p>The default SGML declaration is more permissive.
127 <p>nsgmls has a -x option that inhibits checking of idrefs.
128 <p>nsgmls has a -w option that can enable additional warnings. In particular,
129 -wmixed will warn about mixed content models that do not allow #pcdata
130 everywhere.
131 <p>The meaning of the f command in the output of nsgmls has changed slightly.
132 It now gives the effective system identifier of the entity.
133 <p>The functionality of the rast program has been merged into the nsgmls
134 program and the rast program has been removed. The -t option makes nsgmls
135 generate a RAST result.
136 <p>spam has a -l option that uses lower-case for added names that were
137 subject to upper-case substitution.
138 <p>spam has a -mcurrent option that adds omitted attribute specifications
139 for current attributes.
140 </body>
141 </html>