Closed Bug 155136 Opened 22 years ago Closed 21 years ago

Evangelism - Evangelism Letter/Technote - Server Mime Types

Categories

(Tech Evangelism Graveyard :: English US, enhancement)

enhancement
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: mdcrawford, Assigned: bc)

References

Details

Many of the services that offer free website hosting insert markup into their
users' pages for advertising purposes.  Often this markup can render an
otherwise W3C-compliant document invalid.  

I found this to be the case when I taught my niece Denika how to write HTML last
night.  I taught her from the start to write valid XHTML, but we were
disappointed to find that the markup added by the free website hosting service
we selected caused her page to no longer validate.

I wrote the Free Hosting Service HTML Validation Test Page for anyone to copy
and post at any of the free website hosting services.  The original document is
an XHTML 1.0 strict file that validates according to the W3C HTML Validation
Service:

http://linuxquality.sunsite.dk/articles/validationtest/

  It includes a link to the W3C validation service that will validate the
referring page (try clicking it here - you'll validate the bug report!):

http://validator.w3.org/check/referer

It also includes a link that will validate the original document from the server
at the Linux Quality Database (http://linuxquality.sunsite.dk/) so the user can
compare.

Further, the page provides an explanation of why we should all write valid
markup, how to get started at creating valid documents, as well as instructions
any reader can follow for installing the Test Page at a new hosting service.

You can find an example of my page in action here:

http://free.hostdepartment.com/goingware/

You will see that the page doesn't validate (at least not as of tonight), even
though the document that I uploaded is original to the document at the Linux
Quality Database - the difference that breaks validation is a small amount of
advertising markup added by the hosting service.

You can find an extensive list of free webhosting services at:

http://www.freewebspace.net/

My hope is for at least one copy of my Test Page to get installed at every free
hosting service, and to educate both users and hosting service operators about
the desirability of valid markup, with the result that more people produce it
and the free website hosting operators permit it to come through despite adding
advertisement markup.
I am thinking this should be a tracking bug for any invalid appendages made by
services.  Since this is not my component, I will not make it such though. 
Severity is probably normal or even major due to the scope of the bug.  I don't
however notice many pages as becoming overly messed up in Mozilla though in most
circumstances.  If anything, it is usually the ads themselves that don't work
such as the Geocities ads that just say undefined.
Status: UNCONFIRMED → NEW
Ever confirmed: true
At least for Netscape My Webpage, it is possible to trick the server into not
putting the banner in.

Just remove the extension from the page, i.e. change page.html to page, and make
sure that there is a META HTTP-EQUIV=Content-type CONTENT="text/html" in the page.

An example of with and without the extension is the page I helped my younger
sister create (i.e. first webpage)
With: http://mywebpage.netscape.com/hannibalrox/hannah.html
Without: http://mywebpage.netscape.com/hannibalrox/hannah

Surprisingly, IE looks at the Content-Type header and displays the page.
Many services (GeoCities, for one) let you name your pages *.xml and they won't
add anything. But still, that's a hack and not helping the point of this bug,
which is to make the pages validate even with the stuff added.
I would like to make the reminder that the purpose of this bug is not to remove
the advertising, but to make it valid so that it does not invalidate an
otherwise valid page.
ok. let use this to track hosting services that need education.

Tool  HTML Validation Test Page 
<http://linuxquality.sunsite.dk/articles/validationtest/>
Keywords: meta
Summary: Free Hosting Service HTML Validation Test Page → Evangelism - Tracking - Contact Free Hosting Services, Educate about Valid HTML
Why does the page use XHTML DOCTYPE/syntax? Since I assume it's not uncommon for
hosting services to include empty tags in their included code, and since the
syntax for them is not compatible between HTML (4 and previous) and XML
(including XHTML), I'd think it would make more sense to use HTML 4.01...
#6 asks why I used XHTML.

Well, the first reason was that when I taught my neiece to write web pages, I
taught her XHTML from the start.  I figured that's the current standard and
would probably serve her best into the future.

Secondly, if a hosting service were adding tags to users' markup, I'm pretty
sure they could always add XHTML to HTML 4.01 pages and they would still
validate as HTML 4.01.  But not the other way around.

Likely some services would score better if I used a more relaxed page, but I
felt it was best to hold them to the highest standard available.

But if you think it would be productive, I could make a 4.01 test page in
addition to the one I have.
Michael: XHTML is the "current" standard, but in practice it isn't really 
deployable. IE breaks down when you use the correct MIME-type, and 
most free hosting services won't let you fiddle with the MIME-type anyway, 
so you have to serve XHTML as text/html, which is basically not a good 
idea. Ian Hickson has explained this better than I could at 
<URL:http://www.hixie.ch/advocacy/xhtml>. Since empty elements use 
incompatible syntax in XHTML and HTML 4.01, I think we should 
encourage free hosting providers to serve their ads in a manner 
compatible with HTML 4.01, because it's better to use HTML 4.01 with the 
text/html MIME-type. (And XHTML 1.0/1.1 don't really offer any advantages 
over HTML 4.01 unless you're using some sort of XML 
content-management backend...in which case, you're probably not on a 
free webhost, either.) So I'd say the best thing to do would be to convert 
the page to HTML 4.01, and not worry about XHTML until free web hosts 
start letting you serve XHTML pages as application/xml+xhtml.
Re: Comment #8 From Christopher Hoess  2002-10-18 12:51
> Michael: XHTML is the "current" standard, but in practice it isn't really
> deployable. IE breaks down when you use the correct MIME-type,

True.

> and most free hosting services won't let you fiddle with the MIME-type anyway,

Not true. Save the file as .xhtml or .xml and it will work right on most hosts.
Funnily, most hosts no longer display their ads when using that extension, as
their scripts are configured to add the ads to .html pages only.

> so you have to serve XHTML as text/html, which is basically not a good idea.

True.

> Since empty elements use
> incompatible syntax in XHTML and HTML 4.01, I think we should 
> encourage free hosting providers to serve their ads in a manner 
> compatible with HTML 4.01, because it's better to use HTML 4.01 with the 
> text/html MIME-type.

Agreed.

> (And XHTML 1.0/1.1 don't really offer any advantages 
> over HTML 4.01 unless you're using some sort of XML 
> content-management backend..

Well, assume you're on a proper XHTML / XML mime type, then, a good parser *has*
to fail to render non-wellformed pages. Which is a nice addition. Unfortunately,
IE's parser is broken and considers *many* pages which are actually well-formed
broken.

> So I'd say the best thing to do would be to convert 
> the page to HTML 4.01, and not worry about XHTML until free web hosts 
> start letting you serve XHTML pages as application/xml+xhtml.

That's a lot of effort, and it's ironic that it may make sense here to convert
back to an old format.
#9: I don't understand your comments regarding XHTML and IE. Yes, IE can't 
handle XHTML with the correct MIME-type. (It has nothing to do with whether or 
not they're well-formed; it simply doesn't recognize the MIME-type, so you 
can't make it render in IE without weird XSLT tricks.) XHTML served as 
text/html gets treated *just like* HTML 4.01 in Mozilla and IE (because they 
don't do the right thing for ending empty elements with "/>" in HTML 4.01). 
Since XHTML offers *no discernable advantage* over HTML 4.01 in this situation, 
why not encourage banner ads to be served in a way compatible with HTML 4.01, 
which is, as Hixie explains, a better choice? (For that matter, I don't 
understand why it would be hard to convert the current XHTML test page to HTML 
4.01.)
Re: Comment #10 From Christopher Hoess  2002-10-21 14:42

> Re: Comment #9
> I don't understand your comments regarding XHTML and IE. Yes, IE can't
> handle XHTML with the correct MIME-type.

Yes.

> (It has nothing to do with whether or
> not they're well-formed; it simply doesn't recognize the MIME-type, so you
> can't make it render in IE without weird XSLT tricks.)

Yes.

> XHTML served as
> text/html gets treated *just like* HTML 4.01 in Mozilla and IE (because they
> don't do the right thing for ending empty elements with "/>" in HTML 4.01).

Yes.

> Since XHTML offers *no discernable advantage* over HTML 4.01 in this
> situation,

Most likely, yes.

> why not encourage banner ads to be served in a way compatible with
> HTML 4.01,

Agreed.

> which is, as Hixie explains, a better choice?

Now, where did I disagree to that?

> (For that matter, I don't
> understand why it would be hard to convert the current XHTML test page to
> HTML 4.01.)

It wouldn't. Just change the doctype, remove some slashes, etc. That's it. There
isn't much difference between XHTML 1.0 and HTML 4.01. The real difference has
yet to come, with XHTML 2.

It's just hard to convert a whole *site* written in XHTML back to HTML 4.01. And
it's also quite ironic. *That* was my point.
Ok, this is really about a content type/server configuration letter and perhaps
short technote. We already use variations on MIMETYPE in the status whiteboard I
believe although it is not in documented in
http://www.mozilla.org/projects/tech-evangelism/site/procedures/bug-fields.html
yet. 

There are currently 22 bugs with mime in their status whiteboard.

I will go ahead and add the MIME-XXXX as a status whiteboard status field. 

Blocks: 86690, 175026
Status: NEW → ASSIGNED
Keywords: meta
Summary: Evangelism - Tracking - Contact Free Hosting Services, Educate about Valid HTML → Evangelism - Evangelism Letter/Technote - Server Mime Types
No longer blocks: 86690
Blocks: 86690
mozilla@mathiesen.info, this is about a technote not a general form letter to be
sent out and it's translation if any is not related to bug 86690.
No longer blocks: 86690
I don't know what I was thinking in comment 12. see also bug 183340

related items on devedge:

http://devedge.netscape.com/viewsource/2003/mime-types/
http://devedge.netscape.com/viewsource/2002/incorrect-mime-types/
http://devedge.netscape.com/viewsource/2003/xhtml-style-script/

I marking this fixed. If you think something more specific other than bug 183340
should be done, please open a new bug and detail what you think needs to be done.
Status: ASSIGNED → RESOLVED
Closed: 21 years ago
Resolution: --- → FIXED
Moving to new component
Component: Authors → English US
Product: Tech Evangelism → Tech Evangelism Graveyard
You need to log in before you can comment on or make changes to this bug.