Notations and MIME types
cowan at locke.ccil.org
Thu Dec 3 19:12:14 GMT 1998
W. Eliot Kimber scripsit:
> Unless I've misunderstood something, a MIME type is still an indirection to
> the definition of that MIME type. I.e., "text/xml" is a pointer to the RFC
> that establishes that MIME type.
That's true, but it's not a *flexible* pointer. Neither you nor IETF
is free to change the binding of "text/xml"; if XML changes, a new
MIME type (which includes the parameters as well as the type/subtype
information) must be registered.
MIME parameters, BTW, are essentially a method of registering related
MIME types en masse: e.g. registering "text/plain" with a "charset"
parameter essentially registers "text/plain;charset=us-ascii",
"text/plain;charset=utf-8" and so on for all the charsets in the
> But then a problem is: where do I go to
> figure out what RFC a given MIME type maps to?
IANA keeps that information in the MIME-type registry.
> What if the MIME type is an
> "x-*" MIME type, what do I do then?
Nothing. This is the moral equivalent of a notation with a
"file://" system identifier.
> Note that the external ID for a
> notation could, in theory be a MIME type:
> <!NOTATION xml SYSTEM "urn:mime:text/xml" >
> It's clear that I need to write a paper
> clearly outlining what notations are for and how they are best put to use.
> Perhaps part of the problem is that in the Web world we have tended to
> remove the need for such a generalized mechanism by hard-coding knowledge
> of the semantics of everything? But you can't do that forever, and MIME
> only seems to make the problem worse
Not worse, perhaps not sufficiently better.
> by requiring that all interchangable
> types be registered before they can be used. Notations don't require that
> because the external ID of a notation can be anything (including MIME types
> or their RFC documents).
One advantage of MIME types over notations is that they contain
declarative information. Unless your program is AI-complete, the
only thing you can do with the external ID of a notation is try to
use a local table ("mailcap", the Win32 registry) to find an engine
to process the data, and communications with that engine are crude:
you typically can only request it to render the data in some default
A MIME-aware system can take more intelligent action even if it does
not have a local resource for processing a specific MIME type, due
to the structuring provided by MIME-type syntax. A MIME object of
type "text/plain;charset="8859-8-e" can be rendered as ASCII
plain text, with loss of information, even if the charset
"8859-5-e" is unknown locally. A corresponding notation N1 defined
by the external ID "urn:rfc:rfc1555#8859-5-e" leaves a similarly
equipped notation-aware processor completely clueless.
John Cowan http://www.ccil.org/~cowan cowan at ccil.org
You tollerday donsk? N. You tolkatiff scowegian? Nn.
You spigotty anglease? Nnn. You phonio saxo? Nnnn.
Clear all so! 'Tis a Jute.... (Finnegans Wake 16.5)
xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/
To (un)subscribe, mailto:majordomo at ic.ac.uk the following message;
To subscribe to the digests, mailto:majordomo at ic.ac.uk the following message;
List coordinator, Henry Rzepa (mailto:rzepa at ic.ac.uk)
More information about the Xml-dev