MIMESGML Working Group E. Levinson Internet Draft: MIME/SGML XIson, Inc. 5 February 1996 Encapsulating SGML Documents Using the Multipart/Related Content-Type This draft document is being circulated for comment. Please send your comments to the authors or to the sgml-internet mail list sgml- internet@ebt.com. Archives of the email discussions are available at ftp://ftp.naggum.no:/pub/archives/sgml-internet. Status of this Memo This document is an Internet Draft; Internet Drafts are working documents of the Internet Engineering Task Force (IETF) its Areas, and Working Groups. Note that other groups may also distribute working documents as Internet Drafts. Internet Drafts are draft documents valid for a maximum of six months. They may be updated, replaced, or obsoleted by other documents at any time. It is not appropriate to use Internet Drafts as reference material or to cite them other than as a "working draft" or "work in progress". Please check the abstract listing in each Internet Draft directory for the current status of this or any other Internet Draft. Abstract This document describes an encapsulation of a Standard Generalized Markup Language (SGML) document within a MIME message. The document may be represented in the message by some or all of its components. The MIME message may also include auxiliary information to be used by the recipient in processing the encapsulated SGML. This document proposes a new content sub-type Application/SGML-notation, and a new header, Content-SGML-Entity. This specification uses the proposed Multipart/Related Content-Type [RFC-1872] which provides the mechanism for treating the set of SGML components as a single object. Levinson Expires August 15, 1996 [Page 1] Internet Draft MIME-SGML Table of Contents 1. Introduction ................................... 2 Terminology .................................... 3 2. A Model for a MIME/SGML Encapsulation .......... 4 2.1. The Helper Application ......................... 5 2.2. Data Entities .................................. 6 2.3. Application/SGML-Notation ...................... 6 3. The Content-SGML-Entity Header ................. 6 4. Encapsulating the SGML Entities ................ 9 4.1. The Multipart/Related Media-Type ............... 10 4.2. Examples ....................................... 10 4.2.1. Implied SGML Declaration ....................... 10 4.2.2. An SGML Text Entity ............................ 11 4.2.3. A Notation Declaration ......................... 12 4.2.4. Script-based Notation .......................... 12 4.2.5. Active and Doctype Parameter Usage ............. 12 4.2.6. Auxiliary Information .......................... 13 5. Independent SGML Entities ...................... 14 6. Security ....................................... 14 7. References ..................................... 15 8. Acknowledgments ................................ 16 9. Author's Address ............................... 16 Appendix: An Extended Example .................. 17 Change History ................................. 19 1. Introduction A need exists for the transfer via email of documents constructed using the Standard Generalized Markup Language (SGML) [ISO-8879]. A document transfer consists of a set of the documents components sufficient to enable the receiver to process the document. Such processing might consist of displaying the document or a portion of it, interacting with a local application, or other appropriate action. SGML documents consist of a set of inter-related components, or SGML entities, whose relationship must be preserved independently of the system on which the document exists. The components and their relationships are often represented as files with explicit internal references to the other components (files). The goal for the MIME encapsulation of SGML is to permit sending, via email, the entities needed for a receiving system to display (or process) the SGML document without imposing requirements on the receiver's SGML system beyond [ISO-8879]. Levinson Expires August 15, 1996 [Page 2] Internet Draft MIME-SGML The encapsulation augments the standardized facilities of [ISO-8879] with MIME [RFC-1521] features. To support a wide variety of SGML implementations the encapsulation provides the receiver, via a Content-SGML-Entity header, the the SGML entity and notation declaration information. The SGML Open Consortium has defined a catalog [TR9401] for which extensions [EXCH] have been defined to support the exchange of SGML using MIME. Exchanges between SGML systems that support [TR9401] and [EXCH] will be simplified by using [EXCH]. No assumptions beyond [ISO-8879] are made about the capabilities of the receiver's SGML system. It may be a general purpose SGML engine or a specialized application based on a specific SGML document type definition. As discussed in section 2, a receiver may need to interpose an additional application layer between the MIME User Agent and the SGML system. It is assumed that the sending and receiving parties' SGML environment contains sufficient information (well known SGML entities) to allow only a limited number of entities, typically the marked up text, to be included in the email message. Sections 2 and 3 define the basic elements for labeling the SGML entities. Section 4 describes the encapsulation and provides examples of the documents entities within a single Multipart MIME entity. Section 5 describes the handling of SGML entities not included within an Multipart/Related body part. Terminology The Standard Generalized Markup Language (SGML) is used to encode document structure and a rigorous description of it is left to [ISO-8879]. The terms used in the present document attempt to be consistent with SGML terminology and usage. Both SGML and MIME use the term "entity" to refer to their basic components. Here the use of "entity" generally connotes an SGML entity. For MIME entities, body part is used; in some contexts that proves awkward and "MIME entity" is used instead. The context hopefully makes such usage clear. Two SGML terms, SGML Document and SGML Document Entity, are used in this paper and the difference between them is Levinson Expires August 15, 1996 [Page 3] Internet Draft MIME-SGML significant. An SGML Document [ISO-8879, 4.282] is the entire collection of objects or entities that make up a document. Those objects include markup definitions, text with SGML markup, plain text, image data, etc. An SGML document entity [ibid., 4.283], on the other hand, is the specific object with which an SGML system begins processing the SGML document. 2. A Model for a MIME/SGML Encapsulation An SGML document exists as a collection of one or more entities; entities are system independent analogues to files. Those SGML entities are mapped to storage objects or files and the mapping may be one-to-one, many-to-one, or one-to-many. The SGML document refers to the storage objects via entity declarations. The declarations may define the name and type of storage object or provide a name by which an SGML system can map the declared entity to a storage object. Preservation of the structure of references from one entity to another, known in SGML as the entity structure, are key to the email exchange of SGML documents. In addition to preserving the entity structure, several other issues must be addressed by the application that displays or processes the SGML elements in the MIME message. The MIME encapsulation described here provides the information a "helper" application needs to resolve these issues. The helper application, invoked by the MIME User Agent, performs any pre-processing that may be required. It may display or process the the SGML entities itself or invoke another SGML engine for that purpose. The issues to be addressed are as follows. The entity declarations for the SGML entities included in the message must be resolved to corresponding references on the receiver's system. Similarly, the references to processors for non- parsable SGML data, declared in SGML notation declarations, must be resolved to valid processors on the receiving system. An appropriate helper application must be provided with access to all the encapsulated MIME body parts and header information before any SGML processing can begin. Finally, character encoding of the MIME encapsulated SGML text entities must conveyed to the recipients. The these issues are addressed in the following manner. A new header, Content-SGML-Entity, provides the entity description for the body part containing the entity, making the sender's entity declaration information available to the helper application. The helper application may then provide to the Levinson Expires August 15, 1996 [Page 4] Internet Draft MIME-SGML SGML system whatever information it requires. Notation information, carried in an Application/SGML-Notation body part, along with its Content-SGML-Entity header information associates notation declarations with MIME media types. The Multipart/Related MIME media type labels the SGML entities as a unit allowing the MIME User Agent to invoke the appropriate process. Text/SGML and Application/SGML [RFC-1874] media types provide parameters to label the SGML text entity encodings. A group of SGML entities, encapsulated within the same Multipart/Related MIME entity, form an SGML MIME encapsulation. Auxiliary information, such as style sheets and catalogs, to be used in processing the SGML document, may be included in the MIME message. The information is referenced through the Multipart/Related start-info parameter. Not all the entities that constitute an SGML document need to be included in the document's MIME encapsulation. Communities or individuals may often agree to include only a subset of the SGML entities. For example certain communities use standard SGML document type definitions (DTDs), within those communities the DTD and other similar SGML entities need not be included in the encapsulation. Other communities may only want to encapsulate a minimal entity or set of entities and include auxiliary information to enable the recipient to retrieve any additional entities the recipient requires. The description of such community agreements, auxiliary information, and protocols for requesting additional entities are beyond the scope of this RFC. 2.1 The Helper Application The helper application, invoked by the MIME User Agent for "Multipart/Related; type=Text/SGML" (or Application/SGML), will depend on the manner in which the MIME User Agent presents the header information. There are no existing standards for that interface. The helper application, if it does not display or process the document itself, also depends on the characteristics of the SGML system that does. SGML defines an Entity Manager [ISO-8879, 4.123] that performs the mapping between SGML entities and the local file system. Depending on the capability of the entity manager the helper application may store the entities in pre-determined locations, create mapping file entries for an SGML entity manager, create catalog entries for an entity manager that uses them, or parse the Levinson Expires August 15, 1996 [Page 5] Internet Draft MIME-SGML SGML prolog (DTD) and modify the relevant entity declarations to point to the received entities. The helper application, when invoking the SGML system, can also provide information from the Multipart/Related start-info parameter. 2.2. SGML Data Entities Data entities that contain parsable SGML data shall be included as body parts whose media type is Text/ or Application/SGML [RFC-1874]. Data entities that contain data but are not be parsable as SGML shall be included as MIME body parts whose media types reflect the data content, i.e., Text/Plain, Image/JPEG, etc. 2.3. Application/SGML-Notation MIME type name: Application MIME subtype name: SGML-Notation Required parameters: none Optional parameters: none Encoding considerations: none Security considerations: none Published specification: This document Person and email address to contact for further information: E. Levinson The Application/SGML-Notation media type provides the connec- tion between the document's SGML notation declarations and MIME media types. The MIME entity must contain a Content- SGML-Entity corresponding to the notation's declaration. The body of the SGML-Notation MIME entity contains a Content-Type header that specifies the media type associated with the name parameter of the Content-SGML-Entity statement. Some SGML notation declarations may correspond to a script for an active media type (e.g., java). In those cases a MIME entity with the corresponding media type should be used. That MIME entity shall contain an appropriate Content-SGML-Entity header. 3. The Content-SGML-Entity Header The Content-SGML-Entity (cse) header is required when encapsu- lating an SGML document within a Multipart/Related MIME entity. The header contains information from the SGML entity declaration corresponding to the entity contained in the body of the body part. Levinson Expires August 15, 1996 [Page 6] Internet Draft MIME-SGML Data for an entity catalog, defined in [TR9401], can be gener- ated by the receiving agent using the cse header data and the stored entity's local file name. The Content-SGML-Entity header is defined as follows. entity-header := "Content-SGML-Entity" ":" "decl-type" "=" decl-type *( ";" cse-parm ) decl-type := "doctype" / "linktype" / "general" / "parameter" / "baseset" / "capacity" / "syntax" cse-parm := cse-attr "=" value / cse-attr := "active" / "doctype" / "linktype" / "name" / "notation-name" / "public-id" / "public-id-ver" / "system-id" / extension-token value := token / quoted-string ; c.f. [RFC-1521] extension-token := ( "X-" / "x-" ) token ; no intervening white space The header parameters provide information from, and about, the entity declaration for the SGML entity contained in the MIME body part. The name, notation-name, public-id, and system-id parameter values come directly from the SGML entity declara- tion. The decl-type, doctype, and public-id-ver describe the entity declaration's environment. Finally, the active parame- ter provides parsing context information. active Specifies the name of an active document type or link type. The parameter is used for document entities when the prolog contains more than one document or link type declaration. The parameter can occur multiple times, once for each active document or link type and SGML entity parsing occurs with respect to the active document or link types. This parameter is only applicable to docu- ment entities (decl-type=doctype). decl-type A string specifying the entity declaration type. Decl-type is a token specifying how the entity was declared. Within an SGML document or subdocument Levinson Expires August 15, 1996 [Page 7] Internet Draft MIME-SGML each entity type constitutes a unique name space. The possible values for decl-type are: doctype An entity containing an external DTD subset, declared in a declaration; the name in this case would be the document type name. baseset An entity declared by a public identi- fier in a base character set [production 174, ISO-8879, 13.1.1.1]. capacity An entity declared by a public identi- fier in a capacity set [180, ISO-8879, 13.2]. general An entity declared in a entity declara- tion as a general entity linktype An entity containing an external Link Process Definition subset, declared in a linktype declaration; the name parameter is the link type name. notation The header describes a notation declara- tion and, for Application/SGML-notation, the body of the MIME body part contains a content-type header giving the MIME content type corresponding to the nota- tion name or, for other media types, a script or description of the processing that the notation specifies. parameter An entity declared in an entity declara- tion as parameter entity. syntax An entity declared by a public identi- fier in a public concrete syntax [183, ISO-8879, 13.4]. doctype A string specifying the document type name of the DTD subset in which the entity was declared, if the entity was declared in a DTD subset other than the base DTD subset. This parameter applies only to entities with a decl-type of "general", "nota- tion", or "parameter". Levinson Expires August 15, 1996 [Page 8] Internet Draft MIME-SGML extension-token A parameter not defined in this document and agreed upon by the parties using it, a group of consenting adults. linktype A string specifying the link type name of the Link Process Definition (LPD) subset in which the entity was declared, if the entity was declared in an LPD subset. This parameter is required only for entities with a decl-type of "general" or "parameter". name A string giving the name of the entity and is omitted if the entity has no name. notation-name The notation name of an external entity. Not valid if the decl-type is "notation". The value of this parameter corresponds to the value of a Content-SGML-Entity header name parameter. public-id The public identifier in the entity's declaration. public-id-ver The display version if a public text display ver- sion was not present in the public id. Use this the parameter only if a device dependent display version was used. system-id The system identifier in the entity's declaration. MIME headers, including the cse header only contain US-ASCII characters [US-ASCII]. SGML entity declarations, on the other hand, will contain characters from the SGML document's charac- ter set. Characters in that set that are not US-ASCII should be represented as an SGML numeric character reference in the reference concrete syntax (e.g., "&#nnn;", where "nnn" is the integer code position of the character). 4. Encapsulating the SGML Entities The SGML document's must be processed as a unit, handling the MIME body parts individually is not sufficient. The MIME Mul- tipart/Related provides the framework for handling the SGML composite structure. An SGML document can recursively contain subdocuments each of which has its own entity structure. The name spaces for SGML Levinson Expires August 15, 1996 [Page 9] Internet Draft MIME-SGML entities are wholly contained within a subdocument. Conse- quently the entity names specified on a Content-SGML-Entity header must preserve those name spaces. The header's doctype parameter provides the information needed to identify the cor- rect name space. This avoids the need to have recursive Mul- tipart/Related encapsulations. 4.1. The Multipart/Related Media-Type The Multipart/Related [RFC-1872] media type contains a set of related body parts, in this case entities in an SGML document, and its "start" parameter names the body part within the MIME entity with which processing starts, i.e. the SGML document entity. If there is no start parameter then the first MIME entity in the Multipart/Related must be the SGML document entity. The Multipart/Related "type" parameter shall be the media type of the SGML document entity, Text/ or Application/SGML. The "start-info" parameter can contain a list of one or more con- tent references which provide alternative sets of auxiliary information, e.g. stylesheets, catalogs, etc. The receiving agent shall accept the first such set of information that it can use. Below are sample excerpts of an encapsulated SGML document, an appendix contains an extended example. 4.2. Examples The following examples point out some of the key features of the MIME/SGML encapsulation. The examples cover a combined prolog and instance with an implied SGML declaration, the use of the Content-SGML-Entity, Application/SGML-notation, active parameter, and auxiliary information. 4.2.1. Implied SGML Declaration Consider the following document instance which includes the SGML prolog, but which implies the SGML declaration. Levinson Expires August 15, 1996 [Page 10] Internet Draft MIME-SGML ]> &chap1; &chap2; &chap3; The Multipart/Related MIME entity's start parameter's value is the content-id of the MIME body part containing the document entity. MIME-Version: 1.0 Content-Type: Multipart/Related; boundary=tiger-lily start=""; type="application/SGML" --tiger-lily ... --tiger-lily Content-Type: Application/SGML Content-ID: ]> &chap1; &chap2; &chap3; --tiger-lily ... 4.2.2. An SGML Text Entity The entity "chap3" would be a MIME body part such as --tiger-lily Content-Type: Text/SGML Content-SGML-Entity: decl-type=general; name=chap3; system-id="chapt3.sgml"

This is chapter THREE ... --tiger-lily Here, as in most other situations the cse header describes the entity contained in the body part. Levinson Expires August 15, 1996 [Page 11] Internet Draft MIME-SGML 4.2.3. A Notation Declaration The notation declaration contained in the SGML prolog will be represented as a separate body part. --tiger-lily Content-Type: Application/SGML-notation Content-SGML-Entity; decl-type=notation; name=jxz; system-id="/usr/local/bin/jxz"; Content-type: Image/JPEG --tiger-lily Note: It can be argued that a separate MIME body part associ- ating an SGML notation declaration name with a MIME media type is redundant; the association exists in the body part contain- ing the actual data. The content-type header gives the media type and the Content-SGML-Entity header, the notation name. That, however, does not suffice for entities that are not included in the message. The associations between the nota- tion name and the MIME type may still be needed. 4.2.4. Script-based Notation Consider a notation declaration in which the non-SGML data is processed by a script interpreted by a local process. The script interpreter is identified by the media type Applica- tion/X-active. ... --tiger-lily Content-Type: Application/X-active Content-SGML-Entity: decl-type=notation; name=actscr; system-id="/usr/local/bin/active-scripts [an X-active script] --tiger-lily ... 4.2.5. Active and Doctype Parameter Usage In the example below, two document type declarations are given, one of which is active. Additionally one other entity is included and is labeled as to which document type contained the declaration. Levinson Expires August 15, 1996 [Page 12] Internet Draft MIME-SGML MIME-Version: 1.0 Content-Type: Multipart/Related; start=; type=Text/SGML; boundary="tiger-lily" --tiger-lily Content-Type: Text/sgml Content-ID: Content-SGML-Entity: decl-type=doctype; active=usrgde ] > ] > ... &chap2; ... --tiger-lily ... --tiger-lily Content-Type: Text/sgml Content-SGML-Entity: name=chap2; decl-type=general; doctype=usrgde; This is Chapter 2 of a User Guide ... --tiger-lily-- 4.2.6. Auxiliary Information This example show the inclusion of Auxiliary information. The SGML-Open-Catalog contains a catalog with keywords defined in [TR9401]. In this example the catalog is included inside the Multipart/Related MIME entity. MIME-Version: 1.0 Content-Type: Multipart/Related; start=; type=Text/SGML; boundary="tiger-lily" --tiger-lily Content-Type: Text/SGML Content-ID: Levinson Expires August 15, 1996 [Page 13] Internet Draft MIME-SGML --tiger-lily Content-Type: Application/SGML-Open-Catalog Content-ID: ENTITY chap2 "/home/users/widget/chapt2.sgml" ENTITY chap3 "/home/users/widget/chapt3.sgml" PUBLIC "-//Acme//TEXT chapt1//EN" "ftp://ftp.acme.com/sgml/widget/chapt1.sgml" PUBLIC "-//Acme//DTD Book//EN" "ftp://ftp.acme.com/sgml/dtds/book.dtd" PUBLIC "ISO 8879-1986//ENTITIES Added Math Symbols: Arrow Relations//EN" "ftp://ftp.acme.com/sgml/entities/arrow.sgml" PUBLIC "ISO 8879-1986//ENTITIES Added Math Symbols: Binary Operators//EN" "ftp://ftp.acme.com/sgml/entities/binops.sgml" ... --tiger-lily-- 5. Independent SGML Entities Independent SGML and data entities included in MIME messages constitute independent MIME body parts and are not included within a Multipart/Related MIME entity. The SGML entities shall have the SGML media types appropriate to the data being sent; data entities shall use the media type corresponding to their notation declaration. Content-SGML-Entity headers can be used with body parts that are not included within any Multipart/Related MIME entity. This allows, for example, a receiving agent to add an entry to a catalog or mapping file indicating the location in which the received entity was stored. 6. Security SGML documents, like other compound documents, may contain entities whose media types present security concerns, e.g. Application/PostScript. Further SGML may contain explicit processing instructions for a presentation or composition sys- tem; use of such instructions present concerns similar to those of Application/PostScript. The use of active media types with Notation declarations can provide an opportunity for the sender to execute a script or other code on the recipient's machine. Unpacking software Levinson Expires August 15, 1996 [Page 14] Internet Draft MIME-SGML should alert the user when such situations arise. 7. References [ISO-8824] ISO 8824, Information processing systems -- Open System Interconnection -- Specification of Abstract Syntax Notation One (ASN.1). [ISO-8879] ISO 8879:1986, Information processing -- Text and office systems -- Standard Generalized Markup Lan- guage (SGML). [ISO-10744] ISO/IEC 10744:1992, Information technology -- Hypermedia/Time-based Structuring Language (HyTime) (as modified by First Proposed Technical Corrigendum, ISO/IEC JTC1/SC18 N5027) [RFC-822] Crocker, D., Standard for the Format of ARPA Internet Text Messages, August 1982, University of Delaware, RFC 822, STD 11. [RFC-1521] N. Borenstein, N. Freed, "MIME (Multipurpose Internet Mail Extensions) Part One: Mechanisms for Specifying and Describing the Format of Inter- net Message Bodies", 09/23/1993. [RFC-1522] K. Moore, "MIME (Multipurpose Internet Mail Exten- sions) Part Two: Message Header Extensions for Non-ASCII Text", 09/23/1993. [RFC-1590] J. Postel, "Media Type Registration Procedure", 03/02/1994. [RFC-1642] D. Goldsmith, M. Davis, "UTF-7, A Mail-Safe Trans- formation Format of UNICODE", 07/13/1994 [RFC-1872] E. Levinson, "The MIME Multipart/Related Content- type", Internet Draft, draft-ietf-mimesgml- related-03.txt, working draft. [RFC-1874] E. Levinson, "SGML Media Types", Internet Draft, draft-ietf-mimesgml-types-00.txt, working draft. [TR9401] SGML Open Consortium Technical Resolution 9401:1995, "Entity Management", SGML Open [US-ASCII] Coded Character Set -- 7-Bit American Standard Code for Information Interchange, ANSI X3.4-1986. Levinson Expires August 15, 1996 [Page 15] Internet Draft MIME-SGML 8. Acknowledgements The editor has borrowed freely from the suggestions of others and in particular lifted text from James J. Clark and Charles F. Goldfarb (Information Management Consulting) and benefitted from a number of discussions with them. If any errors occurred in translating their words into this text, rest assure that the misinterpretation was mine. The editor also acknowledges the contributions, suggestions, and explanations provided by the following individuals: Terry Allen (O'Reilly & Associates, Inc.), Harald T. Alvestrand (UniNett), Nathaniel Borenstein (First Virtual Holdings Incor- porated), Daniel W. Connolly (W3O), Steven DeRose (EBT), Roy Fielding (University of California, Irvine), Andy Gelsey (CSC), Paul Grosso (ArborText, Inc.), John Klensin (MCI), Erik Naggum (Naggum Software), Gavin Nicol (EBT), Einar Stefferud (Network Management Associates, Inc), and Don Stinchfield (EBT). No errors or faults in this document can be ascribed to them, they're all mine. 9. Author's Address Ed Levinson XIson@cnj.digex.net XIson, Inc. 47 Clive Street Metuchen, NJ 08840 Levinson Expires August 15, 1996 [Page 16] Internet Draft MIME-SGML APPENDIX. An Extended Example This example presents a variety of SGML entity declarations and the corresponding Content-SGML-Entity headers. MIME-Version: 1.0 Content-Type: Multipart/Related; boundary=tiger-lily start=""; type="application/SGML" --tiger-lily Content-Type: Application/SGML Content-ID: ]> &chap1; &chap2; &chap3; --tiger-lily Content-Type: Text/SGML Content-SGML-Entity: decl-type=general; name=chap1; public-id="-//Acme//TEXT chapt1//EN"

This is chapter ONE ... --tiger-lily Content-Type: Text/SGML; Content-SGML-Entity: decl-type=general; name=chap2

This is chapter TWO ... --tiger-lily Content-Type: Text/SGML Content-SGML-Entity: decl-type=general; name=chap3; system-id="chapt3.sgml"

This is chapter THREE ... --tiger-lily Content-Type: Application/SGML Content-SGML-Entity: decl-type=doctype; name=book; public-id="-//Acme//DTD Book//EN"; system-id="/home/users/sgml/dtds/book.dtd" Levinson Expires August 15, 1996 [Page 17] Internet Draft MIME-SGML <-- Acme Widget Company --> <-- Instruction Book DTD --> &Isolat1; &ISOamsa; ... ... --tiger-lily Content-Type: image/jpeg Content-Transfer-Encoding: BASE64 Content-SGML-Entity: decl-type=general; name=fig1; system-id="fig1.jxz"; notation-name=jxz [Base64 encoded binary image data] --tiger-lily-- Levinson Expires August 15, 1996 [Page 18] Internet Draft MIME-SGML Change History Changes to version 03 (October 20, 1995) Introduction and following sections rewritten and reorgainized to reflect discussion on the sgml-internet list and to identify assumptions and processing requirements. Removed the discussion of SDIF and the figure and discussion of a "receiving agent". Removed Appendix B, "Notes for Implementors", that information now duplicates materiel discussed in the body of the draft. Changes to version 02 (July 12, 1995) Section 1 Provided additional clarification of goals and assumptions. Moved all discussion of SDIF to section 6 and clarified language to indicate that the encapsula- tion can be used to encode an SDIF data stream and that the use of SDIF is not required. Section 2 Added a diagram identifying the various processes in the model. Removed Text/ and Application/SGML registration information and replaced that with a statement referencing the separate type registration. Clar- ified introductory remarks. Section 3 Classified the Content-SGML-Entity parameters as to their purpose. Added clarifications to the active parameter and the decl-type values "doc- type" and "notation". Section 4 Eliminated the discussion of recursion and explained how SUBDOC name spaces are handled. Revised Auxiliary Information example (catalog). References Updated references to Internet Drafts. Changes to version 00 Introductory and explanatory text has been changed and Levinson Expires August 15, 1996 [Page 19] Internet Draft MIME-SGML expanded to eliminate any bias towards "complete" documents. Added explanatory text covering auxiliary information, given by the "start-info" Multipart/Related parameter. Included usage description for the "type" and "start-info" parameters. Also added an example using "start-info". Added "active" parameter to the Content-SGML-Entity header and added an example showing its use. Added additional detail to a number of examples and two more examples. Tightened up text discussion SDIF. Levinson Expires August 15, 1996 [Page 20]