>> Sean: we've been wandering down the the by-roads of HTML, XML, SGML all
sorts of MLs and various non-MLs And last time, I think, we spoke some
people had wandered off to the pub and sorted everything out over a point so
what happened about that then -- what happened next?
>> DFB: well after about 18 months the draft XML specification was published and
everybody agreed: "Great job! Didn't we learn a lot from the decisions in HTML
that caused so much difficulty and, of course, the major thing --
not by any means the only one -- but a big major thing, was that you must not omit your end-tags in XML. They
will be there. That being said, of course, a lot of browsers still have to be
tolerant about it. Some people, y'know, maybe -- I dunno -- Dreamweaver, or something,
might produce a very, very good XML-compliant Web page but a lot of people
still hand-code. A lot of people, particularly with paragraphs, go straight and
don't see the need to close off the paragraphs. You've got to be a bit tolerant but nevertheless
the idea was you do not omit your end-tags and there were about seven or eight
other, rather more technical, things had to be cleaned up from SGML but it made a
lot of difference to people implementing that they were cleaned up. One
of the first ones I'm aware of -- because I tend to forget it -- is that in SGML,
because it was the days of punch cards, upper case and lower case were treated as
the same. So if you called it in capitals it was the same
as in lower case. Or even you could have capital 'P' little 'a' capital 'R' little 'a' again and that
was the same as ! That had to be cleaned up. So what this made possible
was for the browser implementers they loved it, because it meant that if all the end
tags were there you could do a brackets matching operation, essentially, a bit like in a
compiler where you match open curly brace [{] with close curly brace [}]. You could tick everything off and you could
say "That is a tree, I may not understand what all the tags mean but, boy, they match
all right". Now that's very useful to know about so what it also meant was that
there was a clean target for front-end software to aim at. The idea is that your
Dreamweaver(s), or whatever,
probably still aren't totally compliant, I don't know, but they could say "We will try and produce really
good, nice, XML". Yeah, XML-notated Web page stuff [XHTML]. So what this really means
is that a diagram that we had in the previous video can now be extended. You
will recall that I described SGML as being the enabling technology, the
foundations of the building in a way, and we built these applications on top of
them. I did a memo. I referred to the DoD's CALS I referred to the Text Encoding
Initiative and I referred to HTML and saying, y'know, sad it had the ML at the
end [of the acronym] -- it caused so much misunderstanding. But anyway let's just extend this a bit
more now, over to the right, and let's just say that what the XML committee did was to
enable, as it were, inside this SGML universe, as a proper subset, like that, and
that one is labelled
XML and I've tried to draw it wholly within the SGML boundary to emphasize
that, yes, it really is a genuine subset. The theologians will say "Ah! yes but it's a subset of the extended
SGML that included several options that Charles [Goldfarb] specified way back and you had to have those in order for
it to work". But nevertheless, yes, it is in spirit a proper subset and that meant
you could generate on top of that new tagsets, or cleaned up versions of existing ones. So, one of the first things they did,
of course, was to clean up HTML and its spec. into XML format. Now remember
XML is a subset of SGML because they're the same things -- they're meta-syntaxes -- built now on
top of XML notation is XHTML cleaned up HTML, all tags matching, defined, wonderful.
And of course several other people -- tens of thousands of other people now -- have
been able to build their own tagsets on top of XML technology. Just to take one
that's very familiar to me and to some of my academic colleagues, for mathematics mark up.
Again one wishes thay hadn't put the 'ML' on the end but they did: MathML
Ah! here's a good one
Adobe know what they're doing. You don't put 'ML' on the end of things unless it's a meta-language, perhaps. They took their
PDF technology and they made it so that it could be expressed in XML tagset form. And that
of course is called Scalable Vector Graphics, SVG, and I'll put the dots here
to show that there are now literally, I would guess, thousands, if not tens of
thousands. Remember all of these the way you refer to them is you say "SVG is
an *application* of XML" >> Sean: Can we just be absolutely clear then, just to throw this in one more time:
What was the big problem with putting a 'L' on the end of these?"
>> DFB: Because unfortunately the two enabling technologies end with 'ML'. And the in-crowd
sort of says: "We know it says 'markup language' it's actually 'markup mete-language'" But of course if you
start using it for something that is a fixed tagset -- not a tagset
technology -- the punctuation rules so to speak -- then people start saying things like: "Oh! they're just
y' know "HTML is a subset of SGML". No! it's not a subset of SGML it's an application, you see. And people start to make
those mistakes, between 'applications and 'subsets' motivated by the fact that they
all end in "ML" so thay all must mean the same sort of thing -- and they don't! So, peace
broke out. I think we should say that alongside all of this, in the
mid 1990s and equally important. It wasn't just getting XML
sorted out and thereby being able to do HTML as XHTML, properly. It was also
the fact, I think, in that era, Tim Berners-Lee moved from CERN. He moved to MIT
and all credit to him. Exactly the right thing. I think MIT made him an offer to
host basically a sort of academic-like institution concerned entirely with setting
standards for the Web
and being vendor-neutral in everything it did. And as I say, all credit to Tim. He
could have made millions out of the Web -- there's no question. But he opted to say: "No I would
sooner make a smaller amount of money and be respected and to have mine be the
standard way of doing things. So in a way the vendors can meet on vendor-neutral
territory - still have shouting matches, still have bust-ups - but its all under
the aegis of the W3C, the World Wide Web Consortium, which is in charge
of all this. I've never actually been to one of their meetings but I've talked to one or two people
who've been there and I said: "How do you cope with the fact that people still get
subsets and applications confused? Is XHTML a cut-down version of XML ? No! no! no! no! "
And one said: " I'm weary, I'm going bald, I've got a grey beard, All we try
and ensure is it everything we say on our Web site is absolutely accurate and
correct. But to try and get everybody in the whole world to understand and to get it right?
Life's too short ! "