Re: Fwd: Re: A Plea for Schemas

Date view Thread view Subject view Author view

From: Ka-Ping Yee (ping@lfw.org)
Date: Wed Feb 23 2000 - 02:43:12 PST


--------------------------------------------------------------
This message is being re-sent because there have been recent
problems with my outgoing mail. It seems likely that most of
my outgoing mail for the past couple of weeks has been lost,
so i'm trying to send it all again. I apologize sincerely if
you are receiving this message for the second time, and also
if this is a time-sensitive message that is arriving late.
This message was originally sent on:
        Date: Thu, 17 Feb 2000 02:12:37 -0800 (PST)
        Subject: Re: Fwd: Re: A Plea for Schemas
--------------------------------------------------------------

On Mon, 1 Nov 1999, Mark Baker wrote:
>
> Wow. The most entertaining xml-dev post of all time, IMHO.

Well, this response has been languishing in draft form for a
while now. Let's send it out then, shall we?

> Tell 'em, "ahh, XML Works. We just don't agree on how."
>
> len bullard

The appropriate response to "We'll just use XML!" is
"Okay. So?" It's the same kind of response i would
give to "We'll use the English alphabet!":

"Sure. So what will you do with it?"

I shall do the following just to make a point (not
because i'm trying to make fun of Bert Bos):

----------------------------------------[begin]

    1. XML is a format you can use to
    put structured data in a text file. [...]

                    1. ASCII is a format you can use to
                    put structured data in a text file.

    2. XML looks a bit like HTML but isn't HTML

    Like HTML, XML makes use of tags (words bracketed by '<' and '>') and
    attributes (of the form name="value"), but while HTML specifies what
    each tag & attribute means (and often how the text between them will
    look in a browser), XML uses the tags only to delimit pieces of data,
    and leaves the interpretation of the data completely to the
    application that reads it. In other words, if you see "<p>" in an XML
    file, don't assume it is a paragraph. Depending on the context, it
    may be a price, a parameter, a person, a p... (b.t.w., who says it
    has to be a word with a "p"?)

                    2. ASCII looks a bit like English but isn't English

                    Like English, ASCII makes use of letters, but while
                    in English most sequences of letters (called "words")
                    are assigned conventional meanings, ASCII uses the
                    letters only to represent pieces of data, and leaves
                    the interpretation of the data completely up to the
                    application that reads it. In other words, if you
                    see the word "const" in a C program, don't assume it
                    has anything to do with something being constant.

    3. XML can be stored in text files that can be read by humans

    XML files are text files, as I said above, but even less than HTML
    are they meant to be read by humans. They are text files, because
    that allows experts (such as programmers) to more easily debug
    applications, and in emergencies, they can use a simple text editor
    to fix a broken XML file. [...]

                    3. ASCII can be stored in text files that can be
                    read by humans

                    ASCII files are text files because that allows
                    experts (such as programmers) to more easily debug
                    applications, and in emergencies, they can use a
                    simple text editor to fix a broken ASCII file.

    4. XML is a family of technologies

    There is XML 1.0, the specification that defines what tags and
    attributes are, but around XML 1.0, there is a growing set of
    optional modules that provide sets of tags & attributes, or
    guidelines for specific tasks. [...]

                    4. ASCII is a family of technologies

                    There is ASCII, the specification that defines
                    what characters are, but around ASCII there is
                    a growing set of optional modules that provide
                    sets of words and characters, or guidelines for
                    specific tasks. There is, e.g., MIME, a format
                    for specifying different content types and
                    embedding multiple parts in a single message;
                    C++, an object-oriented programming language
                    entirely built out of ASCII characters, and so on.

    5. XML is verbose, but that is not a problem

    Since XML is a text format, and it uses tags to delimit the data, XML
    files are nearly always larger than comparable binary formats. That
    was a conscious decision by the XML developers. The advantages of a
    text format are evident (see 3 above), and the disadvantages can
    easily be solved at a different level. [...]

                    ASCII is verbose, but that is not a problem

                    Since ASCII is a text format, ASCII files are
                    nearly always larger than comparable binary
                    formats. That was a conscious decision by the
                    ASCII developers. The advantages of a text format
                    are evident (see 3 above), and the disadvantages
                    can easily be solved at a different level. Disk
                    space isn't as expensive as it used to be, and
                    you can always gzip your text files.

    6. XML is new, but not that new

                    6. ASCII is new, but not that new

    7, 8, 9...

    These I don't know yet. (-- Bert Bos)

    10. XML is license-free, platform-independent and well-supported

    By choosing XML as the basis for some project, you buy into a large
    and growing community of tools (one of which may already do what you
    need!) and engineers experienced in the technology. [...]

                    ASCII is license-free, platform-independent and
                    well-supported

                    By choosing ASCII as the basis for some project, you
                    buy into a large and growing community of tools (one
                    of which may already do what you need!) and engineers
                    experienced in the technology. Plenty of tools, like
                    vi, emacs, and Notepad, already exist and work well
                    with ASCII.

And so on, and so on. You get the idea.

----------------------------------------[end]

XML is versatile, yes. That is great. But it *solves*
nothing. The problem of getting people to agree on
standards for communication data formats will always be
there, and XML does not make that problem go away, no
matter what illusions some people seem to have. It's
no different than sending around some LISP s-expressions.
We have had this and other data structures for decades.

Yes, it's nice to be able to send trees around. We have
lots of ways of sending trees and lists and various kinds
of structures around. Let's add another one to our
repertoire. But let's not let this get out of hand, please.

Choosing to use XML means (a) you get to sling a fancy
buzzword around and (b) you get to make work coding yet
another XML parser and generator immediately, so you can
do some satisfying programming to keep your hands busy
while you figure out what you're going to do with it.

When people say "XML technology" it makes me want to laugh.
How would you react if someone said they were going to
"build an electronic communications solution using
powerful ASCII technology"? XML is not a technology,
people. It's a data format, for crying out loud. Yes,
something like XSL could be a technology. But not XML.

When people say "we're going to use XML" they're actually
communicating hardly any bits. Just as if someone said
"we're going to use ASCII", you look at them like they
haven't said anything, and wait for the details.

-- ?!ng


Date view Thread view Subject view Author view

This archive was generated by hypermail 2b29 : Wed Feb 23 2000 - 02:45:50 PST