Comments on MIME/SGML
"Daniel W. Connolly" <connolly@hal.com> Sat, 19 February 1994 00:50 UTC
Received: from ietf.nri.reston.va.us by IETF.CNRI.Reston.VA.US id aa16883; 18 Feb 94 19:50 EST
Received: from CNRI.RESTON.VA.US by IETF.CNRI.Reston.VA.US id aa16879; 18 Feb 94 19:50 EST
Received: from dimacs.rutgers.edu by CNRI.Reston.VA.US id aa24454; 18 Feb 94 19:50 EST
Received: by dimacs.rutgers.edu (5.59/SMI4.0/RU1.5/3.08) id AA22665; Fri, 18 Feb 94 19:16:56 EST
Received: from HAL.COM by dimacs.rutgers.edu (5.59/SMI4.0/RU1.5/3.08) id AA22661; Fri, 18 Feb 94 19:16:48 EST
Received: from ulua.hal.com by hal.com (4.1/SMI-4.1.1) id AA10988; Fri, 18 Feb 94 16:10:18 PST
Received: from localhost by ulua.hal.com (4.1/SMI-4.1.2) id AA10063; Fri, 18 Feb 94 18:10:20 CST
Message-Id: <9402190010.AA10063@ulua.hal.com>
To: Multiple Recipients of List <ietf-822@dimacs.rutgers.edu>
Cc: Dan Connolly -- HTML draft spec author <connolly@hal.com>, Tim Berners-Lee -- WWW Project Lead <timbl@www0.cern.ch>, Terry Allen GNN representative <terry@ora.com>, Dave Raggett -- HTML+ draft spec author <dsr@hplb.hpl.hp.com>, Dave Hollander -- SDL designer <dmh@hpfcma.fc.hp.com>, Elliot Kimber -- HyTime advocate <kimber@passage.com>, Peter Flynn -- HTML educator <pflynn@curia.ucc.ie>, Rob McCool -- NCSA representative <robm@ncsa.uiuc.edu>, Erik Naggum -- SGML advocate <erik@naggum.no>, WWW Talk List -- Archive Mechanism <www-talk@www0.cern.ch>
Subject: Comments on MIME/SGML
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="----- =_aaaaaaaaaa0"
Content-Id: <10024.761615492.1@ulua>
Date: Fri, 18 Feb 1994 18:10:19 -0600
Sender: ietf-archive-request@IETF.CNRI.Reston.VA.US
From: "Daniel W. Connolly" <connolly@hal.com>
Comments on MIME/SGML
PROPOSED CHANGES FOR MIME REPRESENTATION OF SGML
Daniel W. Connolly <connolly@hal.com>
SGML Entites in MIME
I believe that the goals of Mr. Levinson's MIME Content-types for SGML
Documents[1] are essential to the success of the intenet as an Integrated
Open Hypermedia (c.f. HyTime[2]) system.
However, after a careful reading of the SGML standard[3] (specifically
section 6: Entity Structure), I believe that SGML/MIME[4] fails to specify
the most important machine representation of an SGML document; that is, the
SGML document entity (production 2, section 6.2).
In conventional practice, an SGML document "doc" of type "T" is represented
as a file doc.sgml, which looks like:
<!DOCTYPE T SYSTEM "t.dtd" [
<!ENTITY fig1 SYSTEM "foo.ps" postscript>
]>
<T>blah blah blah <figure graphic=fig1> blah blah blah</T>
along with an SGML declaration in the file T.decl. Technically speaking, the
SGML document entity is the concatenation of T.decl and doc.sgml (with
perhaps some system-specific newline->RS/RE conversions). But according to
the standard it's OK to interchange SGML documents with an implied SGML
delcaration, and in practice, the SGML declaration is often compiled into
the processing software.
So for all intents and purposes, the file doc.html is an SGML document
entity. And it seems critical that the file doc.html should correspond to
the body of some MIME body part.
The draft[5] misuses the term "DTD", aka "Document Type Definition" (defn
4.104). An SGML document indeed has three parts: the SGML declaration, the
prologue, and the instance. And the distinction between the term prologue
and the term DTD is not trivial.
First, to be pedantic, a DTD is not generally representable in SGML syntax.
The concept of the DTD includes not only the SGML-representable formal part,
but also the associated application conventions which cannot be represented
in SGML. Also -- a document may have more than one DTD in its prologue.
Second, to be practical, the conventional machine representation of a DTD is
just an SGML text entity in the file t.dtd which looks like:
<!NOTATION postscript PUBLIC "-/Adobe/Postscript">
<!ELEMENT T - - (#PCDATA) >
...
Note that it does not correspond exactly to the prologue of the document, in
that it does not contain the <!DOCTYPE [ ... ]> markup.
For these reasons, I suggest the following modifications to the proposed
MIME representation of SGML documents:
1. We make the following correspondence between the terms of the SGML
standard and the MIME RFC:
SGML notation => MIME content-type
SGML SYSTEM identifier => MIME Content-ID
SGML data entity (= notation, data)
=> MIME body part (=content type, body)
SGML text entity (= sequence of characters)
=> body of MIME text/sgml body part (= seq of chars)
SGML document => a MIME multipart/SGML body part
2. We use text/sgml in stead of application/sgml for the SGML "files", since
they are in general readable on teletype devices.e
3. We change the parameters of the multipart/SGML content type from
sgml-part := "intance" / "declaration"
/ "dtd" / "fosi" / extension-token
to
sgml-part := "document" / "declaration"
/ "dtd" / "fosi" / extension-token
where "document" is required, declaration is optional, and dtd is acutally
redundant (since it's in the document entity) but useful, since a MIME UA
might want to know what kind of document it is without parsing the document.
References
Network Working Group, Internet Draft: MIME/SGML,
<draft-levinson-sgml-01.txt>, E. Levinson, Accurate Information Systems,
Inc., January 17, 1993
ISO 8879:1986, Information Processing: Text and Office Systems:
Standard Generalized Markup Language (SGML)
ISO/IEC 10744 Information technology -- Hypermedia/Time-based Structuring
Language (HyTime)
Editorial Note
I used HTML because it works to a certain extent, not because I think it's
exactly how I think internet IOH should work. My comments on HTML are still
under development. See my notebook on the design on an HTML successor[6].
Production Note
This document is brought to you by the following tools:
Lucid emacs
html-mode by Marc Andressen
SGMLs
NCSA Mosaic
- Comments on MIME/SGML Daniel W. Connolly
- Re: Comments on MIME/SGML Tim Berners-Lee
- Re: Comments on MIME/SGML Daniel W. Connolly
- Re: Comments on MIME/SGML Ed Levinson
- Re: Comments on MIME/SGML Ed Levinson
- Re: Comments on MIME/SGML Daniel W. Connolly
- Re: Comments on MIME/SGML Ed Levinson
- Re: Comments on MIME/SGML Jim Conklin
- Re: Comments on MIME/SGML Keith Moore
- Re: Comments on MIME/SGML Steve Dorner